函数逻辑报告 | 
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 插件可实现:逻辑报告 代码生成和批量转换代码  |