summaryrefslogtreecommitdiffstats
path: root/fs/jfs/super.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@infradead.org>2010-03-03 09:05:04 -0500
committerJan Kara <jack@suse.cz>2010-03-05 00:20:29 +0100
commit257ba15cedf1288f0c96118d7e63947231d27278 (patch)
tree7a977a0ea08a324ce74aedce19406cb0688f15e2 /fs/jfs/super.c
parentb43fa8284d7790d9cca32c9c55e24f29be2fa33b (diff)
downloadlinux-257ba15cedf1288f0c96118d7e63947231d27278.tar.gz
linux-257ba15cedf1288f0c96118d7e63947231d27278.tar.bz2
linux-257ba15cedf1288f0c96118d7e63947231d27278.zip
dquot: move dquot drop responsibility into the filesystem
Currently clear_inode calls vfs_dq_drop directly. This means we tie the quota code into the VFS. Get rid of that and make the filesystem responsible for the drop inside the ->clear_inode superblock operation. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/jfs/super.c')
-rw-r--r--fs/jfs/super.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/jfs/super.c b/fs/jfs/super.c
index d929a822a74e..4086fa593419 100644
--- a/fs/jfs/super.c
+++ b/fs/jfs/super.c
@@ -131,6 +131,11 @@ static void jfs_destroy_inode(struct inode *inode)
kmem_cache_free(jfs_inode_cachep, ji);
}
+static void jfs_clear_inode(struct inode *inode)
+{
+ vfs_dq_drop(inode);
+}
+
static int jfs_statfs(struct dentry *dentry, struct kstatfs *buf)
{
struct jfs_sb_info *sbi = JFS_SBI(dentry->d_sb);
@@ -745,6 +750,7 @@ static const struct super_operations jfs_super_operations = {
.dirty_inode = jfs_dirty_inode,
.write_inode = jfs_write_inode,
.delete_inode = jfs_delete_inode,
+ .clear_inode = jfs_clear_inode,
.put_super = jfs_put_super,
.sync_fs = jfs_sync_fs,
.freeze_fs = jfs_freeze,