diff --git a/[refs] b/[refs] index 1c097e95809a..41b8ebe30943 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8522ca5818652c4da6808c66a307abce75462212 +refs/heads/master: d124b60a838141bb9cac1b6567e9ca4539d1fff0 diff --git a/trunk/fs/namei.c b/trunk/fs/namei.c index 2a4574f48001..276cd30ab8f8 100644 --- a/trunk/fs/namei.c +++ b/trunk/fs/namei.c @@ -227,8 +227,6 @@ static int acl_permission_check(struct inode *inode, int mask) { unsigned int mode = inode->i_mode; - mask &= MAY_READ | MAY_WRITE | MAY_EXEC | MAY_NOT_BLOCK; - if (current_user_ns() != inode_userns(inode)) goto other_perms; diff --git a/trunk/fs/posix_acl.c b/trunk/fs/posix_acl.c index 10027b42b7e2..cea4623f1ed6 100644 --- a/trunk/fs/posix_acl.c +++ b/trunk/fs/posix_acl.c @@ -218,6 +218,8 @@ posix_acl_permission(struct inode *inode, const struct posix_acl *acl, int want) const struct posix_acl_entry *pa, *pe, *mask_obj; int found = 0; + want &= MAY_READ | MAY_WRITE | MAY_EXEC | MAY_NOT_BLOCK; + FOREACH_ACL_ENTRY(pa, acl, pe) { switch(pa->e_tag) { case ACL_USER_OBJ: