gpfs_quotactl can return a non-zero softquota gracetime even when no
softquota has been set. This could lead to "disk full" being reported to
a client. The easiest fix is to check for a valid softquota before
checking the softquota gracetime.
* When the grace time for the exceeded soft block quota has been
* exceeded, the soft block quota becomes an additional hard limit.
*/
- if (qi.blockGraceTime && cur_time > qi.blockGraceTime) {
+ if (qi.blockSoftLimit &&
+ qi.blockGraceTime && cur_time > qi.blockGraceTime) {
/* report disk as full */
*dfree = 0;
*dsize = MIN(*dsize, usage);