函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:walk_pmd_range

函数原型:static int walk_pmd_range(pud_t *pud, unsigned long addr, unsigned long end, struct mm_walk *walk)

返回类型:int

参数:

类型参数名称
pud_t *pud
unsigned longaddr
unsigned longend
struct mm_walk *walk
35  ops等于ops
36  err等于0
38  pmd等于pmd_offset(pud, addr)
39  循环
40  again :
41  next等于pmd_addr_end(addr, end)
42  如果pmd_none( * pmd)或非vma
43  如果pte_holeerr等于pte_hole(addr, next, walk)
45  如果err退出
47  继续下一循环
53  如果pmd_entryerr等于pmd_entry(pmd, addr, next, walk)
55  如果err退出
62  如果非pte_entry则继续下一循环
65  split_huge_pmd(vma, pmd, addr)
66  如果This is a noop if Transparent Hugepage Support is not built into* the kernel则转到:again
68  err等于walk_pte_range(pmd, addr, next, walk)
69  如果err退出
71 pmd自加, addr等于next, addr不等于end循环
73  返回:err
调用者
名称描述
walk_pud_range