diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-26 13:50:56 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-26 13:50:56 -0400 |
commit | f8d613e2a665bf1be9628a3c3f9bafe7599b32c0 (patch) | |
tree | 98d4da8d0e1a5fb1d9064626b4b96d95ccf26375 /fs/super.c | |
parent | 8a0599dd2471f2a2e409498c08a0ab339057ad06 (diff) | |
parent | 5bc20fc59706214d9591c11e1938a629d3538c12 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem:
xen: cleancache shim to Xen Transcendent Memory
ocfs2: add cleancache support
ext4: add cleancache support
btrfs: add cleancache support
ext3: add cleancache support
mm/fs: add hooks to support cleancache
mm: cleancache core ops functions and config
fs: add field to superblock to support cleancache
mm/fs: cleancache documentation
Fix up trivial conflict in fs/btrfs/extent_io.c due to includes
Diffstat (limited to 'fs/super.c')
-rw-r--r-- | fs/super.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/super.c b/fs/super.c index c04f7e0b7ed2..c75593953c52 100644 --- a/fs/super.c +++ b/fs/super.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/mutex.h> | 31 | #include <linux/mutex.h> |
32 | #include <linux/backing-dev.h> | 32 | #include <linux/backing-dev.h> |
33 | #include <linux/rculist_bl.h> | 33 | #include <linux/rculist_bl.h> |
34 | #include <linux/cleancache.h> | ||
34 | #include "internal.h" | 35 | #include "internal.h" |
35 | 36 | ||
36 | 37 | ||
@@ -112,6 +113,7 @@ static struct super_block *alloc_super(struct file_system_type *type) | |||
112 | s->s_maxbytes = MAX_NON_LFS; | 113 | s->s_maxbytes = MAX_NON_LFS; |
113 | s->s_op = &default_op; | 114 | s->s_op = &default_op; |
114 | s->s_time_gran = 1000000000; | 115 | s->s_time_gran = 1000000000; |
116 | s->cleancache_poolid = -1; | ||
115 | } | 117 | } |
116 | out: | 118 | out: |
117 | return s; | 119 | return s; |
@@ -177,6 +179,7 @@ void deactivate_locked_super(struct super_block *s) | |||
177 | { | 179 | { |
178 | struct file_system_type *fs = s->s_type; | 180 | struct file_system_type *fs = s->s_type; |
179 | if (atomic_dec_and_test(&s->s_active)) { | 181 | if (atomic_dec_and_test(&s->s_active)) { |
182 | cleancache_flush_fs(s); | ||
180 | fs->kill_sb(s); | 183 | fs->kill_sb(s); |
181 | /* | 184 | /* |
182 | * We need to call rcu_barrier so all the delayed rcu free | 185 | * We need to call rcu_barrier so all the delayed rcu free |