acl: handle idmapped mounts
[linux-2.6-microblaze.git] / fs / init.c
index e9c320a..02723be 100644 (file)
--- a/fs/init.c
+++ b/fs/init.c
@@ -49,7 +49,7 @@ int __init init_chdir(const char *filename)
        error = kern_path(filename, LOOKUP_FOLLOW | LOOKUP_DIRECTORY, &path);
        if (error)
                return error;
-       error = inode_permission(path.dentry->d_inode, MAY_EXEC | MAY_CHDIR);
+       error = path_permission(&path, MAY_EXEC | MAY_CHDIR);
        if (!error)
                set_fs_pwd(current->fs, &path);
        path_put(&path);
@@ -64,7 +64,7 @@ int __init init_chroot(const char *filename)
        error = kern_path(filename, LOOKUP_FOLLOW | LOOKUP_DIRECTORY, &path);
        if (error)
                return error;
-       error = inode_permission(path.dentry->d_inode, MAY_EXEC | MAY_CHDIR);
+       error = path_permission(&path, MAY_EXEC | MAY_CHDIR);
        if (error)
                goto dput_and_out;
        error = -EPERM;
@@ -118,7 +118,7 @@ int __init init_eaccess(const char *filename)
        error = kern_path(filename, LOOKUP_FOLLOW, &path);
        if (error)
                return error;
-       error = inode_permission(d_inode(path.dentry), MAY_ACCESS);
+       error = path_permission(&path, MAY_ACCESS);
        path_put(&path);
        return error;
 }