函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:walk_pud_range

函数原型:static int walk_pud_range(p4d_t *p4d, unsigned long addr, unsigned long end, struct mm_walk *walk)

返回类型:int

参数:

类型参数名称
p4d_t *p4d
unsigned longaddr
unsigned longend
struct mm_walk *walk
81  ops等于ops
82  err等于0
84  pud等于pud_offset(p4d, addr)
85  循环
86  again :
87  next等于pud_addr_end(addr, end)
89  如果pte_holeerr等于pte_hole(addr, next, walk)
91  如果err退出
93  继续下一循环
96  如果pud_entry
99  如果ptl
100  err等于pud_entry(pud, addr, next, walk)
102  如果err退出
104  继续下一循环
108  split_huge_pud(vma, pud, addr)
109  如果The "pud_xxx()" functions here are trivial for a folded two-level* setup: the pmd is never bad, and a pmd always exists (as it's folded* into the pud entry)则转到:again
112  如果pmd_entrypte_entryerr等于walk_pmd_range(pud, addr, next, walk)
114  如果err退出
116 pud自加, addr等于next, addr不等于end循环
118  返回:err
调用者
名称描述
walk_p4d_range