且构建好了kmem_cache的slab|分配器,并由initkmem_list3[0]组织, 相应的array为initarray_cache;| (2)构建好了kmem_cache实例(管理arraycache_init),且构建好了|arraycache_init的slab分配器,并由initkmem_list3[1]组织,相应的array为
Allow API users of kmem_cache_create to specify that they don't want any slab merge or aliasing (with similar sized objects). Use this in kfence_test. The SKB (sk_buff) kmem_cache slab is critical for network performance. Network stack uses kmem_cache_{alloc,free}_bulk APIs to gain ...
void *kmem_cache_alloc(kmem_cache_t *cp, int kmflag); void kmem_cache_free(kmem_cache_t *cp, void *obj); void kmem_cache_set_move(kmem_cache_t *cp, kmem_cbrc_t (*move)(void *, void *, size_t *, void *)); [Synopsis for callback functions:] int (*constructor)(void *buf...
@@ -570,6 +570,21 @@ void *kmem_cache_alloc_node_noprof(struct kmem_cache *s, gfp_t flags, int node) __assume_slab_alignment __malloc; #define kmem_cache_alloc_node(...) alloc_hooks(kmem_cache_alloc_node_noprof(__VA_ARGS__)) /* * These macros allow declaring a kmem_bucket...