This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository linux.
from cc3ee4ba57b7 Merge tag 'x86-urgent-2025-12-06' of git://git.kernel.org/ [...] new 02e7769e38c8 tracing: Fix enabling of tracing on file release new 47ef834209e5 tracing: Fix fixed array of synthetic event new 9c3f3b8fea2d tracing: Fix typo in fpgraph.c new 2ec7345c2d58 tracing: Fix typo in fprobe.c new 1edb820ae977 tracing: Fix multiple typos in ring_buffer.c new 81354f63359f tracing: Fix typo in ring_buffer_benchmark.c new 8d4cdbd45cd4 tracing: Fix multiple typos in trace.c new d4290963d5af tracing: Fix multiple typos in trace_events.c new 86f320904e2f tracing: Fix typo in trace_events_filter.c new c29e75532e98 tracing: Fix typo in trace_events_hist.c new 0166d3e31aaf tracing: Fix typo in trace_events_trigger.c new 6ce5725d7373 tracing: Fix multiple typos in trace_events_user.c new fa3f733d97e5 tracing: Fix multiple typos in trace_osnoise.c new 0f17df72a714 tracing: Fix typo in trace_probe.c new c5108c58b991 tracing: Fix typo in trace_seq.c new 09670b8c38b3 Merge tag 'trace-v6.19-2' of git://git.kernel.org/pub/scm/ [...] new 969493d7d6f9 samples: fix coding style issues in Kconfig new fc387a0704cc checkpatch: detect unhandled placeholders in cover letters new 55b453ed53d2 checkpatch: document new check PLACEHOLDER_USE new 41a5e8777093 ocfs2: add extra flags check in ocfs2_ioctl_move_extents() new 8a7d58845fae ocfs2: relax BUG() to ocfs2_error() in __ocfs2_move_extent() new 6a2e57ad227a kexec_core: remove superfluous page offset handling in seg [...] new 08bd4c46d5e6 scs: fix a wrong parameter in __scs_magic new b7d06a2ae10a mailmap: update name and email addresses new 0d63fc256ad1 CREDITS: update Martin's information new 02582ac3b7d2 MAINTAINERS: apply name and email address changes for Martin new cd4eaccc00d7 treewide: drop outdated compiler version remarks in Kconfi [...] new 2f26f58df041 ocfs2: annotate flexible array members with __counted_by_le() new 1b34743c31fe ocfs2: add extra consistency check to ocfs2_dx_dir_lookup_rec() new 05d6f1cc2dc2 compiler.h: remove ARCH_SEL() new 9544f9e6947f hung_task: panic when there are more than N hung tasks at [...] new 57f3d8969114 lib/xz: remove dead IA-64 (Itanium) support code new 01ef0296d2eb .mailmap: add entry for WangYuli new adc15829fb73 crash: let architecture decide crash memory export to iome [...] new ed4bbe7e8fa1 taint: add reminder about updating docs and scripts new 37ade54f386c taint/module: remove unnecessary taint_flag.module field new aa5b6a72ccd9 ocfs2: add directory size check to ocfs2_find_dir_space_id() new 7229d74e5e8c ipc: create_ipc_ns: drop mqueue mount on sysctl setup failure new 032a730268a3 init/main.c: wrap long kernel cmdline when printing to logs new d99dc586ca7c uaccess: decouple INLINE_COPY_FROM_USER and CONFIG_RUST new 390ac56cf0f6 ocfs2: add boundary check to ocfs2_check_dir_entry() new c9dff86eb78a ocfs2: use correct endian in ocfs2_dinode_has_extents new 6e89373cec09 ocfs2: convert to host endian in ocfs2_validate_inode_block new a2b1c419ff72 ocfs2: add inline inode consistency check to ocfs2_validat [...] new 6c2e6e2c1af1 dynamic_debug: add support for print stack new a0b8c6af29a4 lib/xxhash: remove more unused xxh functions new f9925019f49e mailmap: add entry for Yu-Chun Lin new c25d24d0f4c6 release_task: kill unnecessary rcu_read_lock() around dec_ [...] new ded7d97442f0 mailmap: add entry for Hao Ge new 3e4b89e97036 nilfs2: replace vmalloc + copy_from_user with vmemdup_user new d79a3aeb747c panic: sys_info: capture si_bits_global before iterating over it new 760fc597c33d panic: sys_info: align constant definition names with parameters new d13adc6147f5 panic: sys_info:replace struct sys_info_name with plain ar [...] new eb72c4667f45 panic: sys_info: rewrite a fix for a compilation error (`m [...] new f791dcc842cb panic: sys_info: deduplicate local variable 'table; assignments new 9125163273f8 panic: sys_info: factor out read and write handlers new e1c70505ee81 ocfs2: add extra consistency checks for chain allocator dinodes new 93ce0ff117b0 ocfs2: validate cl_bpc in allocator inodes to prevent divi [...] new 7f37d88f5cb3 lib/Kconfig.debug: cleanup CONFIG_DEBUG_SECTION_MISMATCH h [...] new 464c7ea5c3ff checkpatch: add IDR to the deprecated list new bd97c9764191 util_macros.h: fix kernel-doc for u64_to_user_ptr() new af9b65d6864a kernel/hung_task: unexport sysctl_hung_task_timeout_secs new 5944f875ac27 lib: mul_u64_u64_div_u64(): rename parameter 'c' to 'd' new 08092babd362 lib: mul_u64_u64_div_u64(): combine overflow and divide by [...] new d91f891d5885 lib: mul_u64_u64_div_u64(): simplify check for a 64bit product new 6480241f31f5 lib: add mul_u64_add_u64_div_u64() and mul_u64_u64_div_u64 [...] new 500db21917e8 lib: add tests for mul_u64_u64_div_u64_roundup() new f0bff2eb0468 lib: test_mul_u64_u64_div_u64(): test both generic and arc [...] new 630f96a687de lib: mul_u64_u64_div_u64(): optimise multiply on 32bit x86 new d10bb374c41e lib: mul_u64_u64_div_u64(): optimise the divide code new 1d1ef8c1fb5e lib: test_mul_u64_u64_div_u64(): test the 32bit code on 64bit new c9dddd981600 MAINTAINERS: add Pratyush as a reviewer for KHO new caa71919a622 scripts/gdb/radix-tree: add lx-radix-tree-command new 581ee79a2547 scripts/gdb/symbols: make BPF debug info available to GDB new f3fb126fdc9e math.h: amend abs() kernel-doc and add a note about signed [...] new 14954cd190e8 fs/proc/page: remove unused KPMBITS new 1ab980e90ce3 MAINTAINERS: update nilfs2 entry new 242b872239f6 include/linux/once_lite.h: fix judgment in WARN_ONCE with clang new b50144900a56 MAINTAINERS: remove Gustavo from sync framework new 9ab38c521663 Revert "lib/plist.c: enforce memory ordering in plist_check_list" new 5f264c00b669 docs: panic: correct some sys_ifo names in sysctl doc new 8b2b9b4f6f4f hung_task: add hung_task_sys_info sysctl to dump sys info [...] new a9af76a78760 watchdog: add sys_info sysctls to dump sys info on system lockup new 03ef32d665e8 sys_info: add a default kernel sys_info mask new f1e2ca801c54 lib/base64: add support for multiple variants new c4eb7ad32eab lib/base64: optimize base64_decode() with reverse lookup tables new 9c7d3cf94d33 lib/base64: rework encode/decode for speed and stricter va [...] new 8b365c4f5be9 lib: add KUnit tests for base64 encoding/decoding new 7794510e2021 fscrypt: replace local base64url helpers with lib/base64 new b1b72ac25f89 ceph: replace local base64 helpers with lib/base64 new fdd76c8d6327 Documentation/ABI: add kexec and kdump sysfs interface new aa0145563ce2 crash: export crashkernel CMA reservation to userspace new 9031b852c97f uaccess: gate _copy_[to|from]_user on !INLINE_COPY_FROM_USER new 2fe869ecbd06 MAINTAINERS: add Petr as a reviewer of hung task detector new ff713698bad2 lib: ratelimit: fix spelling mistake 'seperately' new 4022ba20050e ocfs2: replace deprecated strcpy in ocfs2_create_xattr_block new 13db54aad744 ocfs2: replace deprecated strcpy with strscpy new 58b6fcd2ab34 ocfs2: mark inode bad upon validation failure during read new bc947af67759 Merge branch 'mm-hotfixes-stable' into mm-nonmm-stable in [...] new c2d2dad24503 rbtree: inline rb_first() new 94984bfed58c rbtree: inline rb_last() new 262ef8e55b7c fork: stop ignoring NUMA while handling cached thread stacks new e6fbd1759c9e selftests: complete kselftest include centralization new 03d3963464a4 kho: make debugfs interface optional new 70f9133096c8 kho: drop notifiers new 36f8f7ef7fd2 kho: add interfaces to unpreserve folios, page ranges, and [...] new f5bfd4793a93 memblock: unpreserve memory in case of error new ce405ed51020 test_kho: unpreserve memory in case of error new 99cd2ffac697 kho: don't unpreserve memory during abort new 48a1b2321d76 liveupdate: kho: move to kernel/liveupdate new c332ebd9c0c4 MAINTAINERS: update KHO maintainers new 8db839caeed9 liveupdate: kho: use %pe format specifier for error pointe [...] new 077a4851b002 kho: fix misleading log message in kho_populate() new 8c3819f627b7 kho: convert __kho_abort() to return void new 4c205677af27 kho: introduce high-level memory allocation API new 85de0090bd82 kho: preserve FDT folio only once during initialization new 53f8f064eba3 kho: verify deserialization status and fix FDT alignment access new e268689a5282 kho: always expose output FDT in debugfs new 71960fe1344c kho: simplify serialization and remove __kho_abort new efa3a9775ac2 kho: remove global preserved_mem_map and store state in FDT new 9a4301f715c8 kho: remove abort functionality and support state refresh new 8e068a286aef kho: update FDT dynamically for subtree addition/removal new d7255959b69a kho: allow kexec load before KHO finalization new de51999e687c kho: allow memory preservation state updates after finalization new 7bd3643f94a3 kho: add Kconfig option to enable KHO by default new 9e2fd062fa17 liveupdate: luo_core: Live Update Orchestrator new 1aece821004f liveupdate: luo_core: integrate with KHO new db8bed8082dc kexec: call liveupdate_reboot() before kexec new 0153094d03df liveupdate: luo_session: add sessions support new 81cd25d263a1 liveupdate: luo_core: add user interface new 7c722a7f44e0 liveupdate: luo_file: implement file systems callbacks new 16cec0d26521 liveupdate: luo_session: add ioctls for file preservation new 906a33062455 docs: add luo documentation new 7a5afa7ea823 MAINTAINERS: add liveupdate entry new 6ff1610ced56 mm: shmem: use SHMEM_F_* flags instead of VM_* flags new e165e2a2577b mm: shmem: allow freezing inode mapping new ed6f45f81bf9 mm: shmem: export some functions to internal.h new 8def18633e8d liveupdate: luo_file: add private argument to store runtime state new b3749f174d68 mm: memfd_luo: allow preserving memfd new 15fc11bb2cb6 docs: add documentation for memfd preservation via LUO new 80bab43f6f23 selftests/liveupdate: add userspace API selftests new a003bdb9ec4e selftests/liveupdate: add simple kexec-based selftest for LUO new 724bf8c5595a selftests/liveupdate: add kexec test for multiple and empt [...] new b15515155af7 kho: free chunks using free_page() instead of kfree() new 11047466eff2 test_kho: always print restore status new cf4340bdd967 kexec: move sysfs entries to /sys/kernel/kexec new 5c991b6d9b30 Documentation/ABI: mark old kexec sysfs deprecated new fb5c3644278c Documentation/ABI: new kexec and kdump sysfs interface new 40cd0e8dd283 KHO: fix boot failure due to kmemleak access to non-PRESENT pages new af06a4047479 init: replace simple_strtoul with kstrtoul to improve lpj_setup new c39eab75a57d MAINTAINERS: TPM DEVICE DRIVER: update the W-tag new 4bc84cd539df kho: kho_restore_vmalloc: fix initialization of pages array new 7b71205ae112 kho: fix restoring of contiguous ranges of order-0 pages new 3fa805c37dd4 vmcoreinfo: track and log recoverable hardware errors new 6fb3acdebf65 Reinstate "resource: avoid unnecessary lookups in find_nex [...] new aa514a297a0c calibrate: update header inclusion new 509d3f458476 Merge tag 'mm-nonmm-stable-2025-12-06-11-14' of git://git. [...] new c06c303832ec ocfs2: fix xattr array entry __counted_by error
The 158 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: .mailmap | 9 +- CREDITS | 9 +- .../ABI/obsolete/sysfs-kernel-kexec-kdump | 71 ++ Documentation/ABI/testing/sysfs-kernel-kexec-kdump | 61 ++ Documentation/admin-guide/dynamic-debug-howto.rst | 5 +- Documentation/admin-guide/kernel-parameters.txt | 20 +- Documentation/admin-guide/sysctl/kernel.rst | 32 +- Documentation/core-api/index.rst | 1 + Documentation/core-api/kho/concepts.rst | 2 +- Documentation/core-api/liveupdate.rst | 61 ++ Documentation/dev-tools/checkpatch.rst | 10 + Documentation/driver-api/hw-recoverable-errors.rst | 60 ++ Documentation/driver-api/index.rst | 1 + Documentation/mm/index.rst | 1 + Documentation/mm/memfd_preservation.rst | 23 + Documentation/userspace-api/index.rst | 1 + Documentation/userspace-api/ioctl/ioctl-number.rst | 2 + Documentation/userspace-api/liveupdate.rst | 20 + MAINTAINERS | 34 +- arch/Kconfig | 19 +- arch/arm/Kconfig | 2 - arch/arm/configs/aspeed_g5_defconfig | 2 +- arch/powerpc/include/asm/crash_reserve.h | 8 + arch/x86/include/asm/div64.h | 39 +- arch/x86/kernel/cpu/mce/core.c | 4 + drivers/acpi/apei/ghes.c | 36 + drivers/nvme/common/auth.c | 4 +- drivers/pci/pcie/aer.c | 2 + fs/ceph/crypto.c | 60 +- fs/ceph/crypto.h | 6 +- fs/ceph/dir.c | 5 +- fs/ceph/inode.c | 2 +- fs/crypto/fname.c | 89 +-- fs/nilfs2/ioctl.c | 35 +- fs/ocfs2/dir.c | 42 +- fs/ocfs2/inode.c | 49 +- fs/ocfs2/move_extents.c | 14 +- fs/ocfs2/ocfs2_fs.h | 22 +- fs/ocfs2/refcounttree.c | 5 +- fs/ocfs2/xattr.c | 4 +- fs/proc/page.c | 1 - include/linux/base64.h | 10 +- include/linux/compiler.h | 6 - include/linux/crash_reserve.h | 6 + include/linux/dynamic_debug.h | 17 +- include/linux/kexec_handover.h | 57 +- include/linux/kho/abi/luo.h | 166 ++++ include/linux/kho/abi/memfd.h | 77 ++ include/linux/liveupdate.h | 138 ++++ include/linux/math.h | 13 +- include/linux/math64.h | 59 +- include/linux/once_lite.h | 2 +- include/linux/panic.h | 1 - include/linux/rbtree.h | 32 +- include/linux/shmem_fs.h | 23 + include/linux/sys_info.h | 2 +- include/linux/trace_events.h | 1 + include/linux/uaccess.h | 6 +- include/linux/util_macros.h | 4 +- include/linux/vmcore_info.h | 8 + include/linux/xxhash.h | 46 +- include/uapi/linux/liveupdate.h | 216 +++++ include/uapi/linux/vmcore.h | 9 + init/Kconfig | 20 + init/calibrate.c | 13 +- init/main.c | 97 ++- ipc/namespace.c | 9 +- kernel/Kconfig.kexec | 24 - kernel/Makefile | 3 +- kernel/configs/debug.config | 2 +- kernel/crash_reserve.c | 3 + kernel/exit.c | 4 +- kernel/fork.c | 63 +- kernel/hung_task.c | 56 +- kernel/kexec_core.c | 161 +++- kernel/kexec_handover_internal.h | 20 - kernel/ksysfs.c | 68 +- kernel/liveupdate/Kconfig | 75 ++ kernel/liveupdate/Makefile | 12 + kernel/{ => liveupdate}/kexec_handover.c | 716 ++++++++--------- kernel/{ => liveupdate}/kexec_handover_debug.c | 0 kernel/liveupdate/kexec_handover_debugfs.c | 221 +++++ kernel/liveupdate/kexec_handover_internal.h | 55 ++ kernel/liveupdate/luo_core.c | 450 +++++++++++ kernel/liveupdate/luo_file.c | 889 +++++++++++++++++++++ kernel/liveupdate/luo_internal.h | 110 +++ kernel/liveupdate/luo_session.c | 646 +++++++++++++++ kernel/module/main.c | 2 +- kernel/panic.c | 52 +- kernel/resource.c | 10 +- kernel/scs.c | 2 +- kernel/trace/fgraph.c | 2 +- kernel/trace/fprobe.c | 2 +- kernel/trace/ring_buffer.c | 6 +- kernel/trace/ring_buffer_benchmark.c | 2 +- kernel/trace/trace.c | 16 +- kernel/trace/trace_events.c | 8 +- kernel/trace/trace_events_filter.c | 2 +- kernel/trace/trace_events_hist.c | 2 +- kernel/trace/trace_events_synth.c | 1 - kernel/trace/trace_events_trigger.c | 2 +- kernel/trace/trace_events_user.c | 6 +- kernel/trace/trace_osnoise.c | 12 +- kernel/trace/trace_probe.c | 2 +- kernel/trace/trace_seq.c | 2 +- kernel/vmcore_info.c | 17 + kernel/watchdog.c | 44 +- lib/Kconfig.debug | 63 +- lib/base64.c | 189 +++-- lib/dynamic_debug.c | 1 + lib/math/div64.c | 185 +++-- lib/math/test_mul_u64_u64_div_u64.c | 191 +++-- lib/plist.c | 4 +- lib/ratelimit.c | 2 +- lib/rbtree.c | 29 - lib/sys_info.c | 169 ++-- lib/test_kho.c | 140 ++-- lib/tests/Makefile | 1 + lib/tests/base64_kunit.c | 294 +++++++ lib/usercopy.c | 4 +- lib/xxhash.c | 29 - lib/xz/xz_dec_bcj.c | 95 --- lib/xz/xz_private.h | 4 - mm/Makefile | 1 + mm/internal.h | 6 + mm/memblock.c | 93 ++- mm/memfd_luo.c | 516 ++++++++++++ mm/shmem.c | 49 +- rust/helpers/rbtree.c | 10 + rust/helpers/uaccess.c | 12 + samples/Kconfig | 22 +- samples/vfs/Makefile | 1 + scripts/checkpatch.pl | 11 + scripts/gdb/linux/bpf.py | 253 ++++++ scripts/gdb/linux/constants.py.in | 3 + scripts/gdb/linux/radixtree.py | 139 +++- scripts/gdb/linux/symbols.py | 105 ++- tools/testing/selftests/Makefile | 1 + tools/testing/selftests/acct/acct_syscall.c | 2 +- tools/testing/selftests/alsa/conf.c | 2 +- tools/testing/selftests/alsa/mixer-test.c | 2 +- tools/testing/selftests/alsa/pcm-test.c | 2 +- tools/testing/selftests/alsa/test-pcmtest-driver.c | 2 +- tools/testing/selftests/alsa/utimer-test.c | 2 +- tools/testing/selftests/arm64/abi/hwcap.c | 2 +- tools/testing/selftests/arm64/abi/ptrace.c | 2 +- tools/testing/selftests/arm64/abi/syscall-abi.c | 2 +- tools/testing/selftests/arm64/fp/fp-ptrace.c | 2 +- tools/testing/selftests/arm64/fp/fp-stress.c | 2 +- tools/testing/selftests/arm64/fp/sve-probe-vls.c | 2 +- tools/testing/selftests/arm64/fp/sve-ptrace.c | 2 +- tools/testing/selftests/arm64/fp/vec-syscfg.c | 2 +- tools/testing/selftests/arm64/fp/za-ptrace.c | 2 +- tools/testing/selftests/arm64/fp/zt-ptrace.c | 2 +- tools/testing/selftests/arm64/gcs/gcs-stress.c | 2 +- tools/testing/selftests/arm64/pauth/pac.c | 2 +- tools/testing/selftests/arm64/tags/tags_test.c | 2 +- tools/testing/selftests/bpf/xskxceiver.c | 2 +- .../selftests/breakpoints/breakpoint_test.c | 2 +- .../selftests/breakpoints/breakpoint_test_arm64.c | 2 +- .../breakpoints/step_after_suspend_test.c | 2 +- tools/testing/selftests/cachestat/test_cachestat.c | 2 +- tools/testing/selftests/capabilities/test_execve.c | 2 +- .../testing/selftests/capabilities/validate_cap.c | 2 +- tools/testing/selftests/cgroup/test_core.c | 2 +- tools/testing/selftests/cgroup/test_cpu.c | 2 +- tools/testing/selftests/cgroup/test_cpuset.c | 2 +- tools/testing/selftests/cgroup/test_freezer.c | 2 +- .../testing/selftests/cgroup/test_hugetlb_memcg.c | 2 +- tools/testing/selftests/cgroup/test_kill.c | 2 +- tools/testing/selftests/cgroup/test_kmem.c | 2 +- tools/testing/selftests/cgroup/test_memcontrol.c | 2 +- tools/testing/selftests/cgroup/test_pids.c | 2 +- tools/testing/selftests/cgroup/test_zswap.c | 2 +- tools/testing/selftests/clone3/clone3.c | 2 +- .../clone3/clone3_cap_checkpoint_restore.c | 2 +- .../selftests/clone3/clone3_clear_sighand.c | 2 +- tools/testing/selftests/clone3/clone3_selftests.h | 2 +- tools/testing/selftests/clone3/clone3_set_tid.c | 2 +- tools/testing/selftests/connector/proc_filter.c | 2 +- tools/testing/selftests/core/close_range_test.c | 2 +- tools/testing/selftests/core/unshare_test.c | 2 +- tools/testing/selftests/coredump/stackdump_test.c | 2 +- tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c | 2 +- tools/testing/selftests/drivers/dma-buf/udmabuf.c | 2 +- tools/testing/selftests/drivers/net/gro.c | 2 +- tools/testing/selftests/drivers/net/hw/toeplitz.c | 2 +- tools/testing/selftests/drivers/ntsync/ntsync.c | 2 +- .../drivers/s390x/uvdevice/test_uvdevice.c | 2 +- tools/testing/selftests/exec/check-exec.c | 2 +- tools/testing/selftests/exec/execveat.c | 2 +- tools/testing/selftests/exec/load_address.c | 2 +- tools/testing/selftests/exec/non-regular.c | 2 +- tools/testing/selftests/exec/null-argv.c | 2 +- tools/testing/selftests/exec/recursion-depth.c | 2 +- tools/testing/selftests/fchmodat2/fchmodat2_test.c | 2 +- tools/testing/selftests/filelock/ofdlocks.c | 2 +- .../selftests/filesystems/anon_inode_test.c | 2 +- .../selftests/filesystems/binderfs/binderfs_test.c | 2 +- tools/testing/selftests/filesystems/devpts_pts.c | 2 +- .../filesystems/epoll/epoll_wakeup_test.c | 2 +- .../selftests/filesystems/eventfd/eventfd_test.c | 2 +- tools/testing/selftests/filesystems/fclog.c | 2 +- .../testing/selftests/filesystems/file_stressor.c | 2 +- .../selftests/filesystems/fuse/fusectl_test.c | 2 +- tools/testing/selftests/filesystems/kernfs_test.c | 2 +- .../filesystems/mount-notify/mount-notify_test.c | 2 +- .../mount-notify/mount-notify_test_ns.c | 2 +- .../selftests/filesystems/nsfs/iterate_mntns.c | 2 +- .../selftests/filesystems/overlayfs/dev_in_maps.c | 2 +- .../filesystems/overlayfs/set_layers_via_fds.c | 2 +- .../filesystems/statmount/listmount_test.c | 2 +- .../filesystems/statmount/statmount_test.c | 2 +- .../filesystems/statmount/statmount_test_ns.c | 2 +- tools/testing/selftests/filesystems/utils.c | 2 +- .../selftests/futex/functional/futex_numa_mpol.c | 2 +- .../selftests/futex/functional/futex_priv_hash.c | 2 +- .../selftests/futex/functional/futex_requeue.c | 2 +- .../selftests/futex/functional/futex_requeue_pi.c | 2 +- .../functional/futex_requeue_pi_mismatched_ops.c | 2 +- .../functional/futex_requeue_pi_signal_restart.c | 2 +- .../selftests/futex/functional/futex_wait.c | 2 +- .../functional/futex_wait_private_mapped_file.c | 2 +- .../futex/functional/futex_wait_timeout.c | 2 +- .../functional/futex_wait_uninitialized_heap.c | 2 +- .../futex/functional/futex_wait_wouldblock.c | 2 +- .../selftests/futex/functional/futex_waitv.c | 2 +- tools/testing/selftests/hid/hid_common.h | 2 +- tools/testing/selftests/intel_pstate/aperf.c | 2 +- tools/testing/selftests/iommu/iommufd_utils.h | 2 +- tools/testing/selftests/ipc/msgque.c | 2 +- tools/testing/selftests/ir/ir_loopback.c | 2 +- tools/testing/selftests/kcmp/kcmp_test.c | 2 +- tools/testing/selftests/kho/vmtest.sh | 1 + tools/testing/selftests/kselftest_harness.h | 2 +- .../selftests/kselftest_harness/harness-selftest.c | 2 +- tools/testing/selftests/landlock/audit.h | 2 +- tools/testing/selftests/landlock/common.h | 2 +- tools/testing/selftests/lib.mk | 3 + tools/testing/selftests/liveupdate/.gitignore | 9 + tools/testing/selftests/liveupdate/Makefile | 34 + tools/testing/selftests/liveupdate/config | 11 + tools/testing/selftests/liveupdate/do_kexec.sh | 16 + tools/testing/selftests/liveupdate/liveupdate.c | 348 ++++++++ .../selftests/liveupdate/luo_kexec_simple.c | 89 +++ .../selftests/liveupdate/luo_multi_session.c | 162 ++++ .../testing/selftests/liveupdate/luo_test_utils.c | 266 ++++++ .../testing/selftests/liveupdate/luo_test_utils.h | 44 + .../testing/selftests/lsm/lsm_get_self_attr_test.c | 2 +- .../testing/selftests/lsm/lsm_list_modules_test.c | 2 +- .../testing/selftests/lsm/lsm_set_self_attr_test.c | 2 +- .../selftests/media_tests/media_device_open.c | 2 +- .../selftests/media_tests/media_device_test.c | 2 +- .../selftests/membarrier/membarrier_test_impl.h | 2 +- tools/testing/selftests/mincore/mincore_selftest.c | 4 +- tools/testing/selftests/mm/compaction_test.c | 2 +- tools/testing/selftests/mm/cow.c | 2 +- tools/testing/selftests/mm/droppable.c | 2 +- tools/testing/selftests/mm/guard-regions.c | 2 +- tools/testing/selftests/mm/gup_longterm.c | 2 +- tools/testing/selftests/mm/gup_test.c | 2 +- tools/testing/selftests/mm/hmm-tests.c | 2 +- tools/testing/selftests/mm/hugepage-mmap.c | 2 +- tools/testing/selftests/mm/hugepage-mremap.c | 2 +- tools/testing/selftests/mm/hugetlb-madvise.c | 2 +- tools/testing/selftests/mm/hugetlb-read-hwpoison.c | 2 +- tools/testing/selftests/mm/hugetlb-soft-offline.c | 2 +- tools/testing/selftests/mm/hugetlb_dio.c | 2 +- .../selftests/mm/hugetlb_fault_after_madv.c | 2 +- tools/testing/selftests/mm/hugetlb_madv_vs_map.c | 2 +- tools/testing/selftests/mm/ksm_functional_tests.c | 2 +- tools/testing/selftests/mm/ksm_tests.c | 2 +- tools/testing/selftests/mm/madv_populate.c | 2 +- tools/testing/selftests/mm/map_fixed_noreplace.c | 2 +- tools/testing/selftests/mm/map_hugetlb.c | 2 +- tools/testing/selftests/mm/map_populate.c | 2 +- tools/testing/selftests/mm/mdwe_test.c | 2 +- tools/testing/selftests/mm/memfd_secret.c | 2 +- tools/testing/selftests/mm/merge.c | 2 +- tools/testing/selftests/mm/migration.c | 2 +- tools/testing/selftests/mm/mkdirty.c | 2 +- tools/testing/selftests/mm/mlock-random-test.c | 2 +- tools/testing/selftests/mm/mlock2-tests.c | 2 +- tools/testing/selftests/mm/mrelease_test.c | 2 +- tools/testing/selftests/mm/mremap_dontunmap.c | 2 +- tools/testing/selftests/mm/mremap_test.c | 2 +- tools/testing/selftests/mm/mseal_test.c | 2 +- tools/testing/selftests/mm/on-fault-limit.c | 2 +- tools/testing/selftests/mm/pagemap_ioctl.c | 2 +- tools/testing/selftests/mm/pfnmap.c | 2 +- tools/testing/selftests/mm/pkey-helpers.h | 2 +- tools/testing/selftests/mm/prctl_thp_disable.c | 2 +- tools/testing/selftests/mm/process_madv.c | 2 +- tools/testing/selftests/mm/rmap.c | 2 +- tools/testing/selftests/mm/soft-dirty.c | 2 +- tools/testing/selftests/mm/split_huge_page_test.c | 2 +- tools/testing/selftests/mm/thuge-gen.c | 2 +- tools/testing/selftests/mm/transhuge-stress.c | 2 +- tools/testing/selftests/mm/uffd-common.h | 2 +- tools/testing/selftests/mm/uffd-wp-mremap.c | 2 +- tools/testing/selftests/mm/va_high_addr_switch.c | 2 +- tools/testing/selftests/mm/virtual_address_range.c | 2 +- tools/testing/selftests/mm/vm_util.c | 2 +- tools/testing/selftests/mm/vm_util.h | 2 +- .../selftests/mount_setattr/mount_setattr_test.c | 2 +- .../move_mount_set_group_test.c | 2 +- tools/testing/selftests/mqueue/mq_open_tests.c | 2 +- tools/testing/selftests/mqueue/mq_perf_tests.c | 2 +- .../mseal_system_mappings/sysmap_is_sealed.c | 4 +- .../selftests/namespaces/file_handle_test.c | 2 +- tools/testing/selftests/namespaces/init_ino_test.c | 2 +- tools/testing/selftests/namespaces/nsid_test.c | 2 +- tools/testing/selftests/nci/nci_dev.c | 2 +- tools/testing/selftests/net/af_unix/diag_uid.c | 2 +- tools/testing/selftests/net/af_unix/msg_oob.c | 2 +- tools/testing/selftests/net/af_unix/scm_inq.c | 2 +- tools/testing/selftests/net/af_unix/scm_pidfd.c | 2 +- tools/testing/selftests/net/af_unix/scm_rights.c | 2 +- tools/testing/selftests/net/af_unix/unix_connect.c | 2 +- tools/testing/selftests/net/bind_timewait.c | 2 +- tools/testing/selftests/net/bind_wildcard.c | 2 +- tools/testing/selftests/net/can/test_raw_filter.c | 2 +- tools/testing/selftests/net/cmsg_sender.c | 2 +- tools/testing/selftests/net/epoll_busy_poll.c | 2 +- tools/testing/selftests/net/ip_local_port_range.c | 2 +- tools/testing/selftests/net/ipsec.c | 2 +- tools/testing/selftests/net/ipv6_fragmentation.c | 2 +- .../selftests/net/netfilter/conntrack_dump_flush.c | 2 +- tools/testing/selftests/net/netlink-dumps.c | 2 +- tools/testing/selftests/net/ovpn/ovpn-cli.c | 2 +- tools/testing/selftests/net/proc_net_pktgen.c | 2 +- tools/testing/selftests/net/psock_fanout.c | 2 +- tools/testing/selftests/net/psock_tpacket.c | 2 +- .../selftests/net/reuseaddr_ports_exhausted.c | 2 +- tools/testing/selftests/net/reuseport_bpf.c | 2 +- tools/testing/selftests/net/reuseport_bpf_numa.c | 2 +- tools/testing/selftests/net/rxtimestamp.c | 2 +- tools/testing/selftests/net/sk_so_peek_off.c | 2 +- tools/testing/selftests/net/so_incoming_cpu.c | 2 +- tools/testing/selftests/net/socket.c | 2 +- tools/testing/selftests/net/tap.c | 2 +- tools/testing/selftests/net/tcp_ao/lib/setup.c | 2 +- .../selftests/net/tcp_fastopen_backup_key.c | 2 +- tools/testing/selftests/net/tcp_port_share.c | 2 +- tools/testing/selftests/net/tls.c | 2 +- tools/testing/selftests/net/tun.c | 2 +- tools/testing/selftests/net/udpgso_bench_tx.c | 2 +- tools/testing/selftests/openat2/helpers.h | 2 +- tools/testing/selftests/openat2/openat2_test.c | 2 +- .../testing/selftests/openat2/rename_attack_test.c | 2 +- tools/testing/selftests/openat2/resolve_test.c | 2 +- .../selftests/pci_endpoint/pci_endpoint_test.c | 2 +- tools/testing/selftests/perf_events/mmap.c | 2 +- .../testing/selftests/perf_events/remove_on_exec.c | 2 +- .../selftests/perf_events/sigtrap_threads.c | 2 +- .../selftests/perf_events/watermark_signal.c | 2 +- tools/testing/selftests/pid_namespace/pid_max.c | 2 +- .../selftests/pid_namespace/regression_enomem.c | 2 +- tools/testing/selftests/pidfd/pidfd.h | 2 +- tools/testing/selftests/pidfd/pidfd_bind_mount.c | 2 +- tools/testing/selftests/pidfd/pidfd_fdinfo_test.c | 2 +- .../selftests/pidfd/pidfd_file_handle_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_getfd_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_info_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_open_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_poll_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_setattr_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_setns_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_wait.c | 2 +- tools/testing/selftests/pidfd/pidfd_xattr_test.c | 2 +- .../selftests/prctl/set-anon-vma-name-test.c | 2 +- tools/testing/selftests/prctl/set-process-name.c | 2 +- tools/testing/selftests/proc/proc-maps-race.c | 2 +- tools/testing/selftests/proc/proc-pid-vm.c | 2 +- tools/testing/selftests/proc/proc-pidns.c | 2 +- tools/testing/selftests/ptrace/get_set_sud.c | 2 +- tools/testing/selftests/ptrace/get_syscall_info.c | 2 +- tools/testing/selftests/ptrace/set_syscall_info.c | 2 +- tools/testing/selftests/ptrace/vmaccess.c | 2 +- tools/testing/selftests/resctrl/resctrl.h | 2 +- tools/testing/selftests/ring-buffer/map_test.c | 2 +- .../testing/selftests/riscv/abi/pointer_masking.c | 2 +- tools/testing/selftests/riscv/hwprobe/cbo.c | 2 +- tools/testing/selftests/riscv/hwprobe/hwprobe.c | 2 +- tools/testing/selftests/riscv/hwprobe/which-cpus.c | 2 +- tools/testing/selftests/riscv/mm/mmap_bottomup.c | 2 +- tools/testing/selftests/riscv/mm/mmap_default.c | 2 +- tools/testing/selftests/riscv/mm/mmap_test.h | 2 +- .../testing/selftests/riscv/sigreturn/sigreturn.c | 2 +- tools/testing/selftests/riscv/vector/v_initval.c | 2 +- .../testing/selftests/riscv/vector/vstate_prctl.c | 2 +- .../testing/selftests/rseq/basic_percpu_ops_test.c | 2 +- tools/testing/selftests/rseq/rseq.c | 2 +- tools/testing/selftests/rtc/rtctest.c | 2 +- .../testing/selftests/seccomp/seccomp_benchmark.c | 2 +- tools/testing/selftests/seccomp/seccomp_bpf.c | 2 +- tools/testing/selftests/sgx/main.c | 2 +- tools/testing/selftests/signal/mangle_uc_sigmask.c | 2 +- tools/testing/selftests/signal/sas.c | 2 +- tools/testing/selftests/sparc64/drivers/adi-test.c | 2 +- tools/testing/selftests/sync/sync_test.c | 2 +- .../selftests/syscall_user_dispatch/sud_test.c | 2 +- tools/testing/selftests/tdx/tdx_guest_test.c | 2 +- tools/testing/selftests/timens/timens.h | 2 +- tools/testing/selftests/timers/adjtick.c | 2 +- .../testing/selftests/timers/alarmtimer-suspend.c | 2 +- tools/testing/selftests/timers/change_skew.c | 2 +- .../testing/selftests/timers/clocksource-switch.c | 2 +- tools/testing/selftests/timers/freq-step.c | 2 +- .../testing/selftests/timers/inconsistency-check.c | 2 +- tools/testing/selftests/timers/leap-a-day.c | 2 +- tools/testing/selftests/timers/leapcrash.c | 2 +- tools/testing/selftests/timers/mqueue-lat.c | 2 +- tools/testing/selftests/timers/nanosleep.c | 2 +- tools/testing/selftests/timers/nsleep-lat.c | 2 +- tools/testing/selftests/timers/posix_timers.c | 2 +- tools/testing/selftests/timers/raw_skew.c | 2 +- tools/testing/selftests/timers/rtcpie.c | 2 +- tools/testing/selftests/timers/set-2038.c | 2 +- tools/testing/selftests/timers/set-tai.c | 2 +- tools/testing/selftests/timers/set-timer-lat.c | 2 +- tools/testing/selftests/timers/set-tz.c | 2 +- tools/testing/selftests/timers/skew_consistency.c | 2 +- tools/testing/selftests/timers/threadtest.c | 2 +- tools/testing/selftests/timers/valid-adjtimex.c | 2 +- tools/testing/selftests/tmpfs/bug-link-o-tmpfile.c | 2 +- tools/testing/selftests/tty/tty_tstamp_update.c | 2 +- tools/testing/selftests/uevent/uevent_filtering.c | 2 +- tools/testing/selftests/user_events/abi_test.c | 2 +- tools/testing/selftests/user_events/dyn_test.c | 2 +- tools/testing/selftests/user_events/ftrace_test.c | 2 +- tools/testing/selftests/user_events/perf_test.c | 2 +- .../selftests/user_events/user_events_selftests.h | 2 +- tools/testing/selftests/vDSO/vdso_test_abi.c | 2 +- tools/testing/selftests/vDSO/vdso_test_chacha.c | 2 +- .../testing/selftests/vDSO/vdso_test_correctness.c | 2 +- tools/testing/selftests/vDSO/vdso_test_getcpu.c | 2 +- tools/testing/selftests/vDSO/vdso_test_getrandom.c | 2 +- .../selftests/vDSO/vdso_test_gettimeofday.c | 2 +- tools/testing/selftests/vfio/lib/vfio_pci_device.c | 2 +- tools/testing/selftests/vfio/lib/vfio_pci_driver.c | 2 +- .../testing/selftests/vfio/vfio_dma_mapping_test.c | 2 +- .../selftests/vfio/vfio_iommufd_setup_test.c | 2 +- .../testing/selftests/vfio/vfio_pci_device_test.c | 2 +- .../testing/selftests/vfio/vfio_pci_driver_test.c | 2 +- .../testing/selftests/wireguard/qemu/kernel.config | 2 +- .../testing/selftests/x86/corrupt_xstate_header.c | 2 +- tools/testing/selftests/x86/helpers.h | 2 +- tools/testing/selftests/x86/lam.c | 2 +- tools/testing/selftests/x86/syscall_numbering.c | 2 +- tools/testing/selftests/x86/test_mremap_vdso.c | 2 +- tools/testing/selftests/x86/test_vsyscall.c | 2 +- tools/testing/selftests/x86/xstate.h | 2 +- 454 files changed, 8066 insertions(+), 1834 deletions(-) create mode 100644 Documentation/ABI/obsolete/sysfs-kernel-kexec-kdump create mode 100644 Documentation/ABI/testing/sysfs-kernel-kexec-kdump create mode 100644 Documentation/core-api/liveupdate.rst create mode 100644 Documentation/driver-api/hw-recoverable-errors.rst create mode 100644 Documentation/mm/memfd_preservation.rst create mode 100644 Documentation/userspace-api/liveupdate.rst create mode 100644 include/linux/kho/abi/luo.h create mode 100644 include/linux/kho/abi/memfd.h create mode 100644 include/linux/liveupdate.h create mode 100644 include/uapi/linux/liveupdate.h delete mode 100644 kernel/kexec_handover_internal.h create mode 100644 kernel/liveupdate/Kconfig create mode 100644 kernel/liveupdate/Makefile rename kernel/{ => liveupdate}/kexec_handover.c (75%) rename kernel/{ => liveupdate}/kexec_handover_debug.c (100%) create mode 100644 kernel/liveupdate/kexec_handover_debugfs.c create mode 100644 kernel/liveupdate/kexec_handover_internal.h create mode 100644 kernel/liveupdate/luo_core.c create mode 100644 kernel/liveupdate/luo_file.c create mode 100644 kernel/liveupdate/luo_internal.h create mode 100644 kernel/liveupdate/luo_session.c create mode 100644 lib/tests/base64_kunit.c create mode 100644 mm/memfd_luo.c create mode 100644 scripts/gdb/linux/bpf.py create mode 100644 tools/testing/selftests/liveupdate/.gitignore create mode 100644 tools/testing/selftests/liveupdate/Makefile create mode 100644 tools/testing/selftests/liveupdate/config create mode 100755 tools/testing/selftests/liveupdate/do_kexec.sh create mode 100644 tools/testing/selftests/liveupdate/liveupdate.c create mode 100644 tools/testing/selftests/liveupdate/luo_kexec_simple.c create mode 100644 tools/testing/selftests/liveupdate/luo_multi_session.c create mode 100644 tools/testing/selftests/liveupdate/luo_test_utils.c create mode 100644 tools/testing/selftests/liveupdate/luo_test_utils.h