On Fri, Nov 19, 2010 at 12:28:09AM -0500, David Quigley wrote: > [snip] > >If you have persistent xattr support we need the dentry since the xattr > >code requires a dentry. I have no idea why but that's what > >inode->i_op->getxattr() requires. > > > > The original reason that the xattr operations take dentries is > because of p9fs and CIFS. CIFS uses the name of the file to grab the > extended attributes and so does p9fs. I had tried to remove this a > while ago but couldn't find a way around that. Both CIFS and FUSE are NFS-exportable, so both allow lookup by filehandle, so neither can count on getting a filename at this point. So, out of curiosity, do we know what will happen when selinux asks one of them for an xattr on a DCACHE_DISCONNECTED dentry? > When trying to find a > solution I also got push back from Miklos (FUSE) as he views a > filesystem being able to make xattr decisions based on the path name > being a valid use-case. So selinux may initialize an inode differently depending on which pathname it happened to be looked up under first? Factoring the name into the xattr return sounds scary to me. --b. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html