函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:maybe_unlock_mmap_for_io

函数原型:static inline struct file *maybe_unlock_mmap_for_io(struct vm_fault *vmf, struct file *fpin)

返回类型:struct file

参数:

类型参数名称
struct vm_fault *vmf
struct file *fpin
372  flags等于FAULT_FLAG_xxx flags
374  如果fpin则返回:fpin
382  如果flags按位与Retry fault if blocking 按位或Don't drop mmap_sem and wait when retrying 的值的值恒等于Retry fault if blocking
384  fpin等于get_file(File we map to (can be NULL). )
385  lease a read lock
387  返回:fpin
调用者
名称描述
lock_page_maybe_drop_mmaplock_page_maybe_drop_mmap - lock the page, possibly dropping the mmap_sem*@vmf - the vm_fault for this fault.*@page - the page to lock.*@fpin - the pointer to the file we may pin (or is already pinned).
do_sync_mmap_readaheadSynchronous readahead happens when we don't even find a page in the page* cache at all. We don't want to perform IO under the mmap sem, so if we have* to drop the mmap sem we return the file that was pinned in order for us to do* that
do_async_mmap_readaheadAsynchronous readahead happens when we find the page and PG_readahead,* so we want to possibly extend the readahead further. We return the file that* was pinned if we have to drop the mmap_sem in order to do IO.
filemap_faultlemap_fault - read in file data for page fault handling*@vmf: struct vm_fault containing details of the fault* filemap_fault() is invoked via the vma operations vector for a* mapped memory region to read in file data during a page fault
fault_dirty_shared_pageHandle dirtying of a page in shared file mapping on a write fault.* The function expects the page to be locked and unlocks it.