Home
last modified time | relevance | path

Searched refs:slab (Results 1 – 25 of 98) sorted by relevance

1234

/linux/mm/
A Dslab.h52 struct slab { struct
174 static inline void slab_set_pfmemalloc(struct slab *slab) in slab_set_pfmemalloc() argument
179 static inline void slab_clear_pfmemalloc(struct slab *slab) in slab_clear_pfmemalloc() argument
189 static inline void *slab_address(const struct slab *slab) in slab_address() argument
194 static inline int slab_nid(const struct slab *slab) in slab_nid() argument
214 static inline int slab_order(const struct slab *slab) in slab_order() argument
219 static inline size_t slab_size(const struct slab *slab) in slab_size() argument
324 const struct slab *slab, void *x) in nearest_obj() argument
344 const struct slab *slab, void *obj) in obj_to_index() argument
352 const struct slab *slab) in objs_per_slab() argument
[all …]
A Dslub.c1021 slab, slab->objects, slab->inuse, slab->freelist, in print_slab_info()
2063 struct slab *slab; in prepare_slab_obj_exts_hook() local
2191 struct slab *slab; in memcg_slab_post_charge() local
2408 struct slab *slab; in alloc_slab_page() local
2559 struct slab *slab; in allocate_slab() local
2875 struct slab *slab; in get_any_partial() local
3241 slab = c->slab; in flush_slab()
3260 struct slab *slab = c->slab; in __flush_cpu_slab() local
3765 c->slab = slab; in ___slab_alloc()
3884 c->slab = slab; in ___slab_alloc()
[all …]
/linux/drivers/md/dm-vdo/
A Dslab-depot.c625 struct vdo_slab *slab = journal->slab; in update_tail_block_location() local
1071 struct vdo_slab *slab = block->slab; in finish_reference_block_write() local
1223 struct vdo_slab *slab = journal->slab; in reclaim_journal_space() local
2203 struct vdo_slab *slab = block->slab; in unpack_reference_block() local
2243 struct vdo_slab *slab = block->slab; in finish_reference_block_load() local
2291 slab->free_blocks = slab->block_count; in load_reference_blocks()
2393 .slab = slab, in allocate_slab_counters()
2412 struct vdo_slab *slab = journal->slab; in finish_loading_journal() local
2961 scrubber->slab = slab; in scrub_next_slab()
3176 slab->allocator->open_slab = slab; in open_slab()
[all …]
A Dslab-depot.h77 struct vdo_slab *slab; member
160 struct vdo_slab *slab; member
293 struct vdo_slab *slab; member
506 bool __must_check vdo_attempt_replay_into_slab(struct vdo_slab *slab,
523 int __must_check vdo_acquire_provisional_reference(struct vdo_slab *slab,
/linux/tools/mm/
A Dslabinfo.c54 struct slabinfo *slab; member
1143 a->slab = s; in link_slabs()
1248 slab->alias = 0; in read_slab_dir()
1249 slab->refs = 0; in read_slab_dir()
1305 slab++; in read_slab_dir()
1326 for (slab = slabinfo; (slab < slabinfo + slabs) && in output_slabs()
1329 if (slab->alias) in output_slabs()
1344 slab_debug(slab); in output_slabs()
1346 ops(slab); in output_slabs()
1348 slabcache(slab); in output_slabs()
[all …]
/linux/Documentation/ABI/testing/
A Dsysfs-kernel-slab1 What: /sys/kernel/slab
13 What: /sys/kernel/slab/<cache>/aliases
22 What: /sys/kernel/slab/<cache>/align
31 What: /sys/kernel/slab/<cache>/alloc_calls
131 What: /sys/kernel/slab/<cache>/ctor
139 new slab is allocated.
242 a frozen slab (i.e. a remote cpu slab). It can be written to
338 What: /sys/kernel/slab/<cache>/order
346 number of objects per slab. If a slab cannot be allocated
384 when a new slab is allocated.
[all …]
/linux/mm/kasan/
A Dcommon.c145 void __kasan_poison_slab(struct slab *slab) in __kasan_poison_slab() argument
147 struct page *page = slab_page(slab); in __kasan_poison_slab()
440 struct slab *slab; in __kasan_krealloc() local
458 slab = virt_to_slab(object); in __kasan_krealloc()
461 if (unlikely(!slab)) in __kasan_krealloc()
501 struct slab *slab; in __kasan_mempool_poison_object() local
517 slab = folio_slab(folio); in __kasan_mempool_poison_object()
528 struct slab *slab; in __kasan_mempool_unpoison_object() local
531 slab = virt_to_slab(ptr); in __kasan_mempool_unpoison_object()
537 if (unlikely(!slab)) { in __kasan_mempool_unpoison_object()
[all …]
A Dreport.c498 struct slab *slab; in complete_report_info() local
506 slab = kasan_addr_to_slab(addr); in complete_report_info()
507 if (slab) { in complete_report_info()
508 info->cache = slab->slab_cache; in complete_report_info()
509 info->object = nearest_obj(info->cache, slab, addr); in complete_report_info()
A Dgeneric.c526 struct slab *slab = kasan_addr_to_slab(addr); in __kasan_record_aux_stack() local
531 if (is_kfence_address(addr) || !slab) in __kasan_record_aux_stack()
534 cache = slab->slab_cache; in __kasan_record_aux_stack()
535 object = nearest_obj(cache, slab, addr); in __kasan_record_aux_stack()
/linux/scripts/gdb/linux/
A Dslab.py38 def slab_folio(slab): argument
41 def slab_address(slab): argument
43 folio = slab_folio(slab)
155 def __fill_map(obj_map, cache, slab): argument
156 p = slab['freelist']
157 addr = slab_address(slab)
167 __fill_map(obj_map, cache, slab)
168 addr = slab_address(slab)
283 def count_free(slab): argument
285 for slab in lists.list_for_each_entry(slab, slab_ptr_type, 'slab_list'):
[all …]
/linux/tools/cgroup/
A Dmemcg_slabinfo.py73 for slab in list_for_each_entry('struct slab', n.partial.address_of_(),
75 nr_objs += fn(slab)
79 def count_free(slab): argument
80 return slab.objects - slab.inuse
194 for slab in for_each_slab(prog):
195 objcg_vec_raw = slab.memcg_data.value_()
198 cache = slab.slab_cache
/linux/lib/
A Dsg_pool.c13 struct kmem_cache *slab; member
150 sgp->slab = kmem_cache_create(sgp->name, size, 0, in sg_pool_init()
152 if (!sgp->slab) { in sg_pool_init()
159 sgp->slab); in sg_pool_init()
174 kmem_cache_destroy(sgp->slab); in sg_pool_init()
/linux/include/linux/
A Dkfence.h221 bool __kfence_obj_info(struct kmem_obj_info *kpp, void *object, struct slab *slab);
245 static inline bool __kfence_obj_info(struct kmem_obj_info *kpp, void *object, struct slab *slab) in __kfence_obj_info() argument
A Dkasan.h14 struct slab;
126 void __kasan_poison_slab(struct slab *slab);
127 static __always_inline void kasan_poison_slab(struct slab *slab) in kasan_poison_slab() argument
130 __kasan_poison_slab(slab); in kasan_poison_slab()
410 static inline void kasan_poison_slab(struct slab *slab) {} in kasan_poison_slab() argument
/linux/Documentation/mm/
A Dslub.rst38 slab_debug=<Debug-Options>,<slab name1>,<slab name2>,...
57 caused higher minimum slab orders
105 /sys/kernel/slab/<slab name>/
120 used on the wrong slab.
159 slab in order for the allocation order to be acceptable. In
161 allocations on a slab without consulting centralized resources
172 of a slab cache with large object sizes into one high order
230 BUG <slab cache affected>: <What went wrong>
234 INFO: Slab <address> <slab information>
242 set for the slab. slab_debug sets that option)
[all …]
/linux/Documentation/translations/zh_CN/dev-tools/
A Dkasan.rst64 通用KASAN支持在所有的slab、page_alloc、vmap、vmalloc、堆栈和全局内存
67 基于软件标签的KASAN支持slab、page_alloc、vmalloc和堆栈内存。
69 基于硬件标签的KASAN支持slab、page_alloc和不可执行的vmalloc内存。
71 对于slab,两种软件KASAN模式都支持SLUB和SLAB分配器,而基于硬件标签的
89 要将受影响的slab对象的alloc和free堆栈跟踪包含到报告中,请启用
140 BUG: KASAN: slab-out-of-bounds in kmalloc_oob_right+0xa8/0xbc [kasan_test]
196 flags: 0x200000000000100(slab)
211 堆栈跟踪、所访问内存分配位置的堆栈跟踪(对于访问了slab对象的情况)以及对象
213 slab对象的描述以及关于访问的内存页的信息。
231 请注意,KASAN错误标题(如 ``slab-out-of-bounds`` 或 ``use-after-free`` )
/linux/Documentation/translations/zh_TW/dev-tools/
A Dkasan.rst64 通用KASAN支持在所有的slab、page_alloc、vmap、vmalloc、堆棧和全局內存
67 基於軟件標籤的KASAN支持slab、page_alloc、vmalloc和堆棧內存。
69 基於硬件標籤的KASAN支持slab、page_alloc和不可執行的vmalloc內存。
71 對於slab,兩種軟件KASAN模式都支持SLUB和SLAB分配器,而基於硬件標籤的
89 要將受影響的slab對象的alloc和free堆棧跟蹤包含到報告中,請啓用
140 BUG: KASAN: slab-out-of-bounds in kmalloc_oob_right+0xa8/0xbc [kasan_test]
196 flags: 0x200000000000100(slab)
211 堆棧跟蹤、所訪問內存分配位置的堆棧跟蹤(對於訪問了slab對象的情況)以及對象
213 slab對象的描述以及關於訪問的內存頁的信息。
231 請注意,KASAN錯誤標題(如 ``slab-out-of-bounds`` 或 ``use-after-free`` )
/linux/net/dccp/
A Dccid.c81 struct kmem_cache *slab; in ccid_kmem_cache_create() local
88 slab = kmem_cache_create(slab_name_fmt, sizeof(struct ccid) + obj_size, 0, in ccid_kmem_cache_create()
90 return slab; in ccid_kmem_cache_create()
93 static void ccid_kmem_cache_destroy(struct kmem_cache *slab) in ccid_kmem_cache_destroy() argument
95 kmem_cache_destroy(slab); in ccid_kmem_cache_destroy()
/linux/tools/perf/Documentation/
A Dperf-kmem.txt47 Sort the output (default: 'frag,hit,bytes' for slab and 'bytes,hit'
49 pingpong, frag' for slab and 'page, callsite, bytes, hit, order,
51 mode selection options - i.e. --slab, --page, --alloc and/or --caller.
60 --slab::
/linux/mm/kfence/
A Dcore.c419 struct slab *slab; in kfence_guarded_alloc() local
487 slab = virt_to_slab((void *)meta->addr); in kfence_guarded_alloc()
488 slab->slab_cache = cache; in kfence_guarded_alloc()
489 slab->objects = 1; in kfence_guarded_alloc()
615 struct slab *slab = page_slab(nth_page(pages, i)); in kfence_init_pool() local
620 __folio_set_slab(slab_folio(slab)); in kfence_init_pool()
622 slab->obj_exts = (unsigned long)&kfence_metadata_init[i / 2 - 1].obj_exts | in kfence_init_pool()
667 struct slab *slab = page_slab(nth_page(pages, i)); in kfence_init_pool() local
672 slab->obj_exts = 0; in kfence_init_pool()
674 __folio_clear_slab(slab_folio(slab)); in kfence_init_pool()
/linux/tools/testing/scatterlist/
A DMakefile17 … $(OFILES) scatterlist.c linux/scatterlist.h linux/highmem.h linux/kmemleak.h linux/slab.h asm/io.h
31 @touch linux/slab.h
/linux/Documentation/translations/zh_CN/mm/
A Dsplit_page_table_lock.rst62 确保架构不使用slab分配器来分配页表:slab使用page->slab_cache来分配其页
/linux/Documentation/translations/zh_CN/core-api/
A Dmemory-allocation.rst131 如果你需要分配许多相同的对象,你可以使用slab缓存分配器。在使用缓存之前,应该用
137 和 `kvmalloc` 分配的内存。slab缓存应该用kmem_cache_free()来释放。不要忘记用
A Dmm-api.rst49 include/linux/slab.h
51 mm/slab.c
/linux/tools/testing/memblock/
A DMakefile11 DEP_OFILES = memblock.o lib/slab.o mmzone.o slab.o cmdline.o

Completed in 56 milliseconds

1234