1. In an error handling, free_dquot() should be used.
2. Check if quota is on in dqacq_handler()
i=johann
i=panda
if (rc) {
CERROR("can't read dquot from admin quotafile! "
"(rc:%d)\n", rc);
- lustre_dqput(dquot);
+ free_dquot(dquot);
RETURN(ERR_PTR(rc));
}
dqacq_adjust_qunit_sz(obd, qdata->qd_id, QDATA_IS_GRP(qdata),
QDATA_IS_BLK(qdata));
+ if (!ll_sb_has_quota_active(qctxt->lqc_sb,
+ QDATA_IS_GRP(qdata) ? GRPQUOTA : USRQUOTA))
+ RETURN(-EIO);
+
lqs = quota_search_lqs(LQS_KEY(QDATA_IS_GRP(qdata), qdata->qd_id),
qctxt, 0);
if (lqs == NULL || IS_ERR(lqs)) {