Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\vmalloc.c Create Date:2022-07-28 14:59:57
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:__get_vm_area_node

Proto:static struct vm_struct *__get_vm_area_node(unsigned long size, unsigned long align, unsigned long flags, unsigned long start, unsigned long end, int node, gfp_t gfp_mask, const void *caller)

Type:struct vm_struct

Parameter:

TypeParameterName
unsigned longsize
unsigned longalign
unsigned longflags
unsigned longstart
unsigned longend
intnode
gfp_tgfp_mask
const void *caller
2091  requested_size = size
2093  BUG_ON(in_interrupt())
2094  size = align the pointer to the (next) page boundary (size)
2095  If Value for the false possibility is greater at compile time(!size) Then Return NULL
2098  If flags & remap() and friends Then align = 1ul << clamp_t - return a value clamped to a given range using a given type*@type: the type of variable to use*@val: current value*@lo: minimum allowable value*@hi: maximum allowable value* This macro does no typechecking and uses temporary variables of type(int, get_count_order_long - get order after rounding @l up to power of 2*@l: parameter* it is same as get_count_order() but with long type parameter, PAGE_SHIFT determines the page size , IOREMAP_MAX_ORDER)
2102  area = kzalloc_node - allocate zeroed memory from a particular memory node.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc).*@node: memory node from which to allocate
2103  If Value for the false possibility is greater at compile time(!area) Then Return NULL
2106  If Not (flags & don't add guard page ) Then size += PAGE_SIZE
2109  va = Allocate a region of KVA of the specified size and alignment, within the* vstart and vend.
2110  If IS_ERR(va) Then
2111  kfree(area)
2112  Return NULL
2115  kasan_unpoison_vmalloc((void * )va_start, requested_size)
2117  setup_vmalloc_vm(area, va, flags, caller)
2119  Return area
Caller
NameDescribe
__get_vm_area
__get_vm_area_caller
get_vm_areaget_vm_area - reserve a contiguous kernel virtual area*@size: size of the area*@flags: %VM_IOREMAP for I/O mappings or VM_ALLOC* Search an area of @size in the kernel virtual mapping area,* and reserved it for out purposes. Returns the area descriptor
get_vm_area_caller
__vmalloc_node_range__vmalloc_node_range - allocate virtually contiguous memory*@size: allocation size*@align: desired alignment*@start: vm area range start*@end: vm area range end*@gfp_mask: flags for the page level allocator*@prot: protection mask for the allocated pages