From: Miklos Szeredi <mszeredi@xxxxxxx> I'm not sure what this function is trying to achieve, but it's not succeeding: the condition for which it is returning zero is exactly the same as checked by permission(), which results in -EACCES. So in the end this is equivalent to the default action. A similar check is in hfs_permission() but that does actually do something, though I'm doubtful if it's the right thing. But we should probably leave that alone, lest we break something unexpectedly. Signed-off-by: Miklos Szeredi <mszeredi@xxxxxxx> CC: Roman Zippel <zippel@xxxxxxxxxxxxxx> --- fs/hfsplus/inode.c | 13 ------------- 1 file changed, 13 deletions(-) Index: linux-2.6/fs/hfsplus/inode.c =================================================================== --- linux-2.6.orig/fs/hfsplus/inode.c 2008-05-21 13:13:29.000000000 +0200 +++ linux-2.6/fs/hfsplus/inode.c 2008-05-21 13:41:26.000000000 +0200 @@ -238,18 +238,6 @@ static void hfsplus_set_perms(struct ino perms->dev = cpu_to_be32(HFSPLUS_I(inode).dev); } -static int hfsplus_permission(struct inode *inode, int mask, struct nameidata *nd) -{ - /* MAY_EXEC is also used for lookup, if no x bit is set allow lookup, - * open_exec has the same test, so it's still not executable, if a x bit - * is set fall back to standard permission check. - */ - if (S_ISREG(inode->i_mode) && mask & MAY_EXEC && !(inode->i_mode & 0111)) - return 0; - return generic_permission(inode, mask, NULL); -} - - static int hfsplus_file_open(struct inode *inode, struct file *file) { if (HFSPLUS_IS_RSRC(inode)) @@ -283,7 +271,6 @@ static int hfsplus_file_release(struct i static const struct inode_operations hfsplus_file_inode_operations = { .lookup = hfsplus_file_lookup, .truncate = hfsplus_file_truncate, - .permission = hfsplus_permission, .setxattr = hfsplus_setxattr, .getxattr = hfsplus_getxattr, .listxattr = hfsplus_listxattr, -- -- 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