On Tue, Apr 07, 2020 at 04:22:40PM +0200, Max Kellermann wrote: > > - if (S_ISLNK(*mode) || !IS_POSIXACL(dir)) > + if (S_ISLNK(*mode)) > return 0; > > + if (!IS_POSIXACL(dir)) { > + *mode &= ~current_umask(); > + return 0; > + } > + I think the first hunk is obviously correct, but I don't think we need the second one, as the handling of the get_acl() eturn value should do the right thing. If you want to optimize it a bit, it might be worth to move the !IS_POSIXACL check in get_acl to the top of the function, before checking the cached ACL.