函数逻辑报告 |
Source Code:fs\notify\fsnotify.c |
Create Date:2022-07-29 10:47:34 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:This is the main call to fsnotify. The VFS calls into hook specific functions* in linux/fsnotify.h. Those functions then in turn call here. Here will call* out to all of the registered fsnotify_group. Those groups can then use the
函数原型:int fsnotify(struct inode *to_tell, __u32 mask, const void *data, int data_is, const struct qstr *file_name, unsigned int cookie)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct inode * | to_tell | |
| __u32 | mask | |
| const void * | data | |
| int | data_is | |
| const struct qstr * | file_name | |
| unsigned int | cookie |
| 321 | struct fsnotify_iter_info iter_info = {} |
| 325 | ret等于0 |
| 328 | 如果data_is恒等于FSNOTIFY_EVENT_PATH则 |
| 329 | mnt等于real_mount(mnt) |
| 333 | 如果mask按位与This inode cares about things that happen to its children. Always set for* dnotify and inotify. 则mnt_or_sb_mask等于0 |
| 343 | 如果非i_fsnotify_marks且非s_fsnotify_marks且非mnt或非mnt_fsnotify_marks的值则返回:0 |
| 351 | 如果非mask按位与File was modified 的值且非test_mask按位与i_fsnotify_mask按位或mnt_or_sb_mask的值的值则返回:0 |
| 361 | 如果mnt则 |
| 375 | 如果ret且mask按位与ALL_FSNOTIFY_PERM_EVENTS则转到:out |
| 380 | ret等于0 |
| 381 | out : |
| 382 | 注销过期读锁 |
| 384 | 返回:ret |
| 名称 | 描述 |
|---|---|
| fsnotify_unmount_inodes | snotify_unmount_inodes - an sb is unmounting. handle any watched inodes.*@sb: superblock being unmounted.* Called during unmount with no locks held, so needs to be safe against* concurrent modifiers. We temporarily drop sb->s_inode_list_lock and CAN block. |
| __fsnotify_parent | Notify this dentry's parent about a child's events. |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |