函数逻辑报告 |
Source Code:fs\notify\mark.c |
Create Date:2022-07-29 10:48:08 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:fsnotify_put_mark
函数原型:void fsnotify_put_mark(struct fsnotify_mark *mark)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
struct fsnotify_mark * | mark |
230 | void * objp = NULL |
232 | bool free_conn = false |
235 | 如果非conn则 |
238 | 返回 |
249 | 如果hlist_empty( & list)则 |
251 | free_conn = true |
252 | 否则 |
255 | WRITE_ONCE( Head of list of marks for an object [mark ref] , NULL) |
256 | 自旋锁解锁 |
260 | 如果free_conn则 |
273 | 加自旋锁 |
274 | 添加链表项 |
275 | 自旋锁解锁 |
276 | 启动延迟工作队列 |
名称 | 描述 |
---|---|
audit_put_parent | |
audit_alloc_mark | |
audit_remove_mark | |
create_chunk | Call with group->mark_mutex held, releases it |
tag_chunk | he first tagged inode becomes root of tree |
prune_tree_chunks | Remove tree from chunks. If 'tagged' is set, remove tree only from tagged* chunks. The function expects tagged chunks are all at the beginning of the* chunks list. |
fsnotify_get_mark_safe | Get mark reference when we found the mark via lockless traversal of object* list. Mark can be already removed from the list by now and on its way to be* destroyed once SRCU period ends.* Also pin the group so it doesn't disappear under us. |
fsnotify_put_mark_wake | Puts marks and wakes up group destruction if necessary.* Pairs with fsnotify_get_mark_safe() |
fsnotify_detach_mark | Mark mark as detached, remove it from group list |
fsnotify_add_mark_locked | Attach an initialized mark to a given group and fs object.* These marks may be used for the fsnotify backend to determine which* event types should be delivered to which group. |
fsnotify_clear_marks_by_group | Clear any marks in a group with given type mask |
fsnotify_destroy_marks | Destroy all marks attached to an object via connector |
dnotify_flush | Called every time a file is closed. Looks first for a dnotify mark on the* inode. If one is found run all of the ->dn structures attached to that* mark for one relevant to this process closing the file and remove that* dnotify_struct |
fcntl_dirnotify | When a process calls fcntl to attach a dnotify watch to a directory it ends* up here. Allocate both a mark for fsnotify to add and a dnotify_struct to be* attached to the fsnotify_mark. |
inotify_remove_from_idr | Remove the mark from the idr (if present) and drop the reference* on the mark because it was in the idr. |
inotify_update_existing_watch | |
inotify_new_watch | |
SYSCALL_DEFINE2 | |
fanotify_remove_mark | |
fanotify_add_new_mark | |
fanotify_add_mark |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |