|
@@ -677,11 +677,13 @@ xfs_trans_dqresv(
|
|
|
if (!softlimit)
|
|
|
softlimit = q->qi_isoftlimit;
|
|
|
|
|
|
- if (hardlimit > 0ULL && count >= hardlimit) {
|
|
|
+ if (hardlimit > 0ULL &&
|
|
|
+ hardlimit < ninos + count) {
|
|
|
xfs_quota_warn(mp, dqp, QUOTA_NL_IHARDWARN);
|
|
|
goto error_return;
|
|
|
}
|
|
|
- if (softlimit > 0ULL && count >= softlimit) {
|
|
|
+ if (softlimit > 0ULL &&
|
|
|
+ softlimit < ninos + count) {
|
|
|
if ((timer != 0 && get_seconds() > timer) ||
|
|
|
(warns != 0 && warns >= warnlimit)) {
|
|
|
xfs_quota_warn(mp, dqp,
|