函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:fault_in_pages_readable

函数原型:static inline int fault_in_pages_readable(const char __user *uaddr, int size)

返回类型:int

参数:

类型参数名称
const char __user *uaddr
intsize
583  __userend等于uaddrsize减1
585  如果此条件成立可能性小(为编译器优化)(size == 0)则返回:0
588  如果此条件成立可能性小(为编译器优化)(uaddr > end)则返回:负EFAULT
591  循环
592  如果此条件成立可能性小(为编译器优化)(__get_user(c, uaddr) != 0)则返回:负EFAULT
594  uaddr加等于PAGE_SIZE
595 uaddr小于等于end循环
598  如果uaddr按位与PAGE_MASK的值恒等于end按位与PAGE_MASK的值则
600  返回:__get_user(c, end)
604  返回:0
调用者
名称描述
copy_page_from_iter_iovec
iov_iter_fault_in_readableFault in one or more iovecs of the given iov_iter, to a maximum length of* bytes. For each iovec, fault in each page that constitutes the iovec.* Return 0 on success, or non-zero if the memory could not be accessed (i.e.* because it is an invalid address).