Messages in this thread | | | Date | Thu, 02 Mar 2006 14:35:51 +1300 | From | Sam Vilain <> | Subject | Re: [RFC] vfs: cleanup of permission() |
| |
Trond Myklebust wrote: >>the second part is actually a hack to help nfs and fuse >>to get the 'required' information until there is a proper >>interface (at the vfs not inode level) to pass relevant >>information (probably dentry/vfsmount/flags) > The nameidata _IS_ the vfs structure for storing path context > information. You seem to be suggesting we need yet another one. Why?
Because you can't make a nameidata without a lookup, and file based operations don't do a lookup. However you still have the vfsmnt and inode hanging off the file struct.
Either that or we make a dummy nameidata structure for this situation, possibly a filehandle relative lookup as used by openat() et al.
>>>Secondly, an intent is _not_ a permissions mask by any stretch of the >>>imagination. >>see above >>>IOW: at the very least make that intent flag a separate parameter. >>IMHO it would be good to remove them completely form the >>current permission() checks. > Vetoed! > Redundant RPC calls have performance costs to the client, the server and > the network. That intent information is there in order to allow the > filesystem to figure out whether or not it needs to do the permissions > check, or if that check is already being done by other operations. > Removing the intents are therefore not an option.
OK, so we either make it an extra parameter or 'properly' stack them into a single word. Do you have any preferences either way there?
Sam. - 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/
| |