On Tue, 2010-07-27 at 09:48 +0100, David Howells wrote: > Ian Kent <raven@xxxxxxxxxx> wrote: > > > Is this something others need? > > Not as far as I know... I think autofs is the only one doing out-of-kernel > automounting. > > That doesn't mean it shouldn't be provided, though... > > > Again, the exists vs not yet exists case for paths within indirect > > autofs mounts. At the moment I can just set the flag on all dentrys in > > the autofs fs and return EXDEV for non-empty directories in order to > > return the dentry as a path component. OTOH if the dentry is a mount > > embeded in the path and the mount fails we get a error return. > > Seems redundant, but I'd say go with it for now. Maybe we can offload > S_AUTOMOUNT to the dentry. Yes, it is redundant but it is simple and works fine as long as I don't apply the patch to return -EREMOTE for non-terminal dentrys. I'd need to clear the flag, as below, on non-terminal dentrys if the -EREMOTE patch is needed. > > > I could clear the flag on non-root parent dentrys during mkdir if this > > is needed by others. > > I'm not sure that would actually matter, since it would come to > follow_automount() at the same place. > > Note that someone who tries to stat() with AT_NO_AUTOMOUNT will cause the call > to d_automount() to be suppressed and will see the negative or non-mounted > directory. That might be okay for you. With one small correction to the autofs patch I've been able to successfully run the autofs Connectathon parser test without any user space changes for both the nobrowse (the usual case) and the browse (pre-created mount point directories) cases. The test consists of 230 mounts, with success and fail cases, for both direct and indirect mounts. These mounts include various offset mount constructs as well. To consider the test a success I require the mounts to also expire correctly. There are more tests to run, such as the program mount test, and the often problematic submount test. Also, I have a submount based stress test. But, all in all, this is shaping up to be just what I need. Having one single place to call back to the daemon, where I don't need to play around with the inode mutex, makes me think this implementation will finally resolve my deadlock issue with indirect mounts. Ian -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html