From: "J. Bruce Fields" <bfields@fieldses.org>
To: Chuck Lever <chuck.lever@oracle.com>
Cc: Christoph Hellwig <hch@infradead.org>, linux-nfs@vger.kernel.org
Subject: Re: nfsd4_is_junction
Date: Sat, 29 Oct 2011 14:09:00 -0400 [thread overview]
Message-ID: <20111029180900.GD12122@fieldses.org> (raw)
In-Reply-To: <7A873A96-ED05-4904-8470-E169B233E951@oracle.com>
On Sat, Oct 29, 2011 at 01:58:02PM -0400, Chuck Lever wrote:
>
> On Oct 29, 2011, at 1:55 PM, J. Bruce Fields wrote:
>
> > On Sat, Oct 29, 2011 at 01:47:55PM -0400, Chuck Lever wrote:
> >>
> >> On Oct 29, 2011, at 6:16 AM, Christoph Hellwig wrote:
> >>
> >>> This function should probably grow a check for S_NOSEC instead of
> >>> hitting the filesystems with an xattr read for every lookup.
> >>
> >> It doesn't perform the xattr read on _every_ lookup, but only when the object has a special set of permission bits.
> >>
> >> But actually, it probably doesn't need that 'type" attribute check at all. It should delegate that check to mountd. I assume many of those upcalls would hit in the export cache anyway?
> >
> > You're suggesting doing an upcall on every path that passes the mode-bit
> > checks?
> >
> > You'd end up populating the export cache with every path that passes
> > the mode-bit checks. I don't think that's a good idea.
>
> You just finished telling us that the mode bit checks would prevent doing an attribute read too often. Again, how often do we think there will be directories with no execute bits set and the sticky bit set? I think that's going to be exceptionally rare.
Yeah, probably so, but if there's a pathological case where we're wrong
then I think excessive xattr reads will be less annoying than excessive
upcalls and export cache entries.
And in the cached case: I doubt a lookup in the export cache is really
faster than a read of a cached xattr. But I don't know.
--b.
next prev parent reply other threads:[~2011-10-29 18:09 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-29 10:16 nfsd4_is_junction Christoph Hellwig
2011-10-29 17:45 ` nfsd4_is_junction J. Bruce Fields
2011-11-02 8:30 ` nfsd4_is_junction Christoph Hellwig
2011-10-29 17:47 ` nfsd4_is_junction Chuck Lever
2011-10-29 17:55 ` nfsd4_is_junction J. Bruce Fields
2011-10-29 17:58 ` nfsd4_is_junction Chuck Lever
2011-10-29 18:09 ` J. Bruce Fields [this message]
2011-10-29 18:38 ` nfsd4_is_junction Chuck Lever
2011-10-29 23:36 ` nfsd4_is_junction Trond Myklebust
2011-10-31 15:09 ` nfsd4_is_junction Chuck Lever
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=20111029180900.GD12122@fieldses.org \
--to=bfields@fieldses.org \
--cc=chuck.lever@oracle.com \
--cc=hch@infradead.org \
--cc=linux-nfs@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.