函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\kernel\ksysfs.c Create Date:2022-07-27 08:42:25
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:setup_data_data_read

函数原型:static ssize_t setup_data_data_read(struct file *fp, struct kobject *kobj, struct bin_attribute *bin_attr, char *buf, loff_t off, size_t count)

返回类型:ssize_t

参数:

类型参数名称
struct file *fp
struct kobject *kobj
struct bin_attribute *bin_attr
char *buf
loff_toff
size_tcount
152  ret等于0
157  ret等于kobj_to_setup_data_nr(kobj, & nr)
158  如果ret则返回:ret
161  ret等于get_setup_data_paddr(nr, & paddr)
162  如果ret则返回:ret
164  data等于memremap(paddr, data的长度, MEMREMAP_WB)
165  如果非data则返回:负ENOMEM
168  如果type恒等于SETUP_INDIRECTtype不等于SETUP_INDIRECT
170  paddr等于addr
171  len等于len
172  否则
173  paddr加等于data的长度
174  len等于len
177  如果off大于len
178  ret等于负EINVAL
179  转到:out
182  如果count大于lenoffcount等于lenoff
185  如果非count则转到:out
188  ret等于count
189  p等于memremap(paddr, len, MEMREMAP_WB)
190  如果非p
191  ret等于负ENOMEM
192  转到:out
194  memcpy(buf, p + off, count)
195  memunmap(p)
196  out :
197  memunmap(data)
198  返回:ret