Skip to content
Permalink
CGEL/tools-fix…
Switch branches/tags

Commits on Aug 20, 2021

  1. tools: fix warning comparing pointer to 0

    Fix the following coccicheck warning:
    ./tools/testing/selftests/bpf/progs/profiler.inc.h:364:18-22:WARNING
    comparing pointer to 0
    ./tools/testing/selftests/bpf/progs/profiler.inc.h:537:23-27:WARNING
    comparing pointer to 0
    ./tools/testing/selftests/bpf/progs/profiler.inc.h:544:21-25:WARNING
    comparing pointer to 0
    ./tools/testing/selftests/bpf/progs/profiler.inc.h:770:13-17:WARNING
    comparing pointer to 0
    
    Reported-by: Zeal Robot <zealci@zte.com.cn>
    Signed-off-by: jing yangyang <jing.yangyang@zte.com.cn>
    jing yangyang authored and intel-lab-lkp committed Aug 20, 2021

Commits on Aug 19, 2021

  1. Add linux-next specific files for 20210819

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

    sfrothwell committed Aug 19, 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 19, 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 19, 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 19, 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 19, 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 19, 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 19, 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 19, 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 19, 2021
  11. mm: move kvmalloc-related functions to slab.h

    Not all files in the kernel should include mm.h.  Migrating callers from
    kmalloc to kvmalloc is easier if the kvmalloc functions are in slab.h.
    
    [akpm@linux-foundation.org: move the new kvrealloc() also]
    Link: https://lkml.kernel.org/r/20210622215757.3525604-1-willy@infradead.org
    Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
    Acked-by: Pekka Enberg <penberg@kernel.org>
    Cc: Christoph Lameter <cl@linux.com>
    Cc: David Rientjes <rientjes@google.com>
    Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
    Cc: Vlastimil Babka <vbabka@suse.cz>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Matthew Wilcox (Oracle) authored and sfrothwell committed Aug 19, 2021
  12. 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 19, 2021
  13. Merge remote-tracking branch 'folio/for-next'

    # Conflicts:
    #	mm/filemap.c
    #	mm/rmap.c
    #	mm/util.c
    sfrothwell committed Aug 19, 2021
Older