From: "J. Bruce Fields" <bfields@fieldses.org>
To: Marco Gaiarin <gaio@sv.lnf.it>
Cc: Andreas Gruenbacher <agruen@suse.de>,
Marius Aamodt Eriksen <marius@umich.edu>,
Jeff Sedlak <jsedlak@umich.edu>,
nfs@lists.sourceforge.net, Gopal Santhanam <gopal@nerur.com>
Subject: Re: ACL on NFS, how make it work?
Date: Wed, 8 Mar 2006 20:49:55 -0500 [thread overview]
Message-ID: <20060309014955.GA8089@fieldses.org> (raw)
In-Reply-To: <20060308170425.GS8060@sv.lnf.it>
On Wed, Mar 08, 2006 at 06:04:25PM +0100, Marco Gaiarin wrote:
> Mandi! J. Bruce Fields
> In chel di` si favelave...
>
> > Actually I got one other NFS/XFS ACL complaint recently, and confirmed
> > that with current kernels I'm able to get and set ext3 ACL's over NFS,
> > and get and set XFS ACL's locally, but I can't use XFS ACL's over NFS.
> > Which is odd--on a first glance it looks like the two filesystems export
> > posix acl's through the same interface, etc. I haven't had the chance
> > to figure out what's going on yet....
>
> If i can do something to debug that, say me.
Could you try the following patch? Fixes the problem for me.
--b.
nfsd4: fix acl xattr length return
We should be using the length from the second vfs_getxattr, in case it
changed. (Note: there's still a small race here; we could end up returning
-ENOMEM if the length increased between the first and second call. Oh
well; I'm not sure it's worth spending a lot of effort to fix that.)
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
---
fs/nfsd/vfs.c | 6 +-----
1 files changed, 1 insertions(+), 5 deletions(-)
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
index 5320e5a..ac3a8e4 100644
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
@@ -371,7 +371,6 @@ out_nfserr:
static ssize_t nfsd_getxattr(struct dentry *dentry, char *key, void **buf)
{
ssize_t buflen;
- int error;
buflen = vfs_getxattr(dentry, key, NULL, 0);
if (buflen <= 0)
@@ -381,10 +380,7 @@ static ssize_t nfsd_getxattr(struct dent
if (!*buf)
return -ENOMEM;
- error = vfs_getxattr(dentry, key, *buf, buflen);
- if (error < 0)
- return error;
- return buflen;
+ return vfs_getxattr(dentry, key, *buf, buflen);
}
#endif
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
next prev parent reply other threads:[~2006-03-09 1:50 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-03 10:38 ACL on NFS, how make it work? Marco Gaiarin
2006-03-03 16:35 ` J. Bruce Fields
2006-03-06 9:05 ` Marco Gaiarin
2006-03-06 9:41 ` Andreas Gruenbacher
2006-03-06 10:31 ` Marco Gaiarin
2006-03-06 15:23 ` J. Bruce Fields
2006-03-08 17:04 ` Marco Gaiarin
2006-03-09 1:49 ` J. Bruce Fields [this message]
2006-03-09 8:56 ` Gopal Santhanam
2006-03-09 14:00 ` J. Bruce Fields
2006-03-09 11:20 ` Andreas Gruenbacher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060309014955.GA8089@fieldses.org \
--to=bfields@fieldses.org \
--cc=agruen@suse.de \
--cc=gaio@sv.lnf.it \
--cc=gopal@nerur.com \
--cc=jsedlak@umich.edu \
--cc=marius@umich.edu \
--cc=nfs@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox