On Sat, 2011-01-15 at 11:11 +0000, David Howells wrote: > Hi Ian, > > I've just noticed that autofs4_d_automount() can change the dentry pointer in > the path parameter (via autofs4_mountpoint_changed()). Is this just doing a > straight substitution of one dentry for its equivalent? I don't think it'll > be a problem for follow_automount() and follow_managed(), provided the dentry > stays in the same namespace - but if we eliminate the vfsmount pointer and > just pass the dentry pointer in to d_automount(), you won't be able to do this > anymore. Would it work to simply return NULL here and hope the recheck picks > up the substitution?
I don't think so. It happens if the mount point dentry is removed and recreated during a callback to the daemon so a d_lookup() then returns the replacement dentry. If the vfsmount isn't available we would need to be able to return the new dentry in much the same as ->lookup() will use a replacement dentry if it is returned. I guess that's still a problem if we need to return a vfsmount or ERR_PTR or NULL. Ian _______________________________________________ autofs mailing list [email protected] http://linux.kernel.org/mailman/listinfo/autofs
