return PTR_ERR(dquot);
        spin_lock(&dquot->dq_dqb_lock);
 
-       limit = dquot->dq_dqb.dqb_bsoftlimit;
-       if (dquot->dq_dqb.dqb_bhardlimit &&
-           (!limit || dquot->dq_dqb.dqb_bhardlimit < limit))
-               limit = dquot->dq_dqb.dqb_bhardlimit;
+       limit = min_not_zero(dquot->dq_dqb.dqb_bsoftlimit,
+                            dquot->dq_dqb.dqb_bhardlimit);
        limit >>= sb->s_blocksize_bits;
 
        if (limit && buf->f_blocks > limit) {
                         (buf->f_blocks - curblock) : 0;
        }
 
-       limit = dquot->dq_dqb.dqb_isoftlimit;
-       if (dquot->dq_dqb.dqb_ihardlimit &&
-           (!limit || dquot->dq_dqb.dqb_ihardlimit < limit))
-               limit = dquot->dq_dqb.dqb_ihardlimit;
-
+       limit = min_not_zero(dquot->dq_dqb.dqb_isoftlimit,
+                            dquot->dq_dqb.dqb_ihardlimit);
        if (limit && buf->f_files > limit) {
                buf->f_files = limit;
                buf->f_ffree =