Lines Matching refs:fsn_mark
912 static __u32 fanotify_mark_remove_from_mask(struct fsnotify_mark *fsn_mark, in fanotify_mark_remove_from_mask() argument
920 spin_lock(&fsn_mark->lock); in fanotify_mark_remove_from_mask()
922 oldmask = fsn_mark->mask; in fanotify_mark_remove_from_mask()
923 fsn_mark->mask &= ~mask; in fanotify_mark_remove_from_mask()
925 fsn_mark->ignored_mask &= ~mask; in fanotify_mark_remove_from_mask()
933 *destroy = !((fsn_mark->mask | fsn_mark->ignored_mask) & ~umask); in fanotify_mark_remove_from_mask()
934 spin_unlock(&fsn_mark->lock); in fanotify_mark_remove_from_mask()
943 struct fsnotify_mark *fsn_mark = NULL; in fanotify_remove_mark() local
948 fsn_mark = fsnotify_find_mark(connp, group); in fanotify_remove_mark()
949 if (!fsn_mark) { in fanotify_remove_mark()
954 removed = fanotify_mark_remove_from_mask(fsn_mark, mask, flags, in fanotify_remove_mark()
956 if (removed & fsnotify_conn_mask(fsn_mark->connector)) in fanotify_remove_mark()
957 fsnotify_recalc_mask(fsn_mark->connector); in fanotify_remove_mark()
959 fsnotify_detach_mark(fsn_mark); in fanotify_remove_mark()
962 fsnotify_free_mark(fsn_mark); in fanotify_remove_mark()
965 fsnotify_put_mark(fsn_mark); in fanotify_remove_mark()
993 static __u32 fanotify_mark_add_to_mask(struct fsnotify_mark *fsn_mark, in fanotify_mark_add_to_mask() argument
999 spin_lock(&fsn_mark->lock); in fanotify_mark_add_to_mask()
1001 oldmask = fsn_mark->mask; in fanotify_mark_add_to_mask()
1002 fsn_mark->mask |= mask; in fanotify_mark_add_to_mask()
1004 fsn_mark->ignored_mask |= mask; in fanotify_mark_add_to_mask()
1006 fsn_mark->flags |= FSNOTIFY_MARK_FLAG_IGNORED_SURV_MODIFY; in fanotify_mark_add_to_mask()
1008 spin_unlock(&fsn_mark->lock); in fanotify_mark_add_to_mask()
1058 struct fsnotify_mark *fsn_mark; in fanotify_add_mark() local
1062 fsn_mark = fsnotify_find_mark(connp, group); in fanotify_add_mark()
1063 if (!fsn_mark) { in fanotify_add_mark()
1064 fsn_mark = fanotify_add_new_mark(group, connp, type, fsid); in fanotify_add_mark()
1065 if (IS_ERR(fsn_mark)) { in fanotify_add_mark()
1067 return PTR_ERR(fsn_mark); in fanotify_add_mark()
1070 added = fanotify_mark_add_to_mask(fsn_mark, mask, flags); in fanotify_add_mark()
1071 if (added & ~fsnotify_conn_mask(fsn_mark->connector)) in fanotify_add_mark()
1072 fsnotify_recalc_mask(fsn_mark->connector); in fanotify_add_mark()
1075 fsnotify_put_mark(fsn_mark); in fanotify_add_mark()