Re: [PATCH 0/3] NFSD patches to support junctions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Sep 08, 2011 at 01:59:46PM -0400, bfields wrote:
> On Fri, Sep 02, 2011 at 12:38:13PM -0400, Chuck Lever wrote:
> > Sometime soon we are going to have easy-to-install user space FedFS
> > components.  Here are kernel patches needed to make server-side FedFS
> > support work.  Please consider these for the 3.2 kernel.
> > 
> > The third patch introduces a potentially expensive check to see if
> > a junction has been encountered during a mountpoint lookup.  An object
> > is a junction iff it has the requisite set of extended attributes.
> > However, reading an extended attribute is expensive on some file
> > systems.
> > 
> > To mitigate the cost of this check, junctions always have their sticky
> > bit set.  The expensive extended attribute part of the junction test
> > is done only if the sticky bit is present.
> > 
> > Note that today junctions are directories, but someday symlinks might
> > also act as junctions (for SMB2 support).  And very few files have the
> > sticky bit set.  So we avoid doing a directory test here.
> > 
> > Also, junctions ostensibly have all zero mode bits to hide their local
> > contents.  I don't think the kernel needs to be concerned about the
> > permissions as long as the sticky bit is set.  This allows some
> > flexibility in how junctions are represented.  However, Jeff thinks
> > that having nfsd4_is_junction() also consider mode bits would make the
> > expensive part of this test still less frequent.
> > 
> > Any thoughts about this?
> 
> Hm, right, a sticky bit set on a directory is a normal thing.  I thought
> Trond's original idea was to check for the sticky bit and not
> executable?  Which is a pointless combination so should be very rare.
> 
> On a typical system maybe directories with the sticky bit are normally
> somewhat rare, but that's a question of policy and there could be cases
> where it's common.

Except for that and the one gripe about an error return, it looks fine
to me.

Remind me where the corresponding userland code is?  Would it make sense
to add some documentation with a link to that?

--b.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux