xfs
[Top] [All Lists]

Re: [PATCH] xfs: return ENOSPC when trying to set more ACLs than XFS_ACL

To: Ben Myers <bpm@xxxxxxx>
Subject: Re: [PATCH] xfs: return ENOSPC when trying to set more ACLs than XFS_ACL_MAX_ENTRIES
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Thu, 12 Dec 2013 11:26:55 +0800
Cc: Eric Sandeen <sandeen@xxxxxxxxxxx>, "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20131211193622.GG1935@xxxxxxx>
References: <52921D12.7040104@xxxxxxxxxx> <5292C557.9020008@xxxxxxxxxxx> <5292D8AB.5080003@xxxxxxxxxx> <20131211193622.GG1935@xxxxxxx>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0
Hi Ben,

On 12/12 2013 03:36 AM, Ben Myers wrote:
> Hey Jeff,
> 
> On Mon, Nov 25, 2013 at 12:57:15PM +0800, Jeff Liu wrote:
>>
>> On 11/25 2013 11:34 AM, Eric Sandeen wrote:
>>> On 11/24/13, 9:36 AM, Jeff Liu wrote:
>>>> From: Jie Liu <jeff.liu@xxxxxxxxxx>
>>>>
>>>> We currently return EINVAL when trying to set more ACL entries than
>>>> XFS_ACL_MAX_ENTRIES(), but it would be a bit more meaningful to return
>>>> ENOSPC in this situation, because the later is used to indicate there
>>>> is no more space to store new ACLs IMHO.
>>>
>>> I'm not quite convinced that it's better; the user will get an
>>> error string of "no space left on device" which is misleading too,
>> I admit that both looks misleading...
>>> and I'd argue that it's no better than "invalid argument."
>>>
>>> To me, I think it's not worth changing, but others may disagree.
>>>
>>> (I guess looking at ext4, it uses ENOSPC for some similar constraints,
>>> so maybe three is precedent for this)
>> Btrfs also uses ENOSPC, but JFS would return something like "Argument list 
>> too long"
>> in this case.
> 
> I tend to agree with Eric on this one, but if Dave or Christoph want to weigh
> in that's cool.
I agree to Eric as well since either errno cannot indicate this situation much
cleaner.  I also can not find an existing errno could be used for this 
situation,
maybe someday there would have a particular errno to be used in this case if 
users
complain about it.

Thanks,
-Jeff

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