xfs
[Top] [All Lists]

Re: [PATCH V2] xfs: fix Q_XQUOTARM ioctl

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Subject: Re: [PATCH V2] xfs: fix Q_XQUOTARM ioctl
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Wed, 23 Apr 2014 10:28:58 -0500
Cc: Eric Sandeen <sandeen@xxxxxxxxxx>, Jan Kara <jack@xxxxxxx>, xfs-oss <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20140423152708.GA3326@xxxxxxxxxxxxx>
References: <535580A1.20806@xxxxxxxxxx> <5356B986.2060906@xxxxxxxxxxx> <20140423152708.GA3326@xxxxxxxxxxxxx>
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
On 4/23/14, 10:27 AM, Christoph Hellwig wrote:
> On Tue, Apr 22, 2014 at 01:48:38PM -0500, Eric Sandeen wrote:
>> The Q_XQUOTARM quotactl was not working properly, because
>> we weren't passing around proper flags.  The xfs_fs_set_xstate()
>> ioctl handler used the same flags for Q_XQUOTAON/OFF as
>> well as for Q_XQUOTARM, but Q_XQUOTAON/OFF look for
>> XFS_UQUOTA_ACCT, XFS_UQUOTA_ENFD, XFS_GQUOTA_ACCT etc,
>> i.e. quota type + state, while Q_XQUOTARM looks only for
>> the type of quota, i.e. XFS_DQ_USER, XFS_DQ_GROUP etc.
>>
>> Unfortunately these flag spaces overlap a bit, so we
>> got semi-random results for Q_XQUOTARM; i.e. the value
>> for XFS_DQ_USER == XFS_UQUOTA_ACCT, etc.  yeargh.
>>
>> Add a new quotactl op vector specifically for the QUOTARM
>> operation, since it operates with a different flag space.
>>
>> This has been broken more or less forever, AFAICT.
>>
>> Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> 
> Looks good for now:
> 
> Reviewed-by: Christoph Hellwig <hch@xxxxxx>
> 
> If you have a spare cycle or two I think splitting quotaon and quotaoff might
> not be an all that bad idea either.

Just out of curiousity, for what reason - just parity w/ the non-xfs
ops?

-Eric

<Prev in Thread] Current Thread [Next in Thread>