1. 21 2月, 2020 2 次提交
  2. 11 2月, 2020 2 次提交
  3. 06 2月, 2020 2 次提交
  4. 05 2月, 2020 1 次提交
  5. 22 1月, 2020 1 次提交
  6. 14 1月, 2020 5 次提交
  7. 03 1月, 2020 1 次提交
    • D
      Revert "fs: remove ksys_dup()" · 74f1a299
      Dominik Brodowski 提交于
      This reverts commit 8243186f ("fs: remove ksys_dup()") and the
      subsequent fix for it in commit 2d3145f8 ("early init: fix error
      handling when opening /dev/console").
      
      Trying to use filp_open() and f_dupfd() instead of pseudo-syscalls
      caused more trouble than what is worth it: it requires accessing vfs
      internals and it turns out there were other bugs in it too.
      
      In particular, the file reference counting was wrong - because unlike
      the original "open+2*dup" sequence it used "filp_open+3*f_dupfd" and
      thus had an extra leaked file reference.
      
      That in turn then caused odd problems with Androidx86 long after boot
      becaue of how the extra reference to the console kept the session active
      even after all file descriptors had been closed.
      Reported-by: Nyouling 257 <youling257@gmail.com>
      Cc: Arvind Sankar <nivedita@alum.mit.edu>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NDominik Brodowski <linux@dominikbrodowski.net>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      74f1a299
  8. 18 12月, 2019 1 次提交
  9. 17 12月, 2019 1 次提交
  10. 13 12月, 2019 2 次提交
  11. 12 12月, 2019 3 次提交
    • D
      init: use do_mount() instead of ksys_mount() · cccaa5e3
      Dominik Brodowski 提交于
      In prepare_namespace(), do_mount() can be used instead of ksys_mount()
      as the first and third argument are const strings in the kernel, the
      second and fourth argument are passed through anyway, and the fifth
      argument is NULL.
      
      In do_mount_root(), ksys_mount() is called with the first and third
      argument being already kernelspace strings, which do not need to be
      copied over from userspace to kernelspace (again). The second and
      fourth arguments are passed through to do_mount() anyway. The fifth
      argument, while already residing in kernelspace, needs to be put into
      a page of its own. Then, do_mount() can be used instead of
      ksys_mount().
      
      Once this is done, there are no in-kernel users to ksys_mount() left,
      which can therefore be removed.
      Signed-off-by: NDominik Brodowski <linux@dominikbrodowski.net>
      cccaa5e3
    • D
      initrd: use do_mount() instead of ksys_mount() · d4440aac
      Dominik Brodowski 提交于
      All three calls to ksys_mount() in initrd-related kernel code can
      be switched over to do_mount():
      - the first and third arguments are const strings in the kernel,
        and do not need to be copied over from userspace;
      - the fifth argument is NULL, and therefore no page needs to be,
        copied over from userspace;
      - the second and fourth argument are passed through anyway.
      Signed-off-by: NDominik Brodowski <linux@dominikbrodowski.net>
      d4440aac
    • D
      devtmpfs: use do_mount() instead of ksys_mount() · 5e787dbf
      Dominik Brodowski 提交于
      In devtmpfs, do_mount() can be called directly instead of complex wrapping
      by ksys_mount():
      - the first and third arguments are const strings in the kernel,
        and do not need to be copied over from userspace;
      - the fifth argument is NULL, and therefore no page needs to be
        copied over from userspace;
      - the second and fourth argument are passed through anyway.
      Signed-off-by: NDominik Brodowski <linux@dominikbrodowski.net>
      5e787dbf
  12. 05 12月, 2019 1 次提交
  13. 27 11月, 2019 1 次提交
    • E
      sysctl: Remove the sysctl system call · 61a47c1a
      Eric W. Biederman 提交于
      This system call has been deprecated almost since it was introduced, and
      in a survey of the linux distributions I can no longer find any of them
      that enable CONFIG_SYSCTL_SYSCALL.  The only indication that I can find
      that anyone might care is that a few of the defconfigs in the kernel
      enable CONFIG_SYSCTL_SYSCALL.  However this appears in only 31 of 414
      defconfigs in the kernel, so I suspect this symbols presence is simply
      because it is harmless to include rather than because it is necessary.
      
      As there appear to be no users of the sysctl system call, remove the
      code.  As this removes one of the few uses of the internal kernel mount
      of proc I hope this allows for even more simplifications of the proc
      filesystem.
      
      Cc: Alex Smith <alex.smith@imgtec.com>
      Cc: Anders Berg <anders.berg@lsi.com>
      Cc: Apelete Seketeli <apelete@seketeli.net>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Chee Nouk Phoon <cnphoon@altera.com>
      Cc: Chris Zankel <chris@zankel.net>
      Cc: Christian Ruppert <christian.ruppert@abilis.com>
      Cc: Greg Ungerer <gerg@uclinux.org>
      Cc: Harvey Hunt <harvey.hunt@imgtec.com>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Hongliang Tao <taohl@lemote.com>
      Cc: Hua Yan <yanh@lemote.com>
      Cc: Huacai Chen <chenhc@lemote.com>
      Cc: John Crispin <blogic@openwrt.org>
      Cc: Jonas Jensen <jonas.jensen@gmail.com>
      Cc: Josh Boyer <jwboyer@gmail.com>
      Cc: Jun Nie <jun.nie@linaro.org>
      Cc: Kevin Hilman <khilman@linaro.org>
      Cc: Kevin Wells <kevin.wells@nxp.com>
      Cc: Kumar Gala <galak@codeaurora.org>
      Cc: Lars-Peter Clausen <lars@metafoo.de>
      Cc: Ley Foon Tan <lftan@altera.com>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Markos Chandras <markos.chandras@imgtec.com>
      Cc: Max Filippov <jcmvbkbc@gmail.com>
      Cc: Noam Camus <noamc@ezchip.com>
      Cc: Olof Johansson <olof@lixom.net>
      Cc: Paul Burton <paul.burton@mips.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Phil Edworthy <phil.edworthy@renesas.com>
      Cc: Pierrick Hascoet <pierrick.hascoet@abilis.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Roland Stigge <stigge@antcom.de>
      Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
      Cc: Scott Telford <stelford@cadence.com>
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Steven J. Hill <Steven.Hill@imgtec.com>
      Cc: Tanmay Inamdar <tinamdar@apm.com>
      Cc: Vineet Gupta <vgupta@synopsys.com>
      Cc: Wolfram Sang <w.sang@pengutronix.de>
      Acked-by: NAndi Kleen <ak@linux.intel.com>
      Reviewed-by: NKees Cook <keescook@chromium.org>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      61a47c1a
  14. 17 11月, 2019 1 次提交
    • A
      int128: move __uint128_t compiler test to Kconfig · c12d3362
      Ard Biesheuvel 提交于
      In order to use 128-bit integer arithmetic in C code, the architecture
      needs to have declared support for it by setting ARCH_SUPPORTS_INT128,
      and it requires a version of the toolchain that supports this at build
      time. This is why all existing tests for ARCH_SUPPORTS_INT128 also test
      whether __SIZEOF_INT128__ is defined, since this is only the case for
      compilers that can support 128-bit integers.
      
      Let's fold this additional test into the Kconfig declaration of
      ARCH_SUPPORTS_INT128 so that we can also use the symbol in Makefiles,
      e.g., to decide whether a certain object needs to be included in the
      first place.
      
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: NArd Biesheuvel <ardb@kernel.org>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      c12d3362
  15. 14 11月, 2019 1 次提交
    • M
      kbuild: remove header compile test · fcbb8461
      Masahiro Yamada 提交于
      There are both positive and negative options about this feature.
      At first, I thought it was a good idea, but actually Linus stated a
      negative opinion (https://lkml.org/lkml/2019/9/29/227). I admit it
      is ugly and annoying.
      
      The baseline I'd like to keep is the compile-test of uapi headers.
      (Otherwise, kernel developers have no way to ensure the correctness
      of the exported headers.)
      
      I will maintain a small build rule in usr/include/Makefile.
      Remove the other header test functionality.
      Signed-off-by: NMasahiro Yamada <yamada.masahiro@socionext.com>
      fcbb8461
  16. 30 10月, 2019 1 次提交
    • J
      io_uring: replace workqueue usage with io-wq · 561fb04a
      Jens Axboe 提交于
      Drop various work-arounds we have for workqueues:
      
      - We no longer need the async_list for tracking sequential IO.
      
      - We don't have to maintain our own mm tracking/setting.
      
      - We don't need a separate workqueue for buffered writes. This didn't
        even work that well to begin with, as it was suboptimal for multiple
        buffered writers on multiple files.
      
      - We can properly cancel pending interruptible work. This fixes
        deadlocks with particularly socket IO, where we cannot cancel them
        when the io_uring is closed. Hence the ring will wait forever for
        these requests to complete, which may never happen. This is different
        from disk IO where we know requests will complete in a finite amount
        of time.
      
      - Due to being able to cancel work interruptible work that is already
        running, we can implement file table support for work. We need that
        for supporting system calls that add to a process file table.
      
      - It gets us one step closer to adding async support for any system
        call.
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      561fb04a
  17. 16 10月, 2019 1 次提交
    • M
      arm64: use generic free_initrd_mem() · 899ee4af
      Mike Rapoport 提交于
      arm64 calls memblock_free() for the initrd area in its implementation of
      free_initrd_mem(), but this call has no actual effect that late in the boot
      process. By the time initrd is freed, all the reserved memory is managed by
      the page allocator and the memblock.reserved is unused, so the only purpose
      of the memblock_free() call is to keep track of initrd memory for debugging
      and accounting.
      
      Without the memblock_free() call the only difference between arm64 and the
      generic versions of free_initrd_mem() is the memory poisoning.
      
      Move memblock_free() call to the generic code, enable it there
      for the architectures that define ARCH_KEEP_MEMBLOCK and use the generic
      implementation of free_initrd_mem() on arm64.
      
      Tested-by: Anshuman Khandual <anshuman.khandual@arm.com>	#arm64
      Reviewed-by: NAnshuman Khandual <anshuman.khandual@arm.com>
      Acked-by: NWill Deacon <will@kernel.org>
      Signed-off-by: NMike Rapoport <rppt@linux.ibm.com>
      Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      899ee4af
  18. 03 10月, 2019 1 次提交
  19. 25 9月, 2019 3 次提交
  20. 16 9月, 2019 2 次提交
  21. 13 9月, 2019 1 次提交
    • D
      vfs: Convert ramfs, shmem, tmpfs, devtmpfs, rootfs to use the new mount API · f3235626
      David Howells 提交于
      Convert the ramfs, shmem, tmpfs, devtmpfs and rootfs filesystems to the new
      internal mount API as the old one will be obsoleted and removed.  This
      allows greater flexibility in communication of mount parameters between
      userspace, the VFS and the filesystem.
      
      See Documentation/filesystems/mount_api.txt for more information.
      
      Note that tmpfs is slightly tricky as it can contain embedded commas, so it
      can't be trivially split up using strsep() to break on commas in
      generic_parse_monolithic().  Instead, tmpfs has to supply its own generic
      parser.
      
      However, if tmpfs changes, then devtmpfs and rootfs, which are wrappers
      around tmpfs or ramfs, must change too - and thus so must ramfs, so these
      had to be converted also.
      
      [AV: rewritten]
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      cc: Hugh Dickins <hughd@google.com>
      cc: linux-mm@kvack.org
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      f3235626
  22. 12 9月, 2019 2 次提交
  23. 10 9月, 2019 1 次提交
  24. 06 9月, 2019 2 次提交
  25. 04 9月, 2019 1 次提交
    • M
      kbuild,arc: add CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3 for ARC · 15f5db60
      Masahiro Yamada 提交于
      arch/arc/Makefile overrides -O2 with -O3. This is the only user of
      ARCH_CFLAGS. There is no user of ARCH_CPPFLAGS or ARCH_AFLAGS.
      My plan is to remove ARCH_{CPP,A,C}FLAGS after refactoring the ARC
      Makefile.
      
      Currently, ARC has no way to enable -Wmaybe-uninitialized because both
      -O3 and -Os disable it. Enabling it will be useful for compile-testing.
      This commit allows allmodconfig (, which defaults to -O2) to enable it.
      
      Add CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3=y to all the defconfig files
      in arch/arc/configs/ in order to keep the current config settings.
      Signed-off-by: NMasahiro Yamada <yamada.masahiro@socionext.com>
      Acked-by: NVineet Gupta <vgupta@synopsys.com>
      15f5db60