函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:set_pmd_at

函数原型:static inline void set_pmd_at(struct mm_struct *mm, unsigned long addr, pmd_t *pmdp, pmd_t pmd)

返回类型:void

参数:

类型参数名称
struct mm_struct *mm
unsigned longaddr
pmd_t *pmdp
pmd_tpmd
1088  set_pmd(pmdp, pmd)
调用者
名称描述
madvise_cold_or_pageout_pte_range
__do_huge_pmd_anonymous_page
set_huge_zero_pageCaller must hold page table lock.
insert_pfn_pmd
copy_huge_pmd
do_huge_pmd_wp_page
do_huge_pmd_numa_pageNUMA hinting page fault entry point for trans huge pmds
madvise_free_huge_pmdReturn true if we do MADV_FREE successfully on entire pmd page.* Otherwise, return false.
move_huge_pmd
change_huge_pmdReturns* - 0 if PMD could not be locked* - 1 if PMD was locked but protections unchange and TLB flush unnecessary* - HPAGE_PMD_NR is protections changed and TLB flush necessary
collapse_huge_page
generic_pmdp_establishThis is an implementation of pmdp_establish() that is only suitable for an* architecture that doesn't have hardware dirty/accessed bits. In this case we* can't race with CPU which sets these bits and non-atomic aproach is fine.