linux/lib
Linus Torvalds 86ba24c41a slab fixes for 7.2-rc4
-----BEGIN PGP SIGNATURE-----
 
 iQFPBAABCAA5FiEEe7vIQRWZI0iWSE3xu+CwddJFiJoFAmpjWAEbFIAAAAAABAAO
 bWFudTIsMi41KzEuMTIsMiwyAAoJELvgsHXSRYia05cH/RmNDT1xgDYobPcl1fDI
 3FkFG4n/cARfh1wWFbV/niNi6q63fq9KyHjNPzkANzDM3CpvdIHzUvF9EzTnj+bW
 6tsdO2qlNMzdB2xAKpGtRqKIuGb1JeG5OtWc/+sHrt8ASdMdQCuufxVe6cKtNCMl
 Xa3JfqNldG4ZSaT+I4OJBkbOVuHtSO/VCX6RTItqXc3NH5CjyMZR+V+3FK/TwvNn
 TAo+MFhTI9tDSge4rDrJSD9Pxddi3UIhvlPxEqlOT0tPUp2PJYCeoOMtPVR/c2LW
 Cz03EwLZWbDg9qTC6cy/ZZu8/7+84VgrQwkNlLkpnPTPaTJ2s04Lg+FIjDCv/LcG
 +Cc=
 =MKn/
 -----END PGP SIGNATURE-----

Merge tag 'slab-for-7.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab

Pull slab fixes from Vlastimil Babka:

 - Prevent unbounded recursion in free path with memory allocation
   profiling, which has caused a stack overflow on a Meta production
   host due to a 125-deep __free_slab<->kfree recursion (Harry Yoo)

 - Fix type-based partitioning confusing sparse which does not know
   __builtin_infer_alloc_token() (Marco Elver)

 - Fix a potential memory leak in bulk freeing path on NUMA machines
   (Shengming Hu)

* tag 'slab-for-7.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab:
  slab: silence sparse warning with type-based partitioning
  mm/slab: prevent unbounded recursion in free path with new kmalloc type
  lib/alloc_tag: introduce mem_alloc_profiling_permanently_disabled()
  mm/slab: decouple SLAB_NO_SHEAVES from SLAB_NO_OBJ_EXT
  mm/slab: fix a memory leak due to bootstrapping sheaves twice
  mm/slub: fix lost local objects when bulk remote free batch fills
2026-07-24 07:28:35 -07:00
..
842 lib: 842: Improve error handling in sw842_compress() 2025-02-09 18:08:11 +08:00
crc lib/crc: arm: Enable arm64's NEON intrinsics implementation of crc64 2026-05-28 13:14:23 -07:00
crypto crypto: aes - Fix conditions for selecting MAC dependencies 2026-07-09 11:06:22 -04:00
dim Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
fonts fbdev/arm: Export acorndata_8x8 font symbol for bootloader 2026-06-09 16:00:11 +02:00
kunit linux_kselftest-kunit-7.2-rc1 2026-06-16 16:33:57 +05:30
lz4 include/linux/lz4.h: add some missing macros 2025-01-24 22:47:28 -08:00
lzo lib/lzo: add unlikely hints to overrun checks 2025-08-16 17:24:31 +08:00
math mm.git review status for linus..mm-nonmm-stable 2026-04-16 20:11:56 -07:00
pldmfw Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
raid raid6: fix raid6_recov_rvv symbol undeclared warning 2026-06-25 11:51:32 -06:00
reed_solomon Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
test_fortify string: Remove strncpy() from the kernel 2026-06-18 16:39:31 -07:00
tests iov_iter: Remove unused variable in kunit_iov_iter.c 2026-07-01 15:26:29 +02:00
vdso A series of updates for the VDSO: 2026-06-15 13:57:13 +05:30
xz Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
zlib_deflate lib/zlib: drop EQUAL macro 2025-03-16 22:30:49 -07:00
zlib_dfltcc
zlib_inflate Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
zstd Update zstd to the latest upstream release v1.5.7. Imported cleanly from the 2025-03-26 21:35:28 -07:00
.gitignore lib: Add stale 'raid6' directory to .gitignore file 2026-06-21 14:09:49 -07:00
alloc_tag.c lib/alloc_tag: introduce mem_alloc_profiling_permanently_disabled() 2026-07-14 16:44:40 +02:00
argv_split.c
ashldi3.c
ashrdi3.c
asn1_decoder.c ASN.1: add module description 2025-04-11 17:32:37 -07:00
asn1_encoder.c
assoc_array.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
atomic64_test.c x86/cpufeatures: Rename X86_CMPXCHG64 to X86_CX8 2025-02-28 11:42:34 +01:00
atomic64.c atomic64: Use arch_spin_locks instead of raw_spin_locks 2025-01-22 15:07:01 -05:00
audit.c audit: fix coding style issues 2026-03-05 22:16:08 -05:00
base64.c lib/base64: fix copy-pasted @padding doc in base64_decode() 2026-05-28 21:24:43 -07:00
bcd.c
bch.c lib/bch: fix signed shift overflow in build_mod8_tables 2026-03-27 21:19:48 -07:00
bitmap-str.c bitmap: drop bitmap_print_to_pagebuf() 2026-05-28 11:36:53 -04:00
bitmap.c bitmap: introduce bitmap_weighted_xor() 2026-04-01 20:03:07 -04:00
bitrev.c lib/bitrev: Introduce GENERIC_BITREVERSE 2026-05-28 11:39:16 -04:00
bootconfig-data.S
bootconfig.c bootconfig: fix NULL-pointer arithmetic in xbc_snprint_cmdline() 2026-07-01 08:08:27 +09:00
bsearch.c
btree.c btree: simplify merge logic by using btree_last() return value 2025-09-13 17:32:53 -07:00
bucket_locks.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
bug.c bug: fix warning suppressions with kunit built as module 2026-07-10 10:26:58 -06:00
build_OID_registry oid_registry: allow arbitrary size OIDs 2026-01-20 19:44:15 -08:00
buildid.c procfs: avoid fetching build ID while holding VMA lock 2026-02-05 14:10:00 -08:00
bust_spinlocks.c
cache_maint.c lib: Support ARCH_HAS_CPU_CACHE_INVALIDATE_MEMREGION 2025-11-21 18:42:01 +00:00
check_signature.c
checksum.c
closure.c
clz_ctz.c bitops: Add __attribute_const__ to generic ffs()-family implementations 2025-09-08 14:58:50 -07:00
clz_tab.c
cmdline.c lib/cmdline: adjust a few comments to fix kernel-doc -Wreturn warnings 2026-05-28 21:24:50 -07:00
cmpdi2.c
cmpxchg-emu.c
codetag.c lib: split codetag_lock_module_list() 2026-06-21 11:31:28 -07:00
compat_audit.c audit: use 'unsigned int' instead of 'unsigned' 2026-05-26 17:15:30 -04:00
cpu_rmap.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
cpumask.c cpumask: drop cpumask_next_wrap_old() 2025-02-24 16:37:23 -05:00
ctype.c
debug_info.c
debug_locks.c
debugobjects.c debugobjects: Plug race against a concurrent OOM disable 2026-06-22 16:38:57 +02:00
dec_and_lock.c compiler-context-analysis: Remove __cond_lock() function-like helper 2026-01-05 16:43:33 +01:00
decompress_bunzip2.c lib: decompress_bunzip2: fix 32-bit shift undefined behavior 2026-03-27 21:19:43 -07:00
decompress_inflate.c
decompress_unlz4.c
decompress_unlzma.c
decompress_unlzo.c
decompress_unxz.c xz: fix arm fdt compile error for kmalloc replacement 2026-02-22 12:05:31 -08:00
decompress_unzstd.c
decompress.c lib/decompress: use designated initializers for struct compress_format 2025-09-22 20:10:58 -07:00
devmem_is_allowed.c
devres.c devres: Export devm_ioremap_resource_wc() 2025-05-05 16:18:09 -05:00
dhry_1.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
dhry_2.c
dhry_run.c
dhry.h
digsig.c integrity-v6.18 2025-10-05 10:48:33 -07:00
dump_stack.c panic/printk: replace this_cpu_in_panic() with panic_on_this_cpu() 2025-09-13 17:32:52 -07:00
dynamic_debug.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
dynamic_queue_limits.c dql: Fix dql->limit value when reset. 2025-03-25 06:26:55 -07:00
earlycpio.c
errname.c
error-inject.c error-inject: use IS_ERR() check for debugfs_create_file() 2026-05-28 21:24:57 -07:00
errseq.c errseq: eliminate special limitation for macro MAX_ERRNO 2025-05-11 17:54:06 -07:00
extable.c
fault-inject-usercopy.c lib/fault-inject-usercopy.c: use PTR_ERR_OR_ZERO() to simplify code 2025-09-13 17:32:46 -07:00
fault-inject.c fault-inject: use prandom where cryptographically secure randomness is not needed 2025-01-12 20:21:00 -08:00
fdt_addresses.c
fdt_empty_tree.c
fdt_ro.c
fdt_rw.c
fdt_strerror.c
fdt_sw.c
fdt_wip.c
fdt.c
find_bit_benchmark_rust.rs rust: add find_bit_benchmark_rust module. 2025-09-22 15:52:44 -04:00
find_bit_benchmark.c lib/find_bit_benchmark: avoid clearing randomly filled bitmap in test_find_first_bit() 2026-03-23 13:33:51 -04:00
find_bit.c bitmap: drop __find_nth_andnot_bit() 2026-03-23 13:33:51 -04:00
flex_proportions.c flex_proportions: make fprop_new_period() hardirq safe 2026-01-26 19:03:46 -08:00
fw_table.c
genalloc.c lib/genalloc: fix device leak in of_gen_pool_get() 2025-09-28 11:36:13 -07:00
generic-radix-tree.c
glob.c tracing: Prevent out-of-bounds read in glob matching 2026-07-07 10:42:28 -04:00
group_cpus.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
hexdump.c kernel.h: drop hex.h and update all hex.h users 2026-01-20 19:44:19 -08:00
hweight.c bitops: Update kernel-doc in hweight.c to fix the issues with it 2025-11-06 11:51:04 -05:00
idr.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
inflate.c lib/inflate: fix typo "This results" to "The results" in comment 2026-03-27 21:19:42 -07:00
interval_tree_test.c lib: interval_tree_test: validate benchmark parameters 2026-06-17 15:37:47 -07:00
interval_tree.c interval_tree: Fix ITSTATIC usage for *_subtree_search() 2025-10-14 14:45:22 -07:00
iomap_copy.c
iomap.c asm-generic/io.h: rework split ioread64/iowrite64 helpers 2025-03-01 21:00:22 +01:00
iomem_copy.c
iommu-helper.c
iov_iter.c iov_iter: Fix a memory leak in iov_iter_extract_user_pages() 2026-07-01 15:26:29 +02:00
irq_poll.c
irq_regs.c
is_single_threaded.c
kasprintf.c
Kconfig mm.git review status for mm-hotfixes-stable..mm-nonmm-stable 2026-06-21 13:20:19 -07:00
Kconfig.debug mm.git review status for mm-hotfixes-stable..mm-nonmm-stable 2026-06-21 13:20:19 -07:00
Kconfig.kasan kasan: introduce ARCH_DEFER_KASAN and unify static key across modes 2025-09-21 14:21:58 -07:00
Kconfig.kcsan objtool: Drop noinstr hack for KCSAN_WEAK_MEMORY 2025-08-28 16:58:46 -07:00
Kconfig.kfence
Kconfig.kgdb
Kconfig.kmsan KMSAN: Restore dynamic check for '-fsanitize=kernel-memory' 2025-10-27 16:22:02 -07:00
Kconfig.ubsan Kconfig.ubsan: Remove CONFIG_UBSAN_REPORT_FULL from documentation 2026-01-07 12:16:03 -08:00
kfifo.c kfifo: fix kmalloc_array_node() argument order 2026-01-26 19:07:09 -08:00
klist.c
kobject_uevent.c kernfs: pass struct ns_common instead of const void * for namespace tags 2026-04-09 14:36:52 +02:00
kobject.c kernfs: pass struct ns_common instead of const void * for namespace tags 2026-04-09 14:36:52 +02:00
kstrtox.c lib: fix _parse_integer_limit() to handle overflow 2026-05-28 21:24:49 -07:00
kstrtox.h
linear_ranges.c lib/linear_ranges: Add linear_range_get_selector_high_array 2026-03-30 16:58:33 +02:00
list_debug.c lib/list_debug.c: add object information in case of invalid object 2025-01-25 20:22:23 -08:00
list_sort.c lib/list_sort: remove dummy cmp() calls to speed up merge_final() 2026-04-02 23:36:22 -07:00
llist.c llist: make llist_add_batch() a static inline 2025-05-27 19:40:34 -07:00
locking-selftest-hardirq.h
locking-selftest-mutex.h
locking-selftest-rlock-hardirq.h
locking-selftest-rlock-softirq.h
locking-selftest-rlock.h
locking-selftest-rsem.h
locking-selftest-rtmutex.h
locking-selftest-softirq.h
locking-selftest-spin-hardirq.h
locking-selftest-spin-softirq.h
locking-selftest-spin.h
locking-selftest-wlock-hardirq.h
locking-selftest-wlock-softirq.h
locking-selftest-wlock.h
locking-selftest-wsem.h
locking-selftest.c lockdep/selftests: Restore sched_rt_mutex state on PREEMPT_RT 2026-06-03 11:38:47 +02:00
lockref.c compiler-context-analysis: Remove __cond_lock() function-like helper 2026-01-05 16:43:33 +01:00
logic_iomem.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
logic_pio.c
lru_cache.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
lshrdi3.c
lwq.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
Makefile mm.git review status for mm-hotfixes-stable..mm-nonmm-stable 2026-06-21 13:20:19 -07:00
maple_tree.c maple_tree: document that "last" in mtree_insert_range() is inclusive 2026-06-02 15:22:14 -07:00
memcat_p.c
memory-notifier-error-inject.c
memregion.c
memweight.c
min_heap.c lib min_heap: use size_t for array size and index variables 2025-03-16 23:24:14 -07:00
muldi3.c
net_utils.c net, treewide: define and use MAC_ADDR_STR_LEN 2025-03-19 19:17:58 +01:00
netdev-notifier-error-inject.c
nlattr.c
nmi_backtrace.c lib/nmi_backtrace: print out the CPUs which fail to respond to NMI 2026-05-28 21:24:59 -07:00
notifier-error-inject.c
notifier-error-inject.h
objagg.c Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL uses 2026-02-22 08:26:33 -08:00
objpool.c objpool: fix the overestimation of object pooling metadata size 2026-02-12 15:45:57 -08:00
of-reconfig-notifier-error-inject.c
oid_registry.c lib/oid_registry.c: remove unused sprint_OID 2025-05-11 17:54:13 -07:00
once.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
packing_test.c
packing.c
parman.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
parser.c lib: parser: fix match_wildcard to correctly handle trailing stars 2026-04-02 23:36:24 -07:00
percpu_counter.c
percpu_test.c
percpu-refcount.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
plist.c treewide: Update email address 2026-01-11 06:09:11 -10:00
pm-notifier-error-inject.c
radix-tree.c
radix-tree.h
random32.c
ratelimit.c lib: ratelimit: fix spelling mistake 'seperately' 2025-11-20 14:03:45 -08:00
rbtree_test.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
rbtree.c rbtree: Provide rbtree with links 2026-02-27 16:40:16 +01:00
rcuref.c rcuref: Plug slowpath race in rcuref_put() 2025-01-29 15:21:31 +01:00
ref_tracker.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
refcount.c
rhashtable.c rhashtable: clear stale iter->p on table restart 2026-07-17 09:04:45 +10:00
sbitmap.c lib/sbitmap: make sbitmap_get_shallow() internal 2025-08-07 06:30:17 -06:00
scatterlist.c scatterlist: Fix offset in folio calc in extract_xarray_to_sg() 2026-07-01 15:26:29 +02:00
seq_buf.c seq_buf: export seq_buf_putmem_hex() and add KUnit tests 2026-05-28 21:24:41 -07:00
sg_pool.c
sg_split.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
siphash.c
smp_processor_id.c lib/smp_processor_id: Make migration check unconditional of SMP 2025-07-10 17:52:13 +02:00
sort.c lib/sort.c: add _nonatomic() variants with cond_resched() 2025-04-01 15:20:46 -07:00
stackdepot.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
stmp_device.c
string_helpers.c lib/string_helpers: annotate struct strarray with __counted_by_ptr 2026-05-13 10:54:08 -07:00
string.c mm.git review status for mm-hotfixes-stable..mm-nonmm-stable 2026-06-21 13:20:19 -07:00
strncpy_from_user.c lib/strn*,uaccess: Use masked_user_{read/write}_access_begin when required 2025-11-18 15:27:35 +01:00
strnlen_user.c lib/strn*,uaccess: Use masked_user_{read/write}_access_begin when required 2025-11-18 15:27:35 +01:00
sys_info.c sys_info: add a default kernel sys_info mask 2025-11-20 14:03:43 -08:00
syscall.c
test_bitmap.c bitmap: add test_zero_nbits() 2026-03-24 13:39:53 -04:00
test_bitops.c
test_bpf.c bpf: Exhaustive test coverage for signed division and modulo 2026-04-20 17:57:36 -07:00
test_context-analysis.c compiler-context-analysis: Bump required Clang version to 23 2026-05-28 12:20:19 +02:00
test_debug_virtual.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
test_dynamic_debug.c
test_firmware.c lib/test_firmware: allocate the configured into_buf size 2026-06-11 11:42:21 -07:00
test_fpu_glue.c
test_fpu_impl.c
test_fpu.h
test_free_pages.c
test_hexdump.c
test_hmm_uapi.h lib/test_hmm: add large page allocation failure testing 2025-11-24 15:08:48 -08:00
test_hmm.c lib/test_hmm: check alloc_page_vma() return value and handle OOM 2026-06-08 18:21:32 -07:00
test_ida.c ida: Add ida_find_first_range() 2025-03-25 10:18:31 -03:00
test_kho.c kho: persist blob size in KHO FDT 2026-04-18 00:10:48 -07:00
test_kmod.c lib/test_kmod: do not hardcode/depend on any filesystem 2025-05-11 17:54:09 -07:00
test_lockup.c
test_maple_tree.c MAINTAINERS: update Liam's email address 2026-04-27 05:54:25 -07:00
test_memcat_p.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
test_meminit.c mm.git review status for mm-hotfixes-stable..mm-stable 2026-06-19 10:14:34 -07:00
test_module.c
test_objagg.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
test_objpool.c lib: test_objpool: Avoid direct access to hrtimer clockbase 2025-09-09 12:27:18 +02:00
test_parman.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
test_ref_tracker.c ref_tracker: eliminate the ref_tracker_dir name field 2025-06-19 17:02:04 -07:00
test_rhashtable.c rhashtable: Add selftest for rhashtable_next_key() 2026-06-05 08:00:07 -07:00
test_static_key_base.c
test_static_keys.c
test_sysctl.c sysctl: Close test ctl_headers with a for loop 2025-04-14 14:13:41 +02:00
test_ubsan.c ubsan: Fix panic from test_ubsan_out_of_bounds 2025-04-15 13:50:17 -07:00
test_vmalloc.c lib/test_vmalloc: add vrealloc test case 2026-06-02 15:22:32 -07:00
test_workqueue.c workqueue: avoid unguarded 64-bit division 2026-04-03 07:14:24 -10:00
test_xarray.c xarray: make xa_alloc_cyclic() return 0 on all success cases 2025-05-11 17:48:19 -07:00
test-kstrtox.c lib: add more string to 64-bit integer conversion overflow tests 2026-05-28 21:24:50 -07:00
textsearch.c
timerqueue.c timerqueue: Provide linked timerqueue 2026-02-27 16:40:16 +01:00
trace_readwrite.c
ts_bm.c lib/ts_bm: fix integer overflow in pattern length calculation 2026-03-27 21:19:44 -07:00
ts_fsm.c
ts_kmp.c lib/ts_kmp: fix integer overflow in pattern length calculation 2026-03-27 21:19:44 -07:00
ubsan.c ubsan: Fix incorrect hand-side used in handle 2025-08-25 06:11:06 -07:00
ubsan.h ubsan/overflow: Rework integer overflow sanitizer option to turn on everything 2025-03-07 19:58:05 -08:00
ucmpdi2.c
ucs2_string.c ucs2_string: add module description 2025-04-11 17:32:38 -07:00
union_find.c
usercopy.c uaccess: unify inline vs outline copy_{from,to}_user() selection 2026-05-28 21:24:44 -07:00
uuid.c lib/uuid: fix typo "reversion" to "revision" in comment 2026-03-27 21:19:41 -07:00
vsprintf.c printk changes for 7.2 2026-06-17 12:05:20 -07:00
win_minmax.c
xarray.c xarray: remove redundant __GFP_NOWARN 2025-09-13 16:54:46 -07:00
xxhash.c lib/xxhash: remove more unused xxh functions 2025-11-12 10:00:17 -08:00