[GIT PULL] non-MM updates for 6.1-rc1
From: Andrew Morton
Date: Tue Oct 11 2022 - 22:04:16 EST
Linus,
this is the bulk of non-MM changes for this cycle. Please merge, thanks.
The following changes since commit b90cb1053190353cc30f0fef0ef1f378ccc063c5:
Linux 6.0-rc3 (2022-08-28 15:05:29 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-nonmm-stable-2022-10-11
for you to fetch changes up to 6a961bffd1c3505c13b4d33bbb8385fe08239cb8:
include/linux/entry-common.h: remove has_signal comment of arch_do_signal_or_restart() prototype (2022-10-11 18:51:11 -0700)
----------------------------------------------------------------
- hfs and hfsplus kmap API modernization from Fabio Francesco
- Valentin Schneider makes crash-kexec work properly when invoked from
an NMI-time panic.
- ntfs bugfixes from Hawkins Jiawei
- Jiebin Sun improves IPC msg scalability by replacing atomic_t's with
percpu counters.
- nilfs2 cleanups from Minghao Chi
- lots of other single patches all over the tree!
----------------------------------------------------------------
Alexey Dobriyan (2):
proc: mark more files as permanent
proc: test how it holds up with mapping'less process
Andrew Morton (1):
fs: uninline inode_maybe_inc_iversion()
Andy Shevchenko (1):
asm-generic: make parameter types consistent in _unaligned_be48()
Arnd Bergmann (1):
treewide: defconfig: address renamed CONFIG_DEBUG_INFO=y
Borislav Petkov (1):
scripts/decodecode: improve faulting line determination
Brian Foster (1):
proc: save LOC in vsyscall test
Fabio M. De Francesco (9):
hfsplus: unmap the page in the "fail_page" label
hfsplus: convert kmap() to kmap_local_page() in bnode.c
hfsplus: convert kmap() to kmap_local_page() in bitmap.c
hfsplus: convert kmap() to kmap_local_page() in btree.c
fs/isofs: replace kmap() with kmap_local_page()
kexec: replace kmap() with kmap_local_page()
hfs: unmap the page in the "fail_page" label
hfs: replace kmap() with kmap_local_page() in bnode.c
hfs: replace kmap() with kmap_local_page() in btree.c
Frank Rowand (1):
mailmap: update Frank Rowand email address
Guilherme G. Piccoli (1):
firmware: google: test spinlock on panic path to avoid lockups
Gustavo A. R. Silva (1):
ocfs2: replace zero-length arrays with DECLARE_FLEX_ARRAY() helper
Hawkins Jiawei (3):
ntfs: fix use-after-free in ntfs_attr_find()
ntfs: fix out-of-bounds read in ntfs_attr_find()
ntfs: check overflow when iterating ATTR_RECORDs
Ira Weiny (1):
checkpatch: add kmap and kmap_atomic to the deprecated list
Jiangshan Yi (2):
fs/ocfs2/suballoc.h: fix spelling typo in comment
init.h: fix spelling typo in comment
Jiebin Sun (2):
percpu: add percpu_counter_add_local and percpu_counter_sub_local
ipc/msg: mitigate the lock contention with percpu counter
Jingyu Wang (1):
ipc: mqueue: remove unnecessary conditionals
Kefeng Wang (1):
kernel: exit: cleanup release_thread()
Li zeming (1):
usr/gen_init_cpio.c: remove unnecessary -1 values from int file
Lukas Bulwahn (2):
proc: make config PROC_CHILDREN depend on PROC_FS
ia64: update config files
Manfred Spraul (1):
ipc/util.c: cleanup and improve sysvipc_find_ipc()
Mickaël Salaün (1):
checkpatch: handle FILE pointer type
Minghao Chi (2):
fs/qnx6: delete unnecessary checks before brelse()
nilfs2: delete unnecessary checks before brelse()
Neel Natu (1):
lib/cmdline: avoid page fault in next_arg
Niklas Söderlund (1):
checkpatch: warn for non-standard fixes tag style
Petr Vorel (1):
kernel/utsname_sysctl.c: print kernel arch
Ren Zhijie (1):
init/Kconfig: fix unmet direct dependencies
Ryusuke Konishi (1):
nilfs2: replace WARN_ONs by nilfs_error for checkpoint acquisition failure
Sergei Trofimovich (1):
ia64: fix clock_getres(CLOCK_MONOTONIC) to report ITC frequency
Tiezhu Yang (1):
include/linux/entry-common.h: remove has_signal comment of arch_do_signal_or_restart() prototype
Uros Bizjak (8):
llist: use try_cmpxchg in llist_add_batch and llist_del_first
epoll: use try_cmpxchg in list_add_tail_lockless
buffer: use try_cmpxchg in discard_buffer
aio: use atomic_try_cmpxchg in __get_reqs_available
iversion: use atomic64_try_cmpxchg)
bitops: use try_cmpxchg in set_mask_bits and bit_clear_unless
task_work: use try_cmpxchg in task_work_add, task_work_cancel_match and task_work_run
smpboot: use atomic_try_cmpxchg in cpu_wait_death and cpu_report_death
Valentin Schneider (2):
kexec: turn all kexec_mutex acquisitions into trylocks
panic, kexec: make __crash_kexec() NMI safe
Wolfram Sang (6):
alpha: move from strlcpy with unused retval to strscpy
ia64: move from strlcpy with unused retval to strscpy
ocfs2: move from strlcpy with unused retval to strscpy
reiserfs: move from strlcpy with unused retval to strscpy
init: move from strlcpy with unused retval to strscpy
lib: move from strlcpy with unused retval to strscpy
Xu Panda (1):
fork: remove duplicate included header files
Yang Yingliang (3):
fail_function: switch to memdup_user_nul() helper
fail_function: refactor code of checking return value of register_kprobe()
fail_function: fix wrong use of fei_attr_remove()
Zhou jie (1):
init/main.c: remove unnecessary (void*) conversions
wangjianli (1):
fs/ocfs2: fix repeated words in comments
wuchi (4):
initramfs: mark my_inptr as __initdata
kernel/profile.c: simplify duplicated code in profile_setup()
latencytop: use the last element of latency_record of system
relay: use kvcalloc to alloc page array in relay_alloc_page_array
xu xin (1):
ia64: mca: use strscpy() is more robust and safer
ye xingchen (1):
nilfs2: remove the unneeded result variable
.mailmap | 1 +
Documentation/admin-guide/sysctl/kernel.rst | 5 +
Documentation/dev-tools/checkpatch.rst | 7 +
arch/alpha/configs/defconfig | 2 +-
arch/alpha/include/asm/processor.h | 2 -
arch/alpha/kernel/process.c | 5 -
arch/alpha/kernel/setup.c | 4 +-
arch/arc/configs/tb10x_defconfig | 2 +-
arch/arc/include/asm/processor.h | 3 -
arch/arm/include/asm/processor.h | 3 -
arch/arm/kernel/process.c | 4 -
arch/arm64/include/asm/processor.h | 3 -
arch/arm64/kernel/process.c | 4 -
arch/csky/include/asm/processor.h | 5 -
arch/hexagon/include/asm/processor.h | 4 -
arch/hexagon/kernel/process.c | 7 -
arch/ia64/configs/bigsur_defconfig | 2 -
arch/ia64/configs/generic_defconfig | 2 -
arch/ia64/configs/gensparse_defconfig | 3 -
arch/ia64/configs/tiger_defconfig | 2 -
arch/ia64/configs/zx1_defconfig | 1 -
arch/ia64/include/asm/processor.h | 7 -
arch/ia64/kernel/mca.c | 2 +-
arch/ia64/kernel/setup.c | 2 +-
arch/ia64/kernel/sys_ia64.c | 26 ++
arch/ia64/kernel/syscalls/syscall.tbl | 2 +-
arch/loongarch/include/asm/processor.h | 3 -
arch/m68k/include/asm/processor.h | 5 -
arch/microblaze/configs/mmu_defconfig | 2 +-
arch/microblaze/include/asm/processor.h | 5 -
arch/mips/configs/bcm47xx_defconfig | 2 +-
arch/mips/configs/cavium_octeon_defconfig | 2 +-
arch/mips/configs/ci20_defconfig | 2 +-
arch/mips/configs/cu1000-neo_defconfig | 2 +-
arch/mips/configs/cu1830-neo_defconfig | 2 +-
arch/mips/configs/generic_defconfig | 2 +-
arch/mips/configs/omega2p_defconfig | 2 +-
arch/mips/configs/qi_lb60_defconfig | 2 +-
arch/mips/configs/vocore2_defconfig | 2 +-
arch/mips/include/asm/processor.h | 3 -
arch/nios2/configs/10m50_defconfig | 2 +-
arch/nios2/configs/3c120_defconfig | 2 +-
arch/nios2/include/asm/processor.h | 5 -
arch/openrisc/include/asm/processor.h | 1 -
arch/openrisc/kernel/process.c | 4 -
arch/parisc/include/asm/processor.h | 3 -
arch/parisc/kernel/process.c | 4 -
arch/powerpc/include/asm/processor.h | 1 -
arch/powerpc/kernel/process.c | 5 -
arch/riscv/include/asm/processor.h | 5 -
arch/s390/include/asm/processor.h | 3 -
arch/sh/configs/apsh4a3a_defconfig | 2 +-
arch/sh/configs/apsh4ad0a_defconfig | 2 +-
arch/sh/configs/edosk7760_defconfig | 2 +-
arch/sh/configs/magicpanelr2_defconfig | 2 +-
arch/sh/configs/polaris_defconfig | 2 +-
arch/sh/configs/r7780mp_defconfig | 2 +-
arch/sh/configs/r7785rp_defconfig | 2 +-
arch/sh/configs/rsk7203_defconfig | 2 +-
arch/sh/configs/sdk7780_defconfig | 2 +-
arch/sh/configs/se7712_defconfig | 2 +-
arch/sh/configs/se7721_defconfig | 2 +-
arch/sh/configs/sh2007_defconfig | 2 +-
arch/sh/configs/sh7757lcr_defconfig | 2 +-
arch/sh/configs/sh7785lcr_32bit_defconfig | 2 +-
arch/sh/configs/urquell_defconfig | 2 +-
arch/sh/include/asm/processor_32.h | 3 -
arch/sh/kernel/process_32.c | 5 -
arch/sparc/include/asm/processor_32.h | 3 -
arch/sparc/include/asm/processor_64.h | 3 -
arch/um/configs/i386_defconfig | 2 +-
arch/um/configs/x86_64_defconfig | 2 +-
arch/um/include/asm/processor-generic.h | 4 -
arch/x86/include/asm/processor.h | 3 -
arch/xtensa/configs/audio_kc705_defconfig | 2 +-
arch/xtensa/configs/cadence_csp_defconfig | 2 +-
arch/xtensa/configs/generic_kc705_defconfig | 2 +-
arch/xtensa/configs/nommu_kc705_defconfig | 2 +-
arch/xtensa/configs/smp_lx200_defconfig | 2 +-
arch/xtensa/configs/virt_defconfig | 2 +-
arch/xtensa/configs/xip_kc705_defconfig | 2 +-
arch/xtensa/include/asm/processor.h | 3 -
drivers/firmware/google/gsmi.c | 9 +
fs/aio.c | 9 +-
fs/buffer.c | 14 +-
fs/eventpoll.c | 2 +-
fs/hfs/bnode.c | 32 +--
fs/hfs/btree.c | 29 +-
fs/hfsplus/bitmap.c | 20 +-
fs/hfsplus/bnode.c | 105 ++++----
fs/hfsplus/btree.c | 27 +-
fs/isofs/compress.c | 20 +-
fs/libfs.c | 46 ++++
fs/nilfs2/btree.c | 6 +-
fs/nilfs2/segment.c | 18 +-
fs/ntfs/attrib.c | 28 +-
fs/ntfs/inode.c | 7 +
fs/ocfs2/ocfs2_fs.h | 8 +-
fs/ocfs2/refcounttree.c | 2 +-
fs/ocfs2/stackglue.c | 4 +-
fs/ocfs2/suballoc.h | 2 +-
fs/ocfs2/super.c | 2 +-
fs/proc/Kconfig | 1 +
fs/proc/devices.c | 6 +-
fs/proc/internal.h | 5 +
fs/proc/loadavg.c | 6 +-
fs/proc/meminfo.c | 5 +-
fs/proc/page.c | 3 +
fs/proc/softirqs.c | 6 +-
fs/proc/uptime.c | 6 +-
fs/proc/version.c | 6 +-
fs/qnx6/inode.c | 6 +-
fs/reiserfs/procfs.c | 4 +-
include/asm-generic/unaligned.h | 2 +-
include/linux/bitops.h | 11 +-
include/linux/entry-common.h | 1 -
include/linux/init.h | 2 +-
include/linux/ipc_namespace.h | 5 +-
include/linux/iversion.h | 72 +----
include/linux/kexec.h | 2 +-
include/linux/percpu_counter.h | 32 +++
include/linux/sched/task.h | 3 +
init/Kconfig | 1 +
init/do_mounts.c | 4 +-
init/initramfs.c | 2 +-
init/main.c | 8 +-
ipc/mqueue.c | 3 +-
ipc/msg.c | 48 +++-
ipc/namespace.c | 5 +-
ipc/util.c | 53 ++--
ipc/util.h | 4 +-
kernel/exit.c | 4 +
kernel/fail_function.c | 26 +-
kernel/fork.c | 1 -
kernel/kexec.c | 11 +-
kernel/kexec_core.c | 36 +--
kernel/kexec_file.c | 4 +-
kernel/kexec_internal.h | 15 +-
kernel/ksysfs.c | 7 +-
kernel/latencytop.c | 4 +-
kernel/profile.c | 32 +--
kernel/relay.c | 5 +-
kernel/smpboot.c | 15 +-
kernel/task_work.c | 16 +-
kernel/utsname_sysctl.c | 7 +
lib/cmdline.c | 2 +-
lib/earlycpio.c | 2 +-
lib/llist.c | 12 +-
scripts/checkpatch.pl | 52 +++-
scripts/decodecode | 120 +++++++--
tools/testing/selftests/proc/.gitignore | 1 +
tools/testing/selftests/proc/Makefile | 1 +
tools/testing/selftests/proc/proc-empty-vm.c | 386 +++++++++++++++++++++++++++
tools/testing/selftests/proc/proc-pid-vm.c | 56 ++--
usr/gen_init_cpio.c | 2 +-
155 files changed, 1154 insertions(+), 618 deletions(-)
create mode 100644 tools/testing/selftests/proc/proc-empty-vm.c