函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\test_overflow.c Create Date:2022-07-27 07:28:36
Last Modify:2022-05-18 10:03:51 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Allocator uses a trailing node argument --------+ (e.g. kmalloc_node())* Allocator uses the gfp_t argument -----------+ | (e.g. kmalloc())* Allocator uses a special leading argument + | | (e.g. devm_kmalloc())* | | |

函数原型:static int __attribute__((__section__(".init.text"))) __attribute__((__cold__))test_vmalloc_node(void *arg)

返回类型:int

参数:

类型参数名称
void *arg
552  a等于5乘4096
552  b等于0的反除5乘4096加1
552  ptr等于vmalloc_node(1, ( - 1))
552  如果非ptr
552  printk("\0014"KBUILD_MODNAME": vmalloc_node failed regular allocation?!\n", )
552  返回:1
552  循环
552  如果(ptr != NULL)则kfree(ptr)
552  当0循环
552  ptr等于vmalloc_node(a * b, ( - 1))
552  如果非ptr
552  printk("\0014"KBUILD_MODNAME": vmalloc_node unexpectedly failed bad wrapping?!\n", )
552  返回:1
552  循环
552  如果(ptr != NULL)则kfree(ptr)
552  当0循环
552  ptr等于vmalloc_node(array_size() - Calculate size of 2-dimensional array.*@a: dimension one*@b: dimension two* Calculates size of 2-dimensional array: @a *@b.* Returns: number of bytes needed to represent the array or SIZE_MAX on* overflow., ( - 1))
552  如果ptr
552  printk("\0014"KBUILD_MODNAME": vmalloc_node missed saturation!\n", )
552  循环
552  如果(ptr != NULL)则kfree(ptr)
552  当0循环
552  返回:1
552  printk("\0016"KBUILD_MODNAME": vmalloc_node detected saturation\n", )
552  返回:0
调用者
名称描述
test_overflow_allocationAllocator uses a trailing node argument --------+ (e.g. kmalloc_node())* Allocator uses the gfp_t argument -----------+ | (e.g. kmalloc())* Allocator uses a special leading argument + | | (e.g. devm_kmalloc())* | | |