Function report |
Source Code:mm\percpu.c |
Create Date:2022-07-28 14:26:29 |
Last Modify:2022-05-23 13:52:24 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:pcpu_alloc_area - allocates an area from a pcpu_chunk*@chunk: chunk of interest*@alloc_bits: size of request in allocation units*@align: alignment of area (max PAGE_SIZE)*@start: bit_off to start searching* This function takes in a @start offset to begin
Proto:static int pcpu_alloc_area(struct pcpu_chunk *chunk, int alloc_bits, size_t align, int start)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct pcpu_chunk * | chunk | |
int | alloc_bits | |
size_t | align | |
int | start |
1190 | align_mask = If align Then align - 1 Else 0 |
1194 | lockdep_assert_held( & pcpu_lock) |
1196 | oslot = pcpu_chunk_slot(chunk) |
1212 | bitmap_set( allocation map , bit_off, alloc_bits) |
1216 | bitmap_clear( boundary map , bit_off + 1, alloc_bits - 1) |
1222 | If bit_off == lock position of first free Then lock position of first free = Find the next zero bit in a memory region. |
1232 | Return bit_off * PCPU_MIN_ALLOC_SIZE |
Name | Describe |
---|---|
pcpu_alloc | pcpu_alloc - the percpu allocator*@size: size of area to allocate in bytes*@align: alignment of area (max PAGE_SIZE)*@reserved: allocate from the reserved chunk if available*@gfp: allocation flags* Allocate percpu area of @size bytes aligned at @align |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |