lkml.org 
[lkml]   [2006]   [Aug]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] NFS: Replace null dentries that appear in readdir's list [try #2]
On Sun, 20 Aug 2006, David Howells wrote:

> Andrew Morton <akpm@osdl.org> wrote:
>
> > The funny-looking dentries in /net/bix have gone away.
> >
> > But `ls -l /net/bix/usr/src' doesn't mount bix:/usr/src.
>
> Yes, that I believe is due to the automounter program combined with that
> optimisation in the NFS client code. *readdir* fixes the falsely negative
> dentry, but only if you _do_ a readdir of the parent directory, and only then
> if you read enough of the directory to locate the dodgy dentry.
>
> This is normally only a problem if SELinux aborts the mkdir operation between
> calling the filesystem's lookup() op and the filesystem's mkdir() op, if the
> filesystem is written - as NFS is - to assume the the lookup() op _will_ be
> followed by a call to the mkdir() op whatever happens. Unfortunately, with
> SELinux sticking its foot in the way, this no longer holds true, and the
> initial lookup _must_ properly instantiate the dentry it is given - and that
> means it must query the server in such a case.
>
> That said, that will likely prevent autofs from being able to create arbitrary
> directories if the underlying security constraints don't let it.
>
> There is another problem with autofs arbitrarily creating directory dentries
> in this manner: the automount program doesn't know whether the directory it is
> creating corresponds to a directory on the server - or whether it corresponds
> to a symbolic link... The server _must_ be queried.
>
> So, I think:
>
> (1) I have to change my patch again, and that I have to make nfs_lookup()
> unconditionally query the server (comments Trond?), and
>
> (2) Ian has to patch the automounter to not attempt to mount undermounts
> automatically - with the new in-NFS-client automounting code, this should
> be unnecessary, except for when the an intervening directory is
> inaccessible, and I'm not sure what you can do about that (Ian? Trond?)

I guess I knew this would with the nfs v4 mounting.

I don't have a server with v4 nested type mounts handy. How can I tell,
from the output of the exports list, what I should leave alone?

Ian

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-08-20 16:29    [W:0.443 / U:0.552 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site