函数逻辑报告 |
Source Code:mm\page_owner.c |
Create Date:2022-07-27 17:58:44 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:__dump_page_owner
函数原型:void __dump_page_owner(struct page *page)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct page * | page |
| 404 | page_ext等于lookup_page_ext(page) |
| 412 | 如果此条件成立可能性小(为编译器优化)(!page_ext)则 |
| 413 | 打印警报信息("There is not page extension available.\n") |
| 414 | 返回 |
| 417 | page_owner等于get_page_owner(page_ext) |
| 422 | 打印警报信息("page_owner info is not present (never set?)\n") |
| 423 | 返回 |
| 426 | 如果st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from则打印警报信息("page_owner tracks the page as allocated\n") |
| 428 | 否则打印警报信息("page_owner tracks the page as freed\n") |
| 431 | 打印警报信息("page last allocated via order %u, migratetype %s, gfp_mask %#x(%pGg)\n", order, migratetype_names[mt], gfp_mask, & gfp_mask) |
| 435 | 如果非handle则 |
| 436 | 打印警报信息("page_owner allocation stack trace missing\n") |
| 437 | 否则 |
| 442 | handle等于READ_ONCE(free_handle) |
| 443 | 如果非handle则 |
| 444 | 打印警报信息("page_owner free stack trace missing\n") |
| 445 | 否则 |
| 447 | 打印警报信息("page last free stack trace:\n") |
| 451 | 如果last_migrate_reason不等于负1则打印警报信息("page has been migrated, last migrate reason: %s\n", migrate_reason_names[last_migrate_reason]) |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |