diff options
author | Eric Paris <eparis@redhat.com> | 2010-07-28 10:18:38 -0400 |
---|---|---|
committer | Eric Paris <eparis@redhat.com> | 2010-07-28 10:18:52 -0400 |
commit | 75c1be487a690db43da2c1234fcacd84c982803c (patch) | |
tree | b38ce47f157d3b0eff7ac6eb4756a4b390ac35ae /include | |
parent | 700307a29ad61090dcf1d45f8f4a135f5e9211ae (diff) |
fsnotify: srcu to protect read side of inode and vfsmount locks
Currently reading the inode->i_fsnotify_marks or
vfsmount->mnt_fsnotify_marks lists are protected by a spinlock on both the
read and the write side. This patch protects the read side of those lists
with a new single srcu.
Signed-off-by: Eric Paris <eparis@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/fsnotify_backend.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/fsnotify_backend.h b/include/linux/fsnotify_backend.h index 8e24cdf72928..84159390969f 100644 --- a/include/linux/fsnotify_backend.h +++ b/include/linux/fsnotify_backend.h | |||
@@ -302,6 +302,7 @@ struct fsnotify_mark { | |||
302 | #define FSNOTIFY_MARK_FLAG_IGNORED_SURV_MODIFY 0x08 | 302 | #define FSNOTIFY_MARK_FLAG_IGNORED_SURV_MODIFY 0x08 |
303 | #define FSNOTIFY_MARK_FLAG_ALIVE 0x10 | 303 | #define FSNOTIFY_MARK_FLAG_ALIVE 0x10 |
304 | unsigned int flags; /* vfsmount or inode mark? */ | 304 | unsigned int flags; /* vfsmount or inode mark? */ |
305 | struct list_head destroy_list; | ||
305 | void (*free_mark)(struct fsnotify_mark *mark); /* called on final put+free */ | 306 | void (*free_mark)(struct fsnotify_mark *mark); /* called on final put+free */ |
306 | }; | 307 | }; |
307 | 308 | ||