函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:change_p4d_range

函数原型:static inline unsigned long change_p4d_range(struct vm_area_struct *vma, pgd_t *pgd, unsigned long addr, unsigned long end, pgprot_t newprot, int dirty_accountable, int prot_numa)

返回类型:unsigned long

参数:

类型参数名称
struct vm_area_struct *vma
pgd_t *pgd
unsigned longaddr
unsigned longend
pgprot_tnewprot
intdirty_accountable
intprot_numa
287  pages等于0
289  p4d等于p4d_offset(pgd, addr)
290  循环
291  next等于p4d_addr_end(addr, end)
292  如果p4d_none_or_clear_bad(p4d)则继续下一循环
294  pages加等于change_pud_range(vma, p4d, addr, next, newprot, dirty_accountable, prot_numa)
296 p4d自加, addr等于next, addr不等于end循环
298  返回:pages
调用者
名称描述
change_protection_range