函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:llow_pfn - look up PFN at a user virtual address*@vma: memory mapping*@address: user virtual address*@pfn: location to store found PFN* Only IO mappings and raw PFN mappings are allowed.* Return: zero and the pfn at @pfn on success, -ve otherwise.

函数原型:int follow_pfn(struct vm_area_struct *vma, unsigned long address, unsigned long *pfn)

返回类型:int

参数:

类型参数名称
struct vm_area_struct *vma
unsigned longaddress
unsigned long *pfn
4387  ret等于负EINVAL
4391  如果非Flags, see mm.h. 按位与Memory mapped I/O or similar 按位或Page-ranges managed without "struct page", just pure PFN 的值的值则返回:ret
4394  ret等于follow_pte(The address space we belong to. , address, & ptep, & ptl)
4395  如果ret则返回:ret
4397  pfn等于pte_pfn( * ptep)
4398  pte_unmap_unlock(ptep, ptl)
4399  返回:0
调用者
名称描述
get_vaddr_framesget_vaddr_frames() - map virtual addresses to pfns*@start: starting user address*@nr_frames: number of pages / pfns from start to map*@gup_flags: flags modifying lookup behaviour*@vec: structure which receives pages / pfns of the addresses mapped.