函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:zs_free

函数原型:void zs_free(struct zs_pool *pool, unsigned long handle)

返回类型:void

参数:

类型参数名称
struct zs_pool *pool
unsigned longhandle
1551  如果此条件成立可能性小(为编译器优化)(!handle)则返回
1554  pin_tag(handle)
1555  obj等于handle_to_obj(handle)
1556  bj_to_location - get (, ) from encoded object value*@obj: the encoded object value*@page: page object resides in zspage*@obj_idx: object index
1557  zspage等于get_zspage(f_page)
1559  migrate_read_lock(zspage)
1561  get_zspage_mapping(zspage, & class_idx, & fullness)
1562  class等于size_class[class_idx]
1564  加自旋锁
1565  obj_free(class, obj)
1566  fullness等于Each size class maintains zspages in different fullness groups depending* on the number of live objects they contain. When allocating or freeing* objects, the fullness status of the page can change, say, from ALMOST_FULL
1567  如果fullness不等于ZS_EMPTY
1568  migrate_read_unlock(zspage)
1569  转到:out
1572  isolated等于is_zspage_isolated(zspage)
1573  migrate_read_unlock(zspage)
1575  如果此条件成立可能性大(为编译器优化)(!isolated)则free_zspage(pool, class, zspage)
1577  out :
1579  自旋锁解锁
1580  unpin_tag(handle)
1581  cache_free_handle(pool, handle)
调用者
名称描述
zs_zpool_free