On Wed 24-09-14 22:04:27, Li Xi wrote:
> @@ -1413,6 +1416,15 @@ static void __dquot_initialize(struct inode *inode, 
> int type)
>               case GRPQUOTA:
>                       qid = make_kqid_gid(inode->i_gid);
>                       break;
> +             case PRJQUOTA:
> +                     /* Project ID is not supported */
> +                     if (!inode->i_sb->dq_op->get_projid)
> +                             continue;
> +                     rc = inode->i_sb->dq_op->get_projid(inode, &projid);
> +                     if (rc)
> +                             continue;
> +                     qid = make_kqid_projid(projid);
> +                     break;
  I realized one more thing: We don't want to check ->get_projid() here.
Rather we should check ->get_projid() when turning quota on in
quota_quotaon() and return -EINVAL when ->get_projid() isn't set - that way
user is early notified the fs doesn't support project quotas. Then here
in __dquot_initialize() we can just check sb_has_quota_active(sb, PRJQUOTA).

                                                                Honza
-- 
Jan Kara <[email protected]>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-api" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to