From 6d37fef0af3546d7bd1c5f09277eead3a72efc5d Mon Sep 17 00:00:00 2001 From: Eric Paris Date: Thu, 17 Dec 2009 21:24:33 -0500 Subject: [PATCH] --- yaml --- r: 207682 b: refs/heads/master c: 33af5e32e0bb73c704b5e156f4411cdb53e6cc59 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/notify/mark.c | 6 ++++++ trunk/include/linux/fsnotify_backend.h | 3 +++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index bddc21da320d..5231e63f69dd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 90b1e7a57880fb66437ab7db39e1e65ca0372822 +refs/heads/master: 33af5e32e0bb73c704b5e156f4411cdb53e6cc59 diff --git a/trunk/fs/notify/mark.c b/trunk/fs/notify/mark.c index 0ebc3fd7089b..cb1d822f227f 100644 --- a/trunk/fs/notify/mark.c +++ b/trunk/fs/notify/mark.c @@ -190,6 +190,12 @@ void fsnotify_set_mark_mask_locked(struct fsnotify_mark *mark, __u32 mask) fsnotify_set_inode_mark_mask_locked(mark, mask); } +void fsnotify_set_mark_ignored_mask_locked(struct fsnotify_mark *mark, __u32 mask) +{ + assert_spin_locked(&mark->lock); + + mark->ignored_mask = mask; +} /* * Attach an initialized mark to a given group and fs object. diff --git a/trunk/include/linux/fsnotify_backend.h b/trunk/include/linux/fsnotify_backend.h index 489c881ed4ec..018416ec5ce4 100644 --- a/trunk/include/linux/fsnotify_backend.h +++ b/trunk/include/linux/fsnotify_backend.h @@ -266,6 +266,7 @@ struct fsnotify_mark { struct fsnotify_inode_mark i; struct fsnotify_vfsmount_mark m; }; + __u32 ignored_mask; /* events types to ignore */ struct list_head free_g_list; /* tmp list used when freeing this mark */ #define FSNOTIFY_MARK_FLAG_INODE 0x01 #define FSNOTIFY_MARK_FLAG_VFSMOUNT 0x02 @@ -373,6 +374,8 @@ extern struct fsnotify_mark *fsnotify_find_inode_mark(struct fsnotify_group *gro extern struct fsnotify_mark *fsnotify_find_vfsmount_mark(struct fsnotify_group *group, struct vfsmount *mnt); /* copy the values from old into new */ extern void fsnotify_duplicate_mark(struct fsnotify_mark *new, struct fsnotify_mark *old); +/* set the ignored_mask of a mark */ +extern void fsnotify_set_mark_ignored_mask_locked(struct fsnotify_mark *mark, __u32 mask); /* set the mask of a mark (might pin the object into memory */ extern void fsnotify_set_mark_mask_locked(struct fsnotify_mark *mark, __u32 mask); /* attach the mark to both the group and the inode */