From d21e835b9cacf14d92f61a99b8514e28e98fb4a0 Mon Sep 17 00:00:00 2001 From: Niu Yawei Date: Mon, 2 Dec 2013 20:57:40 -0500 Subject: [PATCH 1/1] LU-4336 quota: improper assert in osc_quota_chkdq() In osc_quota_chkdq(), we should never try to access oqi found from hash, since it could have been freed by osc_quota_setdq(). Signed-off-by: Niu Yawei Change-Id: Ia73cf89cb5bbd730fa6f0a00e44771f733b2baa6 Reviewed-on: http://review.whamcloud.com/8460 Reviewed-by: Johann Lombardi Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Fan Yong --- lustre/osc/osc_quota.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lustre/osc/osc_quota.c b/lustre/osc/osc_quota.c index d33f1ea..f22447b 100644 --- a/lustre/osc/osc_quota.c +++ b/lustre/osc/osc_quota.c @@ -55,11 +55,8 @@ int osc_quota_chkdq(struct client_obd *cli, const unsigned int qid[]) oqi = cfs_hash_lookup(cli->cl_quota_hash[type], &qid[type]); if (oqi) { - obd_uid id = oqi->oqi_id; - - LASSERTF(id == qid[type], - "The ids don't match %u != %u\n", - id, qid[type]); + /* do not try to access oqi here, it could have been + * freed by osc_quota_setdq() */ /* the slot is busy, the user is about to run out of * quota space on this OST */ -- 1.8.3.1