函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:We don't consider PMD mapped swapping or file mapped pages because THP does* not support them for now.* Caller should make sure that pmd_trans_huge(pmd) is true.

函数原型:static enum mc_target_type get_mctgt_type_thp(struct vm_area_struct *vma, unsigned long addr, pmd_t pmd, union mc_target *target)

返回类型:enum mc_target_type

参数:

类型参数名称
struct vm_area_struct *vma
unsigned longaddr
pmd_tpmd
union mc_target *target
5450  struct page * page = NULL
5451  ret等于MC_TARGET_NONE
5453  如果此条件成立可能性小(为编译器优化)(is_swap_pmd(pmd))则
5454  VM_BUG_ON(thp_migration_supported() && !is_pmd_migration_entry(pmd))
5456  返回:ret
5458  page等于Currently stuck as a macro due to indirect forward reference to* linux/mmzone.h's __section_mem_map_addr() definition:(pmd)
5459  VM_BUG_ON_PAGE(!page || !PageHead(page), page)
5460  如果非flags按位与Types of charges to be moved.的值则返回:ret
5462  如果mem_cgroup恒等于from
5463  ret等于MC_TARGET_PAGE
5464  如果target
5465  get_page(page)
5466  page等于page
5469  返回:ret
调用者
名称描述
mem_cgroup_count_precharge_pte_range
mem_cgroup_move_charge_pte_range