函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\readdir.c Create Date:2022-07-29 10:36:32
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:iterate_dir

函数原型:int iterate_dir(struct file *file, struct dir_context *ctx)

返回类型:int

参数:

类型参数名称
struct file *file
struct dir_context *ctx
42  inode等于file_inode(file)
43  bool shared = false
44  res等于负ENOTDIR
45  如果iterate_sharedshared = true
47  否则如果非iterate则转到:out
50  res等于security_file_permission(file, MAY_READ)
51  如果res则转到:out
54  如果sharedres等于down_read_killable( & i_rwsem)
56  否则res等于lock for writing
58  如果res则转到:out
61  res等于负ENOENT
62  如果非IS_DEADDIR(inode)则
63  pos等于f_pos
64  如果sharedres等于iterate_shared(file, ctx)
66  否则res等于iterate(file, ctx)
68  f_pos等于pos
69  snotify_access - file was read
70  file_accessed(file)
72  如果sharedinode_unlock_shared(inode)
74  否则inode_unlock(inode)
76  out :
77  返回:res
调用者
名称描述
SYSCALL_DEFINE3
SYSCALL_DEFINE3
ksys_getdents64
COMPAT_SYSCALL_DEFINE3
COMPAT_SYSCALL_DEFINE3