[PATCH] quota: set init_needed flag only when successfully getting dquot

From: Chengguang Xu
Date: Sun Apr 28 2019 - 01:40:49 EST


Set init_needed flag only when successfully getting dquot,
so that we can skip unnecessary subsequent operation.

Signed-off-by: Chengguang Xu <cgxu519@xxxxxxx>
---
fs/quota/dquot.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c
index fc20e06c56ba..8d4ce2a2b5c8 100644
--- a/fs/quota/dquot.c
+++ b/fs/quota/dquot.c
@@ -1449,8 +1449,6 @@ static int __dquot_initialize(struct inode *inode, int type)
if (!sb_has_quota_active(sb, cnt))
continue;

- init_needed = 1;
-
switch (cnt) {
case USRQUOTA:
qid = make_kqid_uid(inode->i_uid);
@@ -1475,6 +1473,9 @@ static int __dquot_initialize(struct inode *inode, int type)
dquot = NULL;
}
got[cnt] = dquot;
+
+ if (got[cnt])
+ init_needed = 1;
}

/* All required i_dquot has been initialized */
--
2.20.1