函数逻辑报告 | 
Source Code:mm\hugetlb.c | 
Create Date:2022-07-27 16:57:21 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:alloc_buddy_huge_page
函数原型:static struct page *alloc_buddy_huge_page(struct hstate *h, gfp_t gfp_mask, int nid, nodemask_t *nmask, nodemask_t *node_alloc_noretry)
返回类型:struct page
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct hstate * | h | |
| gfp_t | gfp_mask | |
| int | nid | |
| nodemask_t * | nmask | |
| nodemask_t * | node_alloc_noretry | 
| 1340 | order等于huge_page_order(h) | 
| 1342 | bool alloc_try_hard = true | 
| 1351 | 如果node_alloc_noretry且No static inline type checking - see Subtlety (1) above. (nid, * node_alloc_noretry)则alloc_try_hard = false | 
| 1354 | 如果alloc_try_hard则gfp_mask或等于__GFP_RETRY_MAYFAIL | 
| 1359 | 如果page则__count_vm_event(HTLB_BUDDY_PGALLOC) | 
| 1369 | 如果node_alloc_noretry且page且非alloc_try_hard则node_clear(nid, * node_alloc_noretry) | 
| 1377 | 如果node_alloc_noretry且非page且alloc_try_hard则The inline keyword gives the compiler room to decide to inline, or* not inline a function as it sees best(nid, * node_alloc_noretry) | 
| 1380 | 返回:page | 
| 名称 | 描述 | 
|---|---|
| alloc_fresh_huge_page | Common helper to allocate a fresh hugetlb page. All specific allocators* should use this function to get new hugetlb pages | 
| 源代码转换工具 开放的插件接口  | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码  |