函数逻辑报告 |
Source Code:fs\notify\inotify\inotify_user.c |
Create Date:2022-07-29 10:49:25 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:Remove the mark from the idr (if present) and drop the reference* on the mark because it was in the idr.
函数原型:static void inotify_remove_from_idr(struct fsnotify_group *group, struct inotify_inode_mark *i_mark)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
struct fsnotify_group * | group | |
struct inotify_inode_mark * | i_mark |
420 | struct inotify_inode_mark * found_i_mark = NULL |
423 | 加自旋锁 |
430 | 如果wd恒等于负1则 |
431 | WARN_ONCE(1, "%s: i_mark=%p i_mark->wd=%d i_mark->group=%p\n", __func__, i_mark, wd, Group this mark is for. Set on mark creation, stable until last ref * is dropped ) |
433 | 转到:out |
438 | 如果此条件成立可能性小(为编译器优化)(!found_i_mark)则 |
439 | WARN_ONCE(1, "%s: i_mark=%p i_mark->wd=%d i_mark->group=%p\n", __func__, i_mark, wd, Group this mark is for. Set on mark creation, stable until last ref * is dropped ) |
441 | 转到:out |
449 | 如果此条件成立可能性小(为编译器优化)(found_i_mark != i_mark)则 |
450 | WARN_ONCE(1, "%s: i_mark=%p i_mark->wd=%d i_mark->group=%p found_i_mark=%p found_i_mark->wd=%d found_i_mark->group=%p\n", __func__, i_mark, wd, Group this mark is for. Set on mark creation, stable until last ref * is dropped , found_i_mark, wd, Group this mark is for. Set on mark creation, stable until last ref * is dropped ) |
455 | 转到:out |
466 | BUG() |
469 | 删除释放idr |
471 | fsnotify_put_mark( & fsn_mark) |
472 | out : |
473 | wd等于负1 |
474 | 自旋锁解锁 |
476 | 如果found_i_mark则fsnotify_put_mark( & fsn_mark) |
名称 | 描述 |
---|---|
inotify_ignored_and_remove_idr | Send IN_IGNORED for this wd, remove this wd from the idr. |
inotify_new_watch |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |