On 05/04, Chao Yu wrote:
> Hi Jaegeuk,
>
> On 2017/5/4 1:02, Jaegeuk Kim wrote:
> > Hello,
> >
> > On 04/28, Chao Yu wrote:
> >> From: Chao Yu <[email protected]>
> >>
> >> f2fs has set inline_xattr as a default option, and introduced a new option
> >> named 'noinline_xattr' for disabling default inline_xattr option. So in
> >> _acl_get_max we need to check 'noinline_xattr' string in fs option,
> >> otherwise we may select the wrong max acl number since we always found
> >> the string 'ininline_xattr' in fs option.
> >>
> >> Additionally, f2fs has changed disk layout of xattr block a bit, so will
> >> contain one more entry in both inline and noinline xattr inode, this patch
> >> will modify the max acl number to adjust it.
> >>
> >> Signed-off-by: Chao Yu <[email protected]>
> >> ---
> >> common/attr | 6 +++---
> >> 1 file changed, 3 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/common/attr b/common/attr
> >> index ac139e61..6d4f68ed 100644
> >> --- a/common/attr
> >> +++ b/common/attr
> >> @@ -43,11 +43,11 @@ _acl_get_max()
> >> echo 8191
> >> ;;
> >> f2fs)
> >> - _fs_options $TEST_DEV | grep "inline_xattr" >/dev/null 2>&1
> >> + _fs_options $TEST_DEV | grep "noinline_xattr" >/dev/null 2>&1
> >
> > This breaks old kernel support which has no "noinline_xattr". It'd be good
> > to
> > check "inline_xattr" again after checking "noinline_xattr". And, in terms of
>
> Hmm, we have changed xattr layout a bit in new kernel, so even we have
> knew that user set inline_xattr mount option, still we don't know
> whether the last kernel was been used, so we can not decide to choose
> 532 or 531 as acl_max value. Maybe we need to check result of 'uname -r'
> either.
>
> > different number of entries, can we get the number from local.config by
> > adding
> > an export symbol likewise FSTYP?
>
> You mean adding one more configuration parameter which can be defined by
> user, then _acl_get_max can return correct acl_max value depend on that
> parameter?
How about this?
if noinline_xattr exists
acl_max=506
else if inline_xattr exists
acl_max=531
else
/* for old kernel */
acl_max=506
fi
if $ACL_MAX_ADJ is defined; then
acl_max += $ACL_MAX_ADJ;
fi
Thanks,
>
> Thanks,
>
> >
> > Thanks,
> >
> >> if [ $? -eq 0 ]; then
> >> - echo 531
> >> + echo 507
> >> else
> >> - echo 506
> >> + echo 532
> >> fi
> >> ;;
> >> *)
> >> --
> >> 2.12.2.575.gb14f27f
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel