aboutsummaryrefslogtreecommitdiffstats
path: root/mm/slab_common.c
AgeCommit message (Expand)AuthorFilesLines
2025-09-29slab: Introduce kmalloc_nolock() and kfree_nolock().Alexei Starovoitov1-0/+3
2025-09-29slab: skip percpu sheaves for remote object freeingVlastimil Babka1-2/+5
2025-09-29slab: add sheaf support for batching kfree_rcu() operationsVlastimil Babka1-0/+26
2025-09-26slab: add opt-in caching layer of percpu sheavesVlastimil Babka1-1/+4
2025-05-12Update Christoph's Email address and make it consistentChristoph Lameter (Ampere)1-1/+1
2025-03-25Merge tag 'timers-cleanups-2025-03-23' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-2/+2
2025-03-20Merge branch 'slab/for-6.15/kfree_rcu_tiny' into slab/for-nextVlastimil Babka1-6/+27
2025-03-04mm/slab: simplify SLAB_* flag handlingKevin Brodsky1-9/+2
2025-03-04mm/slab/kvfree_rcu: Switch to WQ_MEM_RECLAIM wqUladzislau Rezki (Sony)1-4/+10
2025-02-18mm/slab: Switch to use hrtimer_setup()Nam Cao1-2/+2
2025-02-05slab: don't batch kvfree_rcu() with SLUB_TINYVlastimil Babka1-6/+9
2025-02-05rcu, slab: use a regular callback function for kvfree_rcuVlastimil Babka1-3/+2
2025-02-05slab, rcu: move TINY_RCU variant of kvfree_rcu() to SLABVlastimil Babka1-0/+19
2025-01-26Merge tag 'mm-stable-2025-01-26-14-59' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-1/+1
2025-01-11mm/slab: Move kvfree_rcu() into SLABUladzislau Rezki (Sony)1-0/+880
2024-11-25Merge tag 'slab-for-6.13-v2' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-89/+14
2024-11-20slab: Fix too strict alignment check in create_cache()Geert Uytterhoeven1-1/+1
2024-11-13Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpfAlexei Starovoitov1-12/+21
2024-11-05mm/slab: fix warning caused by duplicate kmem_cache creation in kmem_buckets_...Koichiro Den1-11/+20
2024-10-29mm, slab: add kerneldocs for common SLAB_ flagsVlastimil Babka1-1/+13
2024-10-29mm/slab: remove duplicate check in create_cache()Zhen Lei1-3/+0
2024-10-29mm/slub: Move krealloc() and related code to slub.cFeng Tang1-84/+0
2024-10-29mm: krealloc: Fix MTE false alarm in __do_kreallocQun-Wei Lin1-1/+1
2024-10-24Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpfAlexei Starovoitov1-2/+3
2024-10-16mm/bpf: Add bpf_get_kmem_cache() kfuncNamhyung Kim1-0/+19
2024-10-02mm, slab: suppress warnings in test_leak_destroy kunit testVlastimil Babka1-2/+3
2024-09-21Merge tag 'mm-stable-2024-09-20-02-31' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-2/+25
2024-09-13Merge branch 'slab/for-6.12/kmem_cache_args' into slab/for-nextVlastimil Babka1-96/+43
2024-09-13Merge branch 'slab/for-6.12/rcu_barriers' into slab/for-nextVlastimil Babka1-80/+47
2024-09-13mm, slab: restore kerneldoc for kmem_cache_create()Vlastimil Babka1-3/+7
2024-09-10slab: make __kmem_cache_create() static inlineChristian Brauner1-38/+0
2024-09-10slab: make kmem_cache_create_usercopy() static inlineChristian Brauner1-45/+0
2024-09-10slab: remove kmem_cache_create_rcu()Christian Brauner1-43/+0
2024-09-10slab: create kmem_cache_create() compatibility layerChristian Brauner1-5/+5
2024-09-10slab: pass struct kmem_cache_args to do_kmem_cache_create()Christian Brauner1-21/+6
2024-09-10slab: pass struct kmem_cache_args to create_cache()Christian Brauner1-20/+19
2024-09-10slab: port kmem_cache_create_usercopy() to struct kmem_cache_argsChristian Brauner1-22/+8
2024-09-10slab: port kmem_cache_create_rcu() to struct kmem_cache_argsChristian Brauner1-3/+7
2024-09-10slab: port kmem_cache_create() to struct kmem_cache_argsChristian Brauner1-2/+6
2024-09-10slab: add struct kmem_cache_argsChristian Brauner1-16/+51
2024-09-10slab: s/__kmem_cache_create/do_kmem_cache_create/gChristian Brauner1-2/+2
2024-09-05mm/slab: Optimize the code logic in find_mergeable()Xavier1-3/+4
2024-09-03mm: krealloc: clarify valid usage of __GFP_ZERODanilo Krummrich1-2/+18
2024-09-03mm: krealloc: consider spare memory for __GFP_ZERODanilo Krummrich1-0/+7
2024-09-02mm: Removed @freeptr_offset to prevent doc warningR Sundar1-1/+0
2024-08-29mm: add kmem_cache_create_rcu()Christian Brauner1-39/+97
2024-08-29mm: remove unused argument from create_cache()Christian Brauner1-3/+2
2024-08-27mm, slab: use kmem_cache_free() to free from kmem_buckets_cacheYan Zhen1-1/+1
2024-08-27slub: Introduce CONFIG_SLUB_RCU_DEBUGJann Horn1-0/+16
2024-08-27mm, slab: call kvfree_rcu_barrier() from kmem_cache_destroy()Vlastimil Babka1-0/+3
2024-08-27mm, slab: reintroduce rcu_barrier() into kmem_cache_destroy()Vlastimil Babka1-43/+4
2024-08-27mm, slab: move kfence_shutdown_cache() outside slab_mutexVlastimil Babka1-6/+2
2024-08-27mm, slab: unlink slabinfo, sysfs and debugfs immediatelyVlastimil Babka1-31/+26
2024-08-27mm, slab: dissolve shutdown_cache() into its callerVlastimil Babka1-22/+18
2024-08-26slab: Warn on duplicate cache names when DEBUG_VM=yPedro Falcato1-0/+17
2024-07-21Merge tag 'mm-stable-2024-07-21-14-50' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-5/+5
2024-07-10mm: remove CONFIG_MEMCG_KMEMJohannes Weiner1-5/+5
2024-07-03mm/slab: Introduce kmem_buckets_create() and familyKees Cook1-0/+97
2024-07-03mm/slab: Plumb kmem_buckets into __do_kmalloc_node()Kees Cook1-1/+1
2024-07-03mm/slab: Introduce kmem_buckets typedefKees Cook1-2/+1
2024-07-03slab, rust: extend kmalloc() alignment guarantees to remove Rust paddingVlastimil Babka1-4/+5
2024-05-19Merge tag 'mm-stable-2024-05-17-19-19' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-3/+3
2024-05-02mm/slub: remove the check for NULL kmalloc_cachesHyunmin Lee1-6/+4
2024-05-02mm/slub: create kmalloc 96 and 192 caches regardless cache size orderHyunmin Lee1-12/+7
2024-04-25mm/slab: enable slab allocation tagging for kmalloc and friendsSuren Baghdasaryan1-3/+3
2024-03-25mm/slub: remove dummy slabinfo functionsXiu Jianfeng1-2/+0
2024-03-14Merge tag 'mm-nonmm-stable-2024-03-14-09-36' of git://git.kernel.org/pub/scm/...Linus Torvalds1-1/+1
2024-03-12Merge branch 'slab/for-6.9/slab-flag-cleanups' into slab/for-linusVlastimil Babka1-1/+1
2024-03-01mm/slab: Fix a kmemleak in kmem_cache_destroy()Xiaolei Wang1-2/+6
2024-02-26mm, slab, kasan: replace kasan_never_merge() with SLAB_NO_MERGEVlastimil Babka1-1/+1
2024-02-22treewide: update LLVM Bugzilla linksNathan Chancellor1-1/+1
2024-02-21mm, slab: remove unused object_size parameter in kmem_cache_flags()Chengming Zhou1-1/+1
2024-01-30mm/slub: remove parameter 'flags' in create_kmalloc_caches()Zheng Yejian1-6/+7
2024-01-22mm/slub: unify all sl[au]b parameters with "slab_$param"Xiongwei Song1-2/+2
2023-12-06mm/slab: move kmalloc() functions from slab_common.c to slub.cVlastimil Babka1-119/+0
2023-12-06mm/slab: move kmalloc_slab() to mm/slab.hVlastimil Babka1-35/+8
2023-12-06mm/slab: move kfree() from slab_common.c to slub.cVlastimil Babka1-45/+0
2023-12-06mm/slab: move pre/post-alloc hooks from slab.h to slub.cVlastimil Babka1-7/+1
2023-12-05mm/slab: remove CONFIG_SLAB code from slab common codeVlastimil Babka1-20/+2
2023-10-30Merge tag 'rcu-next-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/fr...Linus Torvalds1-30/+11
2023-10-11mm: slab: Do not create kmalloc caches smaller than arch_slab_minalign()Catalin Marinas1-2/+5
2023-09-29Merge tag 'slab-fixes-for-6.6-rc4' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-18/+18
2023-09-20slab: kmalloc_size_roundup() must not return 0 for non-zero sizeDavid Laight1-12/+12
2023-09-13mm: Remove kmem_valid_obj()Zhen Lei1-30/+11
2023-09-11mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy()Rafael Aquini1-6/+6
2023-08-29Merge tag 'dma-mapping-6.6-2023-08-29' of git://git.infradead.org/users/hch/d...Linus Torvalds1-3/+2
2023-08-01swiotlb: make io_tlb_default_mem local to swiotlb.cPetr Tesarik1-3/+2
2023-07-18Randomized slab caches for kmalloc()GONG, Ruiqi1-5/+44
2023-06-29Merge tag 'slab-for-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/vba...Linus Torvalds1-20/+13
2023-06-19mm: slab: reduce the kmalloc() minimum alignment if DMA bouncing possibleCatalin Marinas1-0/+5
2023-06-19mm/slab: limit kmalloc() minimum alignment to dma_get_cache_alignment()Catalin Marinas1-3/+21
2023-06-19mm/slab: simplify create_kmalloc_cache() args and make it staticCatalin Marinas1-8/+6
2023-06-16Merge branches 'slab/for-6.5/prandom', 'slab/for-6.5/slab_no_merge' and 'slab...Vlastimil Babka1-15/+10
2023-06-16mm/slab_common: use SLAB_NO_MERGE instead of negative refcountVlastimil Babka1-6/+6
2023-06-06mm/slab_common: reduce an if statement in create_cache()Zhen Lei1-4/+2
2023-06-02mm/slab: introduce kmem_cache flag SLAB_NO_MERGEJesper Dangaard Brouer1-1/+1
2023-05-22mm/slab_common: Replace invocation of weak PRNGDavid Keisar Schmidt1-8/+3
2023-03-29mm/slab: document kfree() as allowed for kmem_cache_alloc() objectsVlastimil Babka1-4/+1
2023-03-29mm/slab: remove CONFIG_SLOB code from slab common codeVlastimil Babka1-2/+0
2023-01-18mm/kasan: simplify and refine kasan_cache codeFeng Tang1-1/+0
2022-12-14Merge tag 'hardening-v6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-16/+10
2022-12-01mm: Make ksize() a reporting-only functionKees Cook1-16/+10
2022-12-01Merge branch 'slub-tiny-v1r6' into slab/for-nextVlastimil Babka1-5/+18
2022-11-27mm, slub: don't create kmalloc-rcl caches with CONFIG_SLUB_TINYVlastimil Babka1-2/+8
2022-11-27mm, slab: ignore hardened usercopy parameters when disabledVlastimil Babka1-3/+10
2022-11-11mm/slub: extend redzone check to extra allocated kmalloc space than requestedFeng Tang1-0/+4
2022-11-07mm, slab: remove duplicate kernel-doc comment for ksize()Vlastimil Babka1-14/+0
2022-11-06mm/slab_common: Restore passing "caller" for tracingKees Cook1-2/+2
2022-11-04mm/slab: remove !CONFIG_TRACING variants of kmalloc_[node_]trace()Vlastimil Babka1-2/+0
2022-11-03mm/slab_common: repair kernel-doc for __ksize()Lukas Bulwahn1-2/+2
2022-10-10Merge tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-0/+2
2022-09-29Merge branch 'slab/for-6.1/kmalloc_size_roundup' into slab/for-nextVlastimil Babka1-3/+34
2022-09-29Merge branch 'slab/for-6.1/slub_debug_waste' into slab/for-nextVlastimil Babka1-1/+2
2022-09-29slab: Introduce kmalloc_size_roundup()Kees Cook1-0/+20
2022-09-29slab: Remove __malloc attribute from realloc functionsKees Cook1-2/+2
2022-09-23mm/slub: enable debugging memory wasting of kmallocFeng Tang1-1/+2
2022-09-23Merge branch 'slab/for-6.1/common_kmalloc' into slab/for-nextVlastimil Babka1-24/+169
2022-09-23Merge branch 'slab/for-6.1/trivial' into slab/for-nextVlastimil Babka1-5/+1
2022-09-19mm/slab_common: fix possible double free of kmem_cacheFeng Tang1-1/+4
2022-09-01mm/slab_common: Deleting kobject in kmem_cache_destroy() without holding slab...Waiman Long1-16/+29
2022-09-01mm/sl[au]b: check if large object is valid in __ksize()Hyeonggon Yoo1-1/+6
2022-09-01mm/slab_common: move declaration of __ksize() to mm/slab.hHyeonggon Yoo1-10/+1
2022-09-01mm/slab_common: drop kmem_alloc & avoid dereferencing fields when not usingHyeonggon Yoo1-8/+8
2022-09-01mm/slab_common: unify NUMA and UMA version of tracepointsHyeonggon Yoo1-13/+8
2022-09-01mm/sl[au]b: cleanup kmem_cache_alloc[_node]_trace()Hyeonggon Yoo1-0/+27
2022-09-01mm/sl[au]b: generalize kmalloc subsystemHyeonggon Yoo1-3/+106
2022-08-24mm/slab: kmalloc: pass requests larger than order-1 page to page allocatorHyeonggon Yoo1-7/+18
2022-08-24mm/slab_common: cleanup kmalloc_large()Hyeonggon Yoo1-22/+13
2022-08-24mm/slab_common: kmalloc_node: pass large requests to page allocatorHyeonggon Yoo1-1/+10
2022-08-24mm/slub: move kmalloc_large_node() to slab_common.cHyeonggon Yoo1-0/+22
2022-08-24mm/slab_common: fold kmalloc_order_trace() into kmalloc_large()Hyeonggon Yoo1-13/+4
2022-08-23mm/slab_common: Remove the unneeded result variableye xingchen1-5/+1
2022-07-20mm/slab_common: move generic bulk alloc/free functions to SLOBHyeonggon Yoo1-27/+0
2022-07-04mm/tracing: add 'accounted' entry into output of allocation tracepointsVasily Averin1-5/+4
2022-05-26Merge tag 'mm-stable-2022-05-25' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-2/+1
2022-05-25Merge tag 'slab-for-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/vb...Linus Torvalds1-15/+8
2022-05-23Merge branches 'slab/for-5.19/stackdepot' and 'slab/for-5.19/refactor' into s...Vlastimil Babka1-15/+8
2022-05-13mm: make minimum slab alignment a runtime propertyPeter Collingbourne1-2/+1
2022-04-15mm, kfence: support kmem_dump_obj() for KFENCE objectsMarco Elver1-0/+9
2022-04-13mm/slab_common: move dma-kmalloc caches creation into new_kmalloc_cache()Ohhoon Kwon1-15/+3
2022-04-06mm/slub: use stackdepot to save stack trace in objectsOliver Glitta1-0/+5
2022-02-21mm/slab_common: use helper function is_power_of_2()Miaohe Lin1-1/+1
2022-01-15Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-25/+9
2022-01-15mm: fix some comment errorsQuanfa Fu1-1/+1
2022-01-15mm: memcontrol: make cgroup_memory_nokmem staticMuchun Song1-1/+1
2022-01-15kasan: add ability to detect double-kmem_cache_destroy()Marco Elver1-1/+1
2022-01-15mm: slab: make slab iterator functions staticMuchun Song1-14/+3
2022-01-15mm/slab_common: use WARN() if cache still has objects on destroyMarco Elver1-8/+3
2022-01-06mm: Use struct slab in kmem_obj_info()Matthew Wilcox (Oracle)1-7/+7
2021-11-06mm: remove HARDENED_USERCOPY_FALLBACKStephen Kitt1-8/+0
2021-09-04mm: slub: move flush_cpu_slab() invocations __free_slab() invocations out of ...Sebastian Andrzej Siewior1-0/+2
2021-07-04Merge branch 'core-rcu-2021.07.04' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-1/+11
2021-06-29mm: memcg/slab: disable cache merging for KMALLOC_NORMAL cachesWaiman Long1-0/+7
2021-06-29mm: memcg/slab: create a new set of kmalloc-cg-<n> cachesWaiman Long1-9/+23
2021-06-29mm: slub: move sysfs slab alloc/free interfaces to debugfsFaiyaz Mohammed1-0/+2
2021-06-29mm, slub: change run-time assertion in kmalloc_index() to compile-timeHyeonggon Yoo1-4/+3
2021-06-29slab: use __func__ to trace function namegumingtao1-6/+6
2021-06-16mm/slub: fix redzoning for small allocationsKees Cook1-2/+1
2021-05-14mm, slub: move slub_debug static key enabling outside slab_mutexVlastimil Babka1-0/+10
2021-05-10mm/slub: Add Support for free path information of an objectManinder Singh1-1/+11
2021-04-30mm/slab_common: provide "slab_merge" option for !IS_ENABLED(CONFIG_SLAB_MERGE...Rafael Aquini1-0/+8
2021-03-08rcutorture: Add crude tests for mem_dump_obj()Paul E. McKenney1-0/+2
2021-03-08mm: Don't build mm_dump_obj() on CONFIG_PRINTK=n kernelsPaul E. McKenney1-0/+2
2021-02-26kasan, mm: optimize krealloc poisoningAndrey Konovalov1-6/+14
2021-02-26kasan, mm: fail krealloc on freed objectsAndrey Konovalov1-0/+3
2021-02-26kasan, mm: don't save alloc stacks twiceAndrey Konovalov1-0/+1
2021-02-26mm, kfence: insert KFENCE hooks for SLABAlexander Potapenko1-1/+4
2021-02-24kasan: fix bug detection via ksize for HW_TAGS modeAndrey Konovalov1-7/+9
2021-02-24mm: memcontrol: fix slub memory accountingMuchun Song1-2/+2
2021-02-24mm, slab, slub: stop taking cpu hotplug lockVlastimil Babka1-10/+0
2021-02-24mm, slab, slub: stop taking memory hotplug lockVlastimil Babka1-6/+2
2021-02-24mm/sl?b.c: remove ctor argument from kmem_cache_flagsNikolay Borisov1-1/+1
2021-01-22mm: Add mem_dump_obj() to print source of memory blockPaul E. McKenney1-0/+75
2020-12-22kasan, mm: allow cache merging with no metadataAndrey Konovalov1-1/+2
2020-12-22kasan: rename (un)poison_shadow to (un)poison_rangeAndrey Konovalov1-1/+1
2020-12-15mm: slab: clarify krealloc()'s behavior with __GFP_ZEROBartosz Golaszewski1-3/+3
2020-12-15mm/slab_common.c: use list_for_each_entry in dump_unreclaimable_slab()Hui Su1-2/+2
2020-08-12mm/slab_common.c: delete duplicated wordRandy Dunlap1-1/+1
2020-08-07mm: memcg/slab: use a single set of kmem_caches for all allocationsRoman Gushchin1-225/+5
2020-08-07mm: memcg/slab: remove redundant check in memcg_accumulate_slabinfo()Roman Gushchin1-3/+0
2020-08-07mm: memcg/slab: deprecate slab_root_cachesRoman Gushchin1-29/+8
2020-08-07mm: memcg/slab: remove memcg_kmem_get_cache()Roman Gushchin1-1/+1
2020-08-07mm: memcg/slab: simplify memcg cache creationRoman Gushchin1-10/+12
2020-08-07mm: memcg/slab: use a single set of kmem_caches for all accounted allocationsRoman Gushchin1-412/+47
2020-08-07mm: memcg/slab: deprecate memory.kmem.slabinfoRoman Gushchin1-27/+4
2020-08-07mm: memcg: convert vmstat slab counters to bytesRoman Gushchin1-2/+2
2020-08-07mm, slab: check GFP_SLAB_BUG_MASK before alloc_pages in kmalloc_orderLong Li1-0/+17
2020-08-07mm: ksize() should silently accept a NULL pointerWilliam Kucharski1-9/+5
2020-08-07mm, treewide: rename kzfree() to kfree_sensitive()Waiman Long1-4/+4
2020-07-24mm: memcg/slab: fix memory leak at non-root kmem_cache destroyMuchun Song1-7/+28
2020-06-26mm/slab: use memzero_explicit() in kzfree()Waiman Long1-1/+1
2020-06-02usercopy: mark dma-kmalloc caches as usercopy cachesVlastimil Babka1-1/+2
2020-04-10mm, slab_common: fix a typo in comment "eariler"->"earlier"Qiujun Huang1-1/+1
2020-04-07proc: faster open/read/close with "permanent" filesAlexey Dobriyan1-0/+1
2020-04-02mm, memcg: fix build error around the usage of kmem_cachesYafang Shao1-1/+1
2020-02-04proc: convert everything to "struct proc_ops"Alexey Dobriyan1-8/+7
2020-02-04mm: remove __kreallocFlorian Westphal1-22/+0
2020-01-13mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is validAdrian Huang1-1/+2
2019-12-04mm: memcg/slab: wait for !root kmem_cache refcnt killing on root kmem_cache d...Roman Gushchin1-0/+12
2019-12-01mm, slab_common: use enum kmalloc_cache_type to iterate over kmalloc cachesPengfei Li1-2/+3