函数逻辑报告 |
Source Code:mm\zsmalloc.c |
Create Date:2022-07-27 18:02:26 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:zs_map_object - get address of allocated object from handle.*@pool: pool from which the object was allocated*@handle: handle returned from zs_malloc*@mm: maping mode to use* Before using an object allocated from zs_malloc, it must be mapped using
函数原型:void *zs_map_object(struct zs_pool *pool, unsigned long handle, enum zs_mapmode mm)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
struct zs_pool * | pool | |
unsigned long | handle | |
enum zs_mapmode | mm |
1311 | BUG_ON(in_interrupt()) |
1316 | obj等于handle_to_obj(handle) |
1318 | zspage等于get_zspage(page) |
1321 | migrate_read_lock(zspage) |
1323 | get_zspage_mapping(zspage, & class_idx, & fg) |
1324 | class等于size_class[class_idx] |
1325 | off等于* Size of objects stored in this class. Must be multiple * of ZS_ALIGN.乘obj_idx按位与PAGE_MASK的反 |
1327 | area等于Must be an lvalue. Since @var must be a simple identifier,* we force a syntax error here if it isn't.(per-cpu VM mapping areas for zspage accesses that cross page boundaries ) |
1328 | mapping mode 等于mm |
1332 | ret等于 address of kmap_atomic()'ed pages 加off |
1333 | 转到:out |
1338 | pages[1]等于get_next_page(page) |
1341 | ret等于__zs_map_object(area, pages, off, * Size of objects stored in this class. Must be multiple * of ZS_ALIGN.) |
1342 | out : |
1343 | 如果此条件成立可能性大(为编译器优化)(!PageHugeObject(page))则ret加等于ZS_HANDLE_SIZE |
1346 | 返回:ret |
名称 | 描述 |
---|---|
zs_zpool_map |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |