函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:The following ifdef needed to get the 5level-fixup.h header to work.* Remove it when 5level-fixup.h has been removed.

函数原型:static inline p4d_t *p4d_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long address)

返回类型:p4d_t

参数:

类型参数名称
struct mm_struct *mm
pgd_t *pgd
unsigned longaddress
1851  返回:如果此条件成立可能性小(为编译器优化)(The "pgd_xxx()" functions here are trivial for a folded two-level* setup: the p4d is never bad, and a p4d always exists (as it's folded* into the pgd entry))且__p4d_alloc(mm, pgd, address)则NULL否则p4d_offset(pgd, address)
调用者
名称描述
ioremap_p4d_range
init_espfix_bsp
map_tboot_page
copy_p4d_range
__get_locked_pte
remap_p4d_range
apply_to_p4d_range
__handle_mm_faultBy the time we get here, we already hold the mm semaphore* The mmap_sem may have been released depending on flags and our* return value. See filemap_fault() and __lock_page_or_retry().
alloc_new_pmd
vmap_p4d_range
kasan_populate_early_shadowkasan_populate_early_shadow - populate shadow memory region with* kasan_early_shadow_page*@shadow_start - start of the memory range to populate*@shadow_end - end of the memory range to populate
mm_alloc_pmd