Very probably, but I have not tested though.
The thing is that I have no idea how 'expensive' the getxattr() system call is. 
And given the fact that the file-has-acl() function will be in vast majority 
cases used on non-nfs filesystems, then I wanted to avoid it if possible.

The other (perhaps better?) approach would be to call listxattr() call at the 
beginning to see what we are up to actually (in single go we would able to 
detect posix and nfsv4 attrs)
The disadvantage would be slightly bigger patch, but we would definitely spare 
at least one getxattr() call.
How does this sound?

Zasláno z Outlooku pro Android<https://aka.ms/AAb9ysg>
________________________________
From: Paul Eggert <egg...@cs.ucla.edu>
Sent: Saturday, April 29, 2023 8:35:06 AM
To: Ondrej Valousek <ondrej.valousek...@renesas.com>
Cc: bug-gnulib@gnu.org <bug-gnulib@gnu.org>
Subject: Re: [PATCH] fix NFSv4 acl detection on F39

On 2023-04-28 13:38, Ondrej Valousek wrote:
> On newer systems like Fedora 39, we can't distinguish from the 
> getxattr(,XATTR_NAME_POSIX_ACL_*,,)
> which filesystem we are on. The call return either success or ENODATA.

Does getxattr (name, XATTR_NAME_NFSV4_ACL, xattr, sizeof xattr) also
have this problem on Fedora 39? If not, perhaps we should instead do the
NFSv4 call first, to save the need for the "POSIX" getxattr call when
the file system supports NFSv4. Something like the attached, perhaps?

Reply via email to