函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:__zs_compact

函数原型:static void __zs_compact(struct zs_pool *pool, struct size_class *class)

返回类型:void

参数:

类型参数名称
struct zs_pool *pool
struct size_class *class
2269  struct zspage * dst_zspage = NULL
2271  加自旋锁
2272 src_zspage等于isolate_zspage(class, true)循环
2274  如果非Based on the number of unused allocated objects calculate* and return the number of pages that we can free.退出
2277  Starting object index within @s_page which used for live object * in the subpage. 等于0
2278  Source spage for migration which could be a subpage of zspage 等于get_first_page(src_zspage)
2280 dst_zspage等于isolate_zspage(class, false)循环
2286  如果非migrate_zspage(pool, class, & cc)则退出
2293  如果(dst_zspage == NULL)则退出
2296  putback_zspage - add @zspage into right class's fullness list*@class: destination class*@zspage: target page* Return @zspage's fullness_group
2301  自旋锁解锁
2302  cond_resched()
2303  加自旋锁
2306  如果src_zspageputback_zspage - add @zspage into right class's fullness list*@class: destination class*@zspage: target page* Return @zspage's fullness_group
2309  自旋锁解锁
调用者
名称描述
zs_compact