userns: Convert struct dquot_warn
authorEric W. Biederman <ebiederm@xmission.com>
Sun, 16 Sep 2012 11:05:34 +0000 (04:05 -0700)
committerEric W. Biederman <ebiederm@xmission.com>
Tue, 18 Sep 2012 08:01:42 +0000 (01:01 -0700)
Convert w_dq_id to be a struct kquid and remove the now unncessary
w_dq_type.

This is a simple conversion and enough other places have already
been converted that this actually reduces the code complexity
by a little bit, when removing now unnecessary type conversions.

Cc: Jan Kara <jack@suse.cz>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
fs/quota/dquot.c

index efaeed3..f3db845 100644 (file)
@@ -1132,8 +1132,7 @@ static void dquot_decr_space(struct dquot *dquot, qsize_t number)
 
 struct dquot_warn {
        struct super_block *w_sb;
-       qid_t w_dq_id;
-       short w_dq_type;
+       struct kqid w_dq_id;
        short w_type;
 };
 
@@ -1157,11 +1156,11 @@ static int need_print_warning(struct dquot_warn *warn)
        if (!flag_print_warnings)
                return 0;
 
-       switch (warn->w_dq_type) {
+       switch (warn->w_dq_id.type) {
                case USRQUOTA:
-                       return current_fsuid() == warn->w_dq_id;
+                       return current_fsuid() == warn->w_dq_id.uid;
                case GRPQUOTA:
-                       return in_group_p(warn->w_dq_id);
+                       return in_group_p(warn->w_dq_id.gid);
        }
        return 0;
 }
@@ -1187,7 +1186,7 @@ static void print_warning(struct dquot_warn *warn)
                tty_write_message(tty, ": warning, ");
        else
                tty_write_message(tty, ": write failed, ");
-       tty_write_message(tty, quotatypes[warn->w_dq_type]);
+       tty_write_message(tty, quotatypes[warn->w_dq_id.type]);
        switch (warntype) {
                case QUOTA_NL_IHARDWARN:
                        msg = " file limit reached.\r\n";
@@ -1220,8 +1219,7 @@ static void prepare_warning(struct dquot_warn *warn, struct dquot *dquot,
                return;
        warn->w_type = warntype;
        warn->w_sb = dquot->dq_sb;
-       warn->w_dq_id = from_kqid(&init_user_ns, dquot->dq_id);
-       warn->w_dq_type = dquot->dq_id.type;
+       warn->w_dq_id = dquot->dq_id;
 }
 
 /*
@@ -1239,7 +1237,7 @@ static void flush_warnings(struct dquot_warn *warn)
 #ifdef CONFIG_PRINT_QUOTA_WARNING
                print_warning(&warn[i]);
 #endif
-               quota_send_warning(make_kqid(&init_user_ns, warn[i].w_dq_type, warn[i].w_dq_id),
+               quota_send_warning(warn[i].w_dq_id,
                                   warn[i].w_sb->s_dev, warn[i].w_type);
        }
 }