xfs
[Top] [All Lists]

Re: [PATCH] xfstests: shared/051: update golden output to match the XFS

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH] xfstests: shared/051: update golden output to match the XFS max acl return errno
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Tue, 11 Mar 2014 20:48:20 +0800
Cc: "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20140310205305.GY6851@dastard>
References: <531D7897.2030800@xxxxxxxxxx> <20140310205305.GY6851@dastard>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0
On 03/11 2014 04:53 AM, Dave Chinner wrote:
> On Mon, Mar 10, 2014 at 04:32:23PM +0800, Jeff Liu wrote:
>> From: Jie Liu <jeff.liu@xxxxxxxxxx>
>>
>> Update the golden output to match the recently XFS return errno
>> changes if hit the limits of maximum number of ACLs.
>>
>> Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
>> ---
>>  tests/shared/051.out | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tests/shared/051.out b/tests/shared/051.out
>> index a871082..354ec6a 100644
>> --- a/tests/shared/051.out
>> +++ b/tests/shared/051.out
>> @@ -280,7 +280,7 @@ mask::rwx
>>  other::rwx
>>  
>>  1 above xfs acl max
>> -chacl: cannot set access acl on "largeaclfile": Invalid argument
>> +chacl: cannot set access acl on "largeaclfile": Argument list too long
> 
> That breaks the test on older kernels. Can you add a filter that
> kills the "Invalid argument"/"Argument list too long" part of the
> error message so the same golden output works for old and new
> kernels?

How about the following revised version? maybe I missed you comments of "kills 
the...". 

Thanks,
-Jeff


From: Jie Liu <jeff.liu@xxxxxxxxxx>

On old kernel we return EINVAL if hit the limits of maximum number of
ACLs but return E2BIG on new kernel, which cause the current test fails
on new kernel as the output is mismatch to the goldens. In order to make
the current golden output works for both old and new kernels, this patch
filter the new error message out to match the olds.

Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
---
 tests/shared/051 | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/tests/shared/051 b/tests/shared/051
index e957f86..157eb9c 100755
--- a/tests/shared/051
+++ b/tests/shared/051
@@ -342,7 +342,10 @@ chacl $acl2 largeaclfile
 getfacl --numeric largeaclfile | _filter_aces
 
 echo "1 above xfs acl max"
-chacl $acl3 largeaclfile
+# we return E2BIG if hit the max acl limits on new kernel, but EINVAL
+# on old kernel. So we need to filter the error message out in order
+# to make the current golden output works for both old and new kernels.
+chacl $acl3 largeaclfile 2>&1 | sed -e "s/Argument list too long/Invalid 
argument/"
 getfacl --numeric largeaclfile | _filter_aces
 
 echo "use 16 aces"
-- 
1.8.3.2

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