diff options
author | Eric Paris <eparis@redhat.com> | 2009-12-17 21:24:24 -0500 |
---|---|---|
committer | Eric Paris <eparis@redhat.com> | 2010-07-28 09:58:52 -0400 |
commit | 098cf2fc77ee190c92bf9d08d69a13305f2487ec (patch) | |
tree | f6727bf583df63edb751e2887d40287b3bd37809 | |
parent | 4136510dd61a1ca151fc5b9d8c1ebd5a8ce2e8f4 (diff) |
fsnotify: add flags to fsnotify_mark_entries
To differentiate between inode and vfsmount (or other future) types of
marks we add a flags field and set the inode bit on inode marks (the only
currently supported type of mark)
Signed-off-by: Eric Paris <eparis@redhat.com>
-rw-r--r-- | fs/notify/inode_mark.c | 2 | ||||
-rw-r--r-- | include/linux/fsnotify_backend.h | 3 |
2 files changed, 5 insertions, 0 deletions
diff --git a/fs/notify/inode_mark.c b/fs/notify/inode_mark.c index 6731408c49f7..b00065842b3e 100644 --- a/fs/notify/inode_mark.c +++ b/fs/notify/inode_mark.c | |||
@@ -322,6 +322,8 @@ int fsnotify_add_mark(struct fsnotify_mark_entry *entry, | |||
322 | if (unlikely(!inode)) | 322 | if (unlikely(!inode)) |
323 | return -EINVAL; | 323 | return -EINVAL; |
324 | 324 | ||
325 | entry->flags = FSNOTIFY_MARK_FLAG_INODE; | ||
326 | |||
325 | /* | 327 | /* |
326 | * if this group isn't being testing for inode type events we need | 328 | * if this group isn't being testing for inode type events we need |
327 | * to start testing | 329 | * to start testing |
diff --git a/include/linux/fsnotify_backend.h b/include/linux/fsnotify_backend.h index 0c0fd4ee2840..cf165857199b 100644 --- a/include/linux/fsnotify_backend.h +++ b/include/linux/fsnotify_backend.h | |||
@@ -267,6 +267,9 @@ struct fsnotify_mark_entry { | |||
267 | struct fsnotify_vfsmount_mark m; | 267 | struct fsnotify_vfsmount_mark m; |
268 | }; | 268 | }; |
269 | struct list_head free_g_list; /* tmp list used when freeing this mark */ | 269 | struct list_head free_g_list; /* tmp list used when freeing this mark */ |
270 | #define FSNOTIFY_MARK_FLAG_INODE 0x01 | ||
271 | #define FSNOTIFY_MARK_FLAG_VFSMOUNT 0x02 | ||
272 | unsigned int flags; /* vfsmount or inode mark? */ | ||
270 | void (*free_mark)(struct fsnotify_mark_entry *entry); /* called on final put+free */ | 273 | void (*free_mark)(struct fsnotify_mark_entry *entry); /* called on final put+free */ |
271 | }; | 274 | }; |
272 | 275 | ||