Function report |
Source Code:mm\z3fold.c |
Create Date:2022-07-28 16:30:13 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:z3fold_free() - frees the allocation associated with the given handle*@pool: pool in which the allocation resided*@handle: handle associated with the allocation returned by z3fold_alloc()* In the case that the z3fold page in which the allocation resides
Proto:static void z3fold_free(struct z3fold_pool *pool, unsigned long handle)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct z3fold_pool * | pool | |
unsigned long | handle |
1229 | page = virt_to_page(kaddr) returns a valid pointer if and only if* virt_addr_valid(kaddr) returns true.(zhdr) |
1230 | page_claimed = st_and_set_bit - Set a bit and return its old value*@nr: Bit to set*@addr: Address to count from* This is an atomic fully-ordered operation (implied full memory barrier). |
1238 | If Not page_claimed Then |
1246 | Return |
1250 | bud = (handle & BUDDY_MASK) < zhdr->first_num is possible in encode_handle* but that doesn't matter. because the masking will result in the* correct buddy number. |
1254 | first_chunks = 0 |
1255 | Break |
1257 | middle_chunks = 0 |
1258 | Break |
1260 | last_chunks = 0 |
1261 | Break |
1262 | Default |
1270 | If Not page_claimed Then free_handle(handle) |
1273 | atomic64_dec( & pages_nr) |
1274 | Return |
1276 | If page_claimed Then |
1278 | Unlock a z3fold page |
1279 | Return |
1283 | put_z3fold_header(zhdr) |
1285 | Return |
1287 | If cpu < 0 || Not cpu_online(cpu) Then |
1300 | put_z3fold_header(zhdr) |
Name | Describe |
---|---|
z3fold_zpool_free |
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 |