Skip to content
Permalink
Dikshita-Agarw…
Switch branches/tags

Commits on Aug 11, 2021

  1. arm64: dts: qcom: sc7280: Add venus DT node

    Add DT entries for the sc7280 venus encoder/decoder.
    
    Change since v4:
    	rebased on latest linux-next tree.
    
    this patch depends on [1].
    
    [1] https://patchwork.kernel.org/project/linux-arm-msm/list/?series=529463
    
    Co-developed-by: Mansur Alisha Shaik <mansur@codeaurora.org>
    Signed-off-by: Dikshita Agarwal <dikshita@codeaurora.org>
    Dikshita Agarwal authored and intel-lab-lkp committed Aug 11, 2021

Commits on Aug 10, 2021

  1. Add linux-next specific files for 20210810

    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sfrothwell committed Aug 10, 2021
  2. Merge branch 'akpm/master'

    sfrothwell committed Aug 10, 2021
  3. arch: remove compat_alloc_user_space

    All users of compat_alloc_user_space() and copy_in_user() have been
    removed from the kernel, only a few functions in sparc remain that can be
    changed to calling arch_copy_in_user() instead.
    
    Link: https://lkml.kernel.org/r/20210727144859.4150043-7-arnd@kernel.org
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Christian Borntraeger <borntraeger@de.ibm.com>
    Cc: Christoph Hellwig <hch@infradead.org>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Eric Biederman <ebiederm@xmission.com>
    Cc: Feng Tang <feng.tang@intel.com>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Helge Deller <deller@gmx.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Cc: Will Deacon <will@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    arndb authored and sfrothwell committed Aug 10, 2021
  4. compat: remove some compat entry points

    These are all handled correctly when calling the native system call entry
    point, so remove the special cases.
    
    Link: https://lkml.kernel.org/r/20210727144859.4150043-6-arnd@kernel.org
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Christian Borntraeger <borntraeger@de.ibm.com>
    Cc: Christoph Hellwig <hch@infradead.org>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Eric Biederman <ebiederm@xmission.com>
    Cc: Feng Tang <feng.tang@intel.com>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Helge Deller <deller@gmx.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Cc: Will Deacon <will@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    arndb authored and sfrothwell committed Aug 10, 2021
  5. fixup! mm: simplify compat numa syscalls

    When compat user space asks for more data than the kernel has in its
    nodemask, get_mempolicy() now either leaks kernel stack data to user space
    or, if either VMAP_STACK or KASAN are enabled, causes a crash like
    
    Unable to handle kernel pointer dereference in virtual kernel address space
    Failing address: 0000038003e7c000 TEID: 0000038003e7c803
    Fault in home space mode while using kernel ASCE.
    AS:00000001fb388007 R3:000000008021c007 S:0000000082142000 P:0000000000000400
    Oops: 0011 ilc:3 [#1] SMP
    CPU: 0 PID: 1017495 Comm: get_mempolicy Tainted: G           OE     5.14.0-20210730.rc3.git0.4ccc9e2db7ac.300.fc34.s390x+next #1
    Hardware name: IBM 2827 H66 708 (LPAR)
    Krnl PSW : 0704e00180000000 00000001f9f11000 (compat_put_bitmap+0x48/0xd0)
               R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:2 PM:0 RI:0 EA:3
    Krnl GPRS: 0000000000810000 0000000000000000 000000007d9df1c0 0000038003e7c008
               0000000000000004 000000007d9df1c4 0000038003e7be40 0000000000010000
               0000000000008000 0000000000000000 0000000000000390 00000000000001c8
               000000020d6ea000 000002aa00401a48 00000001fa0a85fa 0000038003e7bd50
    Krnl Code: 00000001f9f10ff4: a7bb0001            aghi    %r11,1
               00000001f9f10ff8: 41303008            la      %r3,8(%r3)
              #00000001f9f10ffc: 41502004            la      %r5,4(%r2)
              >00000001f9f11000: e3103ff8ff04        lg      %r1,-8(%r3)
               00000001f9f11006: 5010f0a4            st      %r1,164(%r15)
               00000001f9f1100a: a50e0081            llilh   %r0,129
               00000001f9f1100e: c8402000f0a4        mvcos   0(%r2),164(%r15),%r4
               00000001f9f11014: 1799                xr      %r9,%r9
    Call Trace:
     [<00000001f9f11000>] compat_put_bitmap+0x48/0xd0
     [<00000001fa0a85fa>] kernel_get_mempolicy+0x102/0x178
     [<00000001fa0a86b0>] __s390_sys_get_mempolicy+0x40/0x50
     [<00000001fa92be30>] __do_syscall+0x1c0/0x1e8
     [<00000001fa939148>] system_call+0x78/0xa0
    Last Breaking-Event-Address:
     [<0000038003e7bc00>] 0x38003e7bc00
    Kernel panic - not syncing: Fatal exception: panic_on_oops
    
    Fix it by copying the correct size in compat mode again.
    
    Link: https://lkml.kernel.org/r/20210730143417.3700653-1-arnd@kernel.org
    Link: https://lore.kernel.org/lkml/YQPLG20V3dmOfq3a@osiris/
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    arndb authored and sfrothwell committed Aug 10, 2021
  6. mm: simplify compat numa syscalls

    The compat implementations for mbind, get_mempolicy, set_mempolicy and
    migrate_pages are just there to handle the subtly different layout of
    bitmaps on 32-bit hosts.
    
    The compat implementation however lacks some of the checks that are
    present in the native one, in particular for checking that the extra bits
    are all zero when user space has a larger mask size than the kernel.
    Worse, those extra bits do not get cleared when copying in or out of the
    kernel, which can lead to incorrect data as well.
    
    Unify the implementation to handle the compat bitmap layout directly in
    the get_nodes() and copy_nodes_to_user() helpers.  Splitting out the
    get_bitmap() helper from get_nodes() also helps readability of the native
    case.
    
    On x86, two additional problems are addressed by this: compat tasks can
    pass a bitmap at the end of a mapping, causing a fault when reading across
    the page boundary for a 64-bit word.  x32 tasks might also run into
    problems with get_mempolicy corrupting data when an odd number of 32-bit
    words gets passed.
    
    On parisc the migrate_pages() system call apparently had the wrong calling
    convention, as big-endian architectures expect the words inside of a
    bitmap to be swapped.  This is not a problem though since parisc has no
    NUMA support.
    
    Link: https://lkml.kernel.org/r/20210727144859.4150043-5-arnd@kernel.org
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Christian Borntraeger <borntraeger@de.ibm.com>
    Cc: Christoph Hellwig <hch@infradead.org>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Eric Biederman <ebiederm@xmission.com>
    Cc: Feng Tang <feng.tang@intel.com>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Helge Deller <deller@gmx.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Cc: Will Deacon <will@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    arndb authored and sfrothwell committed Aug 10, 2021
  7. mm: simplify compat_sys_move_pages

    The compat move_pages() implementation uses compat_alloc_user_space() for
    converting the pointer array.  Moving the compat handling into the
    function itself is a bit simpler and lets us avoid the
    compat_alloc_user_space() call.
    
    Link: https://lkml.kernel.org/r/20210727144859.4150043-4-arnd@kernel.org
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Christian Borntraeger <borntraeger@de.ibm.com>
    Cc: Christoph Hellwig <hch@infradead.org>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Eric Biederman <ebiederm@xmission.com>
    Cc: Feng Tang <feng.tang@intel.com>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Helge Deller <deller@gmx.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Cc: Will Deacon <will@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    arndb authored and sfrothwell committed Aug 10, 2021
  8. kexec: avoid compat_alloc_user_space

    kimage_alloc_init() expects a __user pointer, so compat_sys_kexec_load()
    uses compat_alloc_user_space() to convert the layout and put it back onto
    the user space caller stack.
    
    Moving the user space access into the syscall handler directly actually
    makes the code simpler, as the conversion for compat mode can now be done
    on kernel memory.
    
    Link: https://lkml.kernel.org/r/20210727144859.4150043-3-arnd@kernel.org
    Link: https://lore.kernel.org/lkml/YPbtsU4GX6PL7%2F42@infradead.org/
    Link: https://lore.kernel.org/lkml/m1y2cbzmnw.fsf@fess.ebiederm.org/
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Co-developed-by: Eric Biederman <ebiederm@xmission.com>
    Co-developed-by: Christoph Hellwig <hch@infradead.org>
    Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Christian Borntraeger <borntraeger@de.ibm.com>
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Feng Tang <feng.tang@intel.com>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Helge Deller <deller@gmx.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Cc: Will Deacon <will@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    arndb authored and sfrothwell committed Aug 10, 2021
  9. kexec: move locking into do_kexec_load

    Patch series "compat: remove compat_alloc_user_space", v5.
    
    Going through compat_alloc_user_space() to convert indirect system call
    arguments tends to add complexity compared to handling the native and
    compat logic in the same code.
    
    This patch (of 6):
    
    The locking is the same between the native and compat version of
    sys_kexec_load(), so it can be done in the common implementation to reduce
    duplication.
    
    Link: https://lkml.kernel.org/r/20210727144859.4150043-1-arnd@kernel.org
    Link: https://lkml.kernel.org/r/20210727144859.4150043-2-arnd@kernel.org
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Co-developed-by: Eric Biederman <ebiederm@xmission.com>
    Co-developed-by: Christoph Hellwig <hch@infradead.org>
    Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Will Deacon <will@kernel.org>
    Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
    Cc: Helge Deller <deller@gmx.de>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Cc: Christian Borntraeger <borntraeger@de.ibm.com>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Feng Tang <feng.tang@intel.com>
    Cc: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    arndb authored and sfrothwell committed Aug 10, 2021
  10. scripts: check_extable: fix typo in user error message

    Fix typo ("and" should be "an") in an error message.
    
    Link: https://lkml.kernel.org/r/20210727002943.29774-1-rdunlap@infradead.org
    Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
    Cc: Quentin Casasnovas <quentin.casasnovas@oracle.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    rddunlap authored and sfrothwell committed Aug 10, 2021
  11. mm/workingset: correct kernel-doc notations

    Use the documented kernel-doc format to prevent kernel-doc warnings.
    
    mm/workingset.c:256: warning: No description found for return value of 'workingset_eviction'
    mm/workingset.c:285: warning: Function parameter or member 'folio' not described in 'workingset_refault'
    mm/workingset.c:285: warning: Excess function parameter 'page' description in 'workingset_refault'
    
    Link: https://lkml.kernel.org/r/20210808203153.10678-1-rdunlap@infradead.org
    Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
    Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    rddunlap authored and sfrothwell committed Aug 10, 2021
  12. selftests/memfd: remove unused variable

    Commit 5440298 ("selftests/memfd: add tests for F_SEAL_FUTURE_WRITE
    seal") added an unused variable to mfd_assert_reopen_fd().
    
    Delete the unused variable.
    
    Link: https://lkml.kernel.org/r/20210702045509.1517643-1-gthelen@google.com
    Fixes: 5440298 ("selftests/memfd: add tests for F_SEAL_FUTURE_WRITE seal")
    Signed-off-by: Greg Thelen <gthelen@google.com>
    Cc: Shuah Khan <shuah@kernel.org>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: "Joel Fernandes (Google)" <joel@joelfernandes.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    gthelen authored and sfrothwell committed Aug 10, 2021
  13. Kconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH

    Commit 05a4a95 ("kernel/watchdog: split up config options") adds a
    new config HARDLOCKUP_DETECTOR, which selects the non-existing config
    HARDLOCKUP_DETECTOR_ARCH.
    
    Hence, ./scripts/checkkconfigsymbols.py warns:
    
    HARDLOCKUP_DETECTOR_ARCH Referencing files: lib/Kconfig.debug
    
    Simply drop selecting the non-existing HARDLOCKUP_DETECTOR_ARCH.
    
    Link: https://lkml.kernel.org/r/20210806115618.22088-1-lukas.bulwahn@gmail.com
    Fixes: 05a4a95 ("kernel/watchdog: split up config options")
    Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
    Cc: Nicholas Piggin <npiggin@gmail.com>
    Cc: Masahiro Yamada <masahiroy@kernel.org>
    Cc: Babu Moger <babu.moger@oracle.com>
    Cc: Don Zickus <dzickus@redhat.com>
    Cc: Randy Dunlap <rdunlap@infradead.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    bulwahn authored and sfrothwell committed Aug 10, 2021
  14. configs: remove the obsolete CONFIG_INPUT_POLLDEV

    This CONFIG option was removed in commit 278b13c ("Input: remove
    input_polled_dev implementation") so there's no point to keep it in
    defconfigs any longer.
    
    Get rid of the leftover for all arches.
    
    Link: https://lkml.kernel.org/r/20210726074741.1062-1-yuzenghui@huawei.com
    Signed-off-by: Zenghui Yu <yuzenghui@huawei.com>
    Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Zenghui Yu authored and sfrothwell committed Aug 10, 2021
  15. prctl: allow to setup brk for et_dyn executables

    Keno Fischer reported that when a binray loaded via ld-linux-x the
    prctl(PR_SET_MM_MAP) doesn't allow to setup brk value because it lays
    before mm:end_data.
    
    For example a test program shows
    
     | # ~/t
     |
     | start_code      401000
     | end_code        401a15
     | start_stack     7ffce4577dd0
     | start_data	   403e10
     | end_data        40408c
     | start_brk	   b5b000
     | sbrk(0)         b5b000
    
    and when executed via ld-linux
    
     | # /lib64/ld-linux-x86-64.so.2 ~/t
     |
     | start_code      7fc25b0a4000
     | end_code        7fc25b0c4524
     | start_stack     7fffcc6b2400
     | start_data	   7fc25b0ce4c0
     | end_data        7fc25b0cff98
     | start_brk	   55555710c000
     | sbrk(0)         55555710c000
    
    This of course prevent criu from restoring such programs.  Looking into
    how kernel operates with brk/start_brk inside brk() syscall I don't see
    any problem if we allow to setup brk/start_brk without checking for
    end_data.  Even if someone pass some weird address here on a purpose then
    the worst possible result will be an unexpected unmapping of existing vma
    (own vma, since prctl works with the callers memory) but test for
    RLIMIT_DATA is still valid and a user won't be able to gain more memory in
    case of expanding VMAs via new values shipped with prctl call.
    
    Link: https://lkml.kernel.org/r/20210121221207.GB2174@grain
    Fixes: bbdc607 ("binfmt_elf: move brk out of mmap when doing direct loader exec")
    Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
    Reported-by: Keno Fischer <keno@juliacomputing.com>
    Acked-by: Andrey Vagin <avagin@gmail.com>
    Tested-by: Andrey Vagin <avagin@gmail.com>
    Cc: Dmitry Safonov <0x7f454c46@gmail.com>
    Cc: Kirill Tkhai <ktkhai@virtuozzo.com>
    Cc: Eric W. Biederman <ebiederm@xmission.com>
    Cc: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
    Cc: Alexander Mikhalitsyn <alexander.mikhalitsyn@virtuozzo.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    cyrillos authored and sfrothwell committed Aug 10, 2021
  16. pid: cleanup the stale comment mentioning pidmap_init().

    pidmap_init() has already been replaced with pid_idr_init() in the commit
    95846ec ("pid: replace pid bitmap implementation with IDR API").
    Cleanup the stale comment which still mentions it.
    
    Link: https://lkml.kernel.org/r/20210714120713.19825-1-itazur@amazon.com
    Signed-off-by: Takahiro Itazuri <itazur@amazon.com>
    Cc: Kuniyuki Iwashima <kuniyu@amazon.co.jp>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    zulinx86 authored and sfrothwell committed Aug 10, 2021
  17. log-if-a-core-dump-is-aborted-due-to-changed-file-permissions-fix

    s/|%s/%s/ in printk text
    
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    akpm00 authored and sfrothwell committed Aug 10, 2021
  18. fs/coredump.c: log if a core dump is aborted due to changed file perm…

    …issions
    
    For obvious security reasons, a core dump is aborted if the filesystem
    cannot preserve ownership or permissions of the dump file.
    
    This affects filesystems like e.g.  vfat, but also something like a 9pfs
    share in a Qemu test setup, running as a regular user, depending on the
    security model used.  In those cases, the result is an empty core file and
    a confused user.
    
    To hopefully safe other people a lot of time figuring out the cause, this
    patch adds a simple log message for those specific cases.
    
    Link: https://lkml.kernel.org/r/20210701233151.102720-1-david.oberhollenzer@sigma-star.at
    Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    AgentD authored and sfrothwell committed Aug 10, 2021
  19. hfsplus: fix out-of-bounds warnings in __hfsplus_setxattr

    Fix the following out-of-bounds warnings by enclosing structure members
    file and finder into new struct info:
    
    fs/hfsplus/xattr.c:300:5: warning: 'memcpy' offset [65, 80] from the object at 'entry' is out of the bounds of referenced subobject 'user_info' with type 'struct DInfo' at offset 48 [-Warray-bounds]
    fs/hfsplus/xattr.c:313:5: warning: 'memcpy' offset [65, 80] from the object at 'entry' is out of the bounds of referenced subobject 'user_info' with type 'struct FInfo' at offset 48 [-Warray-bounds]
    
    Refactor the code by making it more "structured."
    
    Also, this helps with the ongoing efforts to enable -Warray-bounds and
    makes the code clearer and avoid confusing the compiler.
    
    Matthew said:
    
    : The offending line is this:
    :
    : -                               memcpy(&entry.file.user_info, value,
    : +                               memcpy(&entry.file.info, value,
    :                                                 file_finderinfo_len);
    :
    : what it's trying to do is copy two structs which are adjacent to each
    : other in a single call to memcpy().  gcc legitimately complains that
    : the memcpy to this struct overruns the bounds of the struct.  What
    : Gustavo has done here is introduce a new struct that contains the two
    : structs, and now gcc is happy that the memcpy doesn't overrun the
    : length of this containing struct.
    
    Link: KSPP#109
    Link: https://lkml.kernel.org/r/20210330145226.GA207011@embeddedor
    Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
    Reported-by: kernel test robot <lkp@intel.com>
    Cc: Matthew Wilcox <willy@infradead.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    GustavoARSilva authored and sfrothwell committed Aug 10, 2021
  20. nilfs2: fix memory leak in nilfs_sysfs_delete_snapshot_group

    kobject_put() should be used to cleanup the memory associated with the
    kobject instead of kobject_del().  See the section "Kobject removal" of
    "Documentation/core-api/kobject.rst".
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-7-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-7-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sunnanyong authored and sfrothwell committed Aug 10, 2021
  21. nilfs2: fix memory leak in nilfs_sysfs_create_snapshot_group

    If kobject_init_and_add returns with error, kobject_put() is needed here
    to avoid memory leak, because kobject_init_and_add may return error
    without freeing the memory associated with the kobject it allocated.
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-6-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-6-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sunnanyong authored and sfrothwell committed Aug 10, 2021
  22. nilfs2: fix memory leak in nilfs_sysfs_delete_##name##_group

    The kobject_put() should be used to cleanup the memory associated with the
    kobject instead of kobject_del.  See the section "Kobject removal" of
    "Documentation/core-api/kobject.rst".
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-5-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-5-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sunnanyong authored and sfrothwell committed Aug 10, 2021
  23. nilfs2: fix memory leak in nilfs_sysfs_create_##name##_group

    If kobject_init_and_add return with error, kobject_put() is needed here to
    avoid memory leak, because kobject_init_and_add may return error without
    freeing the memory associated with the kobject it allocated.
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-4-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-4-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sunnanyong authored and sfrothwell committed Aug 10, 2021
  24. nilfs2: fix NULL pointer in nilfs_##name##_attr_release

    In nilfs_##name##_attr_release, kobj->parent should not be referenced
    because it is a NULL pointer.  The release() method of kobject is always
    called in kobject_put(kobj), in the implementation of kobject_put(), the
    kobj->parent will be assigned as NULL before call the release() method.
    So just use kobj to get the subgroups, which is more efficient and can fix
    a NULL pointer reference problem.
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-3-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-3-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sunnanyong authored and sfrothwell committed Aug 10, 2021
  25. nilfs2: fix memory leak in nilfs_sysfs_create_device_group

    Patch series "nilfs2: fix incorrect usage of kobject".
    
    This patchset from Nanyong Sun fixes memory leak issues and a NULL pointer
    dereference issue caused by incorrect usage of kboject in nilfs2 sysfs
    implementation.
    
    This patch (of 6):
    
    Reported by syzkaller:
    BUG: memory leak
    unreferenced object 0xffff888100ca8988 (size 8):
    comm "syz-executor.1", pid 1930, jiffies 4294745569 (age 18.052s)
    hex dump (first 8 bytes):
    6c 6f 6f 70 31 00 ff ff loop1...
    backtrace:
    [<000000009d9e0ac4>] slab_alloc_node mm/slub.c:2972 [inline]
    [<000000009d9e0ac4>] slab_alloc mm/slub.c:2980 [inline]
    [<000000009d9e0ac4>] __kmalloc_track_caller+0x164/0x330 mm/slub.c:4644
    [<00000000b1825477>] kstrdup+0x36/0x70 mm/util.c:60
    [<00000000fa081499>] kstrdup_const+0x35/0x60 mm/util.c:83
    [<0000000024d13570>] kvasprintf_const+0xf1/0x180 lib/kasprintf.c:48
    [<0000000024b69715>] kobject_set_name_vargs+0x56/0x150 lib/kobject.c:289
    [<000000003fedac3d>] kobject_add_varg lib/kobject.c:384 [inline]
    [<000000003fedac3d>] kobject_init_and_add+0xc9/0x150 lib/kobject.c:473
    [<000000002795bd99>] nilfs_sysfs_create_device_group+0x150/0x7d0 fs/nilfs2/sysfs.c:986
    [<00000000567fa12d>] init_nilfs+0xa21/0xea0 fs/nilfs2/the_nilfs.c:637
    [<00000000082e7458>] nilfs_fill_super fs/nilfs2/super.c:1046 [inline]
    [<00000000082e7458>] nilfs_mount+0x7b4/0xe80 fs/nilfs2/super.c:1316
    [<00000000adc3fd88>] legacy_get_tree+0x105/0x210 fs/fs_context.c:592
    [<00000000a98c45b8>] vfs_get_tree+0x8e/0x2d0 fs/super.c:1498
    [<00000000e96282d3>] do_new_mount fs/namespace.c:2905 [inline]
    [<00000000e96282d3>] path_mount+0xf9b/0x1990 fs/namespace.c:3235
    [<000000003d2eb1b0>] do_mount+0xea/0x100 fs/namespace.c:3248
    [<00000000e1ce771a>] __do_sys_mount fs/namespace.c:3456 [inline]
    [<00000000e1ce771a>] __se_sys_mount fs/namespace.c:3433 [inline]
    [<00000000e1ce771a>] __x64_sys_mount+0x14b/0x1f0 fs/namespace.c:3433
    [<000000007c7f81e8>] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
    [<000000007c7f81e8>] do_syscall_64+0x3b/0x90 arch/x86/entry/common.c:80
    [<00000000fd23ff06>] entry_SYSCALL_64_after_hwframe+0x44/0xae
    
    If kobject_init_and_add return with error, then the cleanup of kobject is
    needed because memory may be allocated in kobject_init_and_add without
    freeing.
    
    And the place of cleanup_dev_kobject should use kobject_put to free the
    memory associated with the kobject.  As the section "Kobject removal" of
    "Documentation/core-api/kobject.rst" says, kobject_del() just makes the
    kobject "invisible", but it is not cleaned up.  And no more cleanup will
    do after cleanup_dev_kobject, so kobject_put is needed here.
    
    Link: https://lkml.kernel.org/r/1625651306-10829-1-git-send-email-konishi.ryusuke@gmail.com
    Link: https://lkml.kernel.org/r/1625651306-10829-2-git-send-email-konishi.ryusuke@gmail.com
    Reported-by: Hulk Robot <hulkci@huawei.com>
    Link: https://lkml.kernel.org/r/20210629022556.3985106-2-sunnanyong@huawei.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sunnanyong authored and sfrothwell committed Aug 10, 2021
  26. init/main.c: silence some -Wunused-parameter warnings

    There are a bunch of callbacks with unused arguments, go ahead and silence
    those so "make KCFLAGS=-W init/main.o" is a little quieter.  Here's a
    little sample:
    
    init/main.c:182:43: warning: unused parameter 'str' [-Wunused-parameter]
    static int __init set_reset_devices(char *str)
    
    Link: https://lkml.kernel.org/r/20210519162341.1275452-1-ahalaney@redhat.com
    Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    ahalaney authored and sfrothwell committed Aug 10, 2021
  27. fs-epoll-use-a-per-cpu-counter-for-users-watches-count-fix-fix

    tweak user_epoll_alloc(), per Guenter
    
    Link: https://lkml.kernel.org/r/20210804191421.GA1900577@roeck-us.net
    Cc: Guenter Roeck <linux@roeck-us.net>
    Cc: Mark Brown <broonie@kernel.org>
    Cc: Nicholas Piggin <npiggin@gmail.com>
    Cc: Randy Dunlap <rdunlap@infradead.org>
    Cc: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    akpm00 authored and sfrothwell committed Aug 10, 2021
  28. fs-epoll-use-a-per-cpu-counter-for-users-watches-count-fix

    fix build errors in kernel/user.c when CONFIG_EPOLL=n
    
    Also fix typo: "cpunter" -"counter" in a panic message.
    
    [npiggin@gmail.com: move ifdefs into wrapper functions, slightly improve panic message]
    Link: https://lkml.kernel.org/r/1628051945.fens3r99ox.astroid@bobo.none
    Fixes: e75b894 ("fs/epoll: use a per-cpu counter for user's watches count")
    Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
    Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
    Cc: Mark Brown <broonie@kernel.org>
    Cc: Guenter Roeck <linux@roeck-us.net>
    Cc: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    rddunlap authored and sfrothwell committed Aug 10, 2021
  29. fs/epoll: use a per-cpu counter for user's watches count

    This counter tracks the number of watches a user has, to compare against
    the 'max_user_watches' limit. This causes a scalability bottleneck on
    SPECjbb2015 on large systems as there is only one user. Changing to a
    per-cpu counter increases throughput of the benchmark by about 30% on a
    16-socket, > 1000 thread system.
    
    Link: https://lkml.kernel.org/r/20210802032013.2751916-1-npiggin@gmail.com
    Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
    Reported-by: Anton Blanchard <anton@ozlabs.org>
    Cc: Alexander Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    npiggin authored and sfrothwell committed Aug 10, 2021
  30. checkpatch: support wide strings

    Allow prefixing typical strings with L for wide strings and u for unicode
    strings.
    
    Link: https://lkml.kernel.org/r/20210801170733.1.I3f9784fd3c1007d08ec2e70b151d137687575495@changeid
    Signed-off-by: Joe Perches <joe@perches.com>
    Signed-off-by: Simon Glass <sjg@chromium.org>
    Cc: Dwaipayan Ray <dwaipayanray1@gmail.com>
    Cc: Lukas Bulwahn <lukas.bulwahn@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    JoePerches authored and sfrothwell committed Aug 10, 2021
  31. lib/iov_iter.c: fix kernel-doc warnings

    Fix all kernel-doc warnings in lib/iov_iter.c:
    
    lib/iov_iter.c:695: warning: Function parameter or member 'i' not described in '_copy_mc_to_iter'
    lib/iov_iter.c:695: warning: Excess function parameter 'iter' description in '_copy_mc_to_iter'
    lib/iov_iter.c:695: warning: No description found for return value of '_copy_mc_to_iter'
    lib/iov_iter.c:758: warning: Function parameter or member 'i' not described in '_copy_from_iter_flushcache'
    lib/iov_iter.c:758: warning: Excess function parameter 'iter' description in '_copy_from_iter_flushcache'
    lib/iov_iter.c:758: warning: No description found for return value of '_copy_from_iter_flushcache'
    
    Link: https://lkml.kernel.org/r/20210809051053.6531-1-rdunlap@infradead.org
    Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    rddunlap authored and sfrothwell committed Aug 10, 2021
  32. lib/dump_stack: correct kernel-doc notation

    Fix kernel-doc warnings in dump_stack.c:
    
    lib/dump_stack.c:97: warning: Function parameter or member 'log_lvl' not described in 'dump_stack_lvl'
    lib/dump_stack.c:97: warning: expecting prototype for dump_stack(). Prototype was for dump_stack_lvl() instead
    
    Link: https://lkml.kernel.org/r/20210809051643.17567-1-rdunlap@infradead.org
    Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    rddunlap authored and sfrothwell committed Aug 10, 2021
  33. lib/test: convert test_sort.c to use KUnit

    This follows up commit ebd0957 ("lib/test: convert
    lib/test_list_sort.c to use KUnit").
    
    Converting this test to KUnit makes the test a bit shorter, standardizes
    how it reports pass/fail, and adds an easier way to run the test [1].
    
    Like ebd0957, this leaves the file and Kconfig option name the same,
    but slightly changes their dependencies (needs CONFIG_KUNIT).
    
    [1] Can be run via
    $ ./tools/testing/kunit/kunit.py run --kunitconfig /dev/stdin <<EOF
    CONFIG_KUNIT=y
    CONFIG_TEST_SORT=y
    EOF
    
    [11:30:27] Starting KUnit Kernel ...
    [11:30:30] ============================================================
    [11:30:30] ======== [PASSED] lib_sort ========
    [11:30:30] [PASSED] test_sort
    [11:30:30] ============================================================
    [11:30:30] Testing complete. 1 tests run. 0 failed. 0 crashed. 0 skipped.
    [11:30:30] Elapsed time: 37.032s total, 0.001s configuring, 34.090s building, 0.000s running
    
    Note: this is the time it took after a `make mrproper`.
    
    With an incremental rebuild, this looks more like:
    [11:38:58] Elapsed time: 6.444s total, 0.001s configuring, 3.416s building, 0.000s running
    
    Since the test has no dependencies, it can also be run (with some other
    tests) with just:
    $ ./tools/testing/kunit/kunit.py run
    
    Link: https://lkml.kernel.org/r/20210715232441.1380885-1-dlatypov@google.com
    Signed-off-by: Daniel Latypov <dlatypov@google.com>
    Cc: Pravin Shedge <pravin.shedge4linux@gmail.com>
    Cc: Brendan Higgins <brendanhiggins@google.com>
    Cc: David Gow <davidgow@google.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    dlatypov authored and sfrothwell committed Aug 10, 2021
Older