函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\slub.c Create Date:2022-07-27 17:22:55
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:No kmalloc_node yet so do it by hand. We know that this is the first* slab on the node for this slabcache. There are no concurrent accesses* possible.* Note that this function only works on the kmem_cache_node* when allocating for the kmem_cache_node

函数原型:static void early_kmem_cache_node_alloc(int node)

返回类型:void

参数:

类型参数名称
intnode
3372  BUG_ON(The size of an object including metadata < kmem_cache_node的长度)
3374  page等于new_slab(kmem_cache_node, GFP_NOWAIT, node)
3376  BUG_ON(!page)
3377  如果page_to_nid(page)不等于node
3378  打印错误信息("SLUB: Unable to allocate memory from node %d\n", node)
3379  打印错误信息("SLUB: Allocating a useless per node structure in order to be able to continue\n")
3382  n等于 first free object
3383  BUG_ON(!n)
3388  n等于kasan_kmalloc(kmem_cache_node, n, kmem_cache_node的长度, GFP_KERNEL)
3390  first free object 等于get_freepointer(kmem_cache_node, n)
3391  SLUB 等于1
3392  frozen等于0
3393  node[node]等于n
3394  init_kmem_cache_node(n)
3395  inc_slabs_node(kmem_cache_node, node, objects)
3401  Management of partially allocated slabs.
调用者
名称描述
init_kmem_cache_nodes