xfs
[Top] [All Lists]

[PATCH 12/12] vfs: Remove i_dquot field from inode

To: linux-fsdevel@xxxxxxxxxxxxxxx
Subject: [PATCH 12/12] vfs: Remove i_dquot field from inode
From: Jan Kara <jack@xxxxxxx>
Date: Wed, 1 Oct 2014 21:31:34 +0200
Cc: linux-ext4@xxxxxxxxxxxxxxx, Dave Chinner <david@xxxxxxxxxxxxx>, xfs@xxxxxxxxxxx, cluster-devel@xxxxxxxxxx, Steven Whitehouse <swhiteho@xxxxxxxxxx>, Mark Fasheh <mfasheh@xxxxxxxx>, Joel Becker <jlbec@xxxxxxxxxxxx>, ocfs2-devel@xxxxxxxxxxxxxx, reiserfs-devel@xxxxxxxxxxxxxxx, Jeff Mahoney <jeffm@xxxxxxx>, Dave Kleikamp <shaggy@xxxxxxxxxx>, jfs-discussion@xxxxxxxxxxxxxxxxxxxxx, tytso@xxxxxxx, Jan Kara <jack@xxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1412191894-9113-1-git-send-email-jack@xxxxxxx>
References: <1412191894-9113-1-git-send-email-jack@xxxxxxx>
All filesystems using VFS quotas are now converted to use their private
i_dquot fields. Remove the i_dquot field from generic inode structure.

Signed-off-by: Jan Kara <jack@xxxxxxx>
---
 fs/inode.c         |  3 ---
 fs/super.c         | 10 ----------
 include/linux/fs.h |  3 ---
 3 files changed, 16 deletions(-)

diff --git a/fs/inode.c b/fs/inode.c
index 26753ba7b6d6..2ed95f7caa4f 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -143,9 +143,6 @@ int inode_init_always(struct super_block *sb, struct inode 
*inode)
        inode->i_blocks = 0;
        inode->i_bytes = 0;
        inode->i_generation = 0;
-#ifdef CONFIG_QUOTA
-       memset(&inode->i_dquot, 0, sizeof(inode->i_dquot));
-#endif
        inode->i_pipe = NULL;
        inode->i_bdev = NULL;
        inode->i_cdev = NULL;
diff --git a/fs/super.c b/fs/super.c
index 3e70f2e22ea3..b9a214d2fe98 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -215,22 +215,12 @@ static struct super_block *alloc_super(struct 
file_system_type *type, int flags)
        atomic_set(&s->s_active, 1);
        mutex_init(&s->s_vfs_rename_mutex);
        lockdep_set_class(&s->s_vfs_rename_mutex, &type->s_vfs_rename_key);
-       /*
-        * For now MAXQUOTAS check in do_quotactl() will limit quota type
-        * appropriately. When each fs sets allowed_types, we can remove the
-        * line below
-        */
-       s->s_dquot.allowed_types = (1 << USRQUOTA) | (1 << GRPQUOTA) |
-                                  (1 << PRJQUOTA);
        mutex_init(&s->s_dquot.dqio_mutex);
        mutex_init(&s->s_dquot.dqonoff_mutex);
        s->s_maxbytes = MAX_NON_LFS;
        s->s_op = &default_op;
        s->s_time_gran = 1000000000;
        s->cleancache_poolid = -1;
-#ifdef CONFIG_QUOTA
-       s->s_inode_fields[IF_DQUOTS] = offsetof(struct inode, i_dquot);
-#endif
 
        s->s_shrink.seeks = DEFAULT_SEEKS;
        s->s_shrink.scan_objects = super_cache_scan;
diff --git a/include/linux/fs.h b/include/linux/fs.h
index d49434866da5..fb669113c37c 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -595,9 +595,6 @@ struct inode {
        const struct file_operations    *i_fop; /* former 
->i_op->default_file_ops */
        struct file_lock        *i_flock;
        struct address_space    i_data;
-#ifdef CONFIG_QUOTA
-       struct dquot            *i_dquot[MAXQUOTAS];
-#endif
        struct list_head        i_devices;
        union {
                struct pipe_inode_info  *i_pipe;
-- 
1.8.1.4

<Prev in Thread] Current Thread [Next in Thread>