函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\process_vm_access.c Create Date:2022-07-27 16:31:33
Last Modify:2020-03-17 21:52:24 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:compat_process_vm_rw

函数原型:static ssize_t compat_process_vm_rw(compat_pid_t pid, const struct compat_iovec __user *lvec, unsigned long liovcnt, const struct compat_iovec __user *rvec, unsigned long riovcnt, unsigned long flags, int vm_write)

返回类型:ssize_t

参数:

类型参数名称
compat_pid_tpid
const struct compat_iovec __user *lvec
unsigned longliovcnt
const struct compat_iovec __user *rvec
unsigned longriovcnt
unsigned longflags
intvm_write
321  iov_l等于iovstack_l
322  iov_r等于iovstack_r
324  rc等于负EFAULT
325  dir等于如果vm_writeWRITE否则generic data direction definitions
327  如果flags不等于0则返回:负EINVAL
330  rc等于compat_import_iovec(dir, lvec, liovcnt, UIO_MAXIOV shall be at least 16 1003.1g (5.4.1.1), & iov_l, & iter)
331  如果rc小于0则返回:rc
333  如果非iov_iter_count( & iter)则转到:free_iovecs
335  rc等于compat_rw_copy_check_uvector(Flag for rw_copy_check_uvector and compat_rw_copy_check_uvector* that indicates that they should check the contents of the iovec are* valid, but not check the memory that the iovec elements* points too., rvec, riovcnt, UIO_MAXIOV shall be at least 16 1003.1g (5.4.1.1), iovstack_r, & iov_r)
338  如果rc小于等于0则转到:free_iovecs
341  rc等于process_vm_rw_core - core of reading/writing pages from task specified*@pid: PID of process to read/write from/to*@iter: where to copy to/from locally*@rvec: iovec array specifying where to copy to/from in the other process*@riovcnt: size of rvec
343  free_iovecs :
344  如果iov_r不等于iovstack_r释放内存
346  释放内存
347  返回:rc
调用者
名称描述
COMPAT_SYSCALL_DEFINE6
COMPAT_SYSCALL_DEFINE6