Re: [PATCH v2] fs/{posix_acl,ext2,jfs,ceph}: apply umask if ACL support is disabled
From: Max Kellermann
Date: Wed Oct 11 2023 - 08:28:08 EST
On Wed, Oct 11, 2023 at 2:18 PM Max Kellermann <max.kellermann@xxxxxxxxx> wrote:
> But without the other filesystems. I'll resend it with just the
> posix_acl.h hunk.
Thinking again, I don't think this is the proper solution. This may
server as a workaround so those broken filesystems don't suffer from
this bug, but it's not proper.
posix_acl_create() is only supposed to appy the umask if the inode
supports ACLs; if not, the VFS is supposed to do it. But if the
filesystem pretends to have ACL support but the kernel does not, it's
really a filesystem bug. Hacking the umask code into
posix_acl_create() for that inconsistent case doesn't sound right.
A better workaround would be this patch:
https://patchwork.kernel.org/project/linux-nfs/patch/151603744662.29035.4910161264124875658.stgit@xxxxxxxxxxxxxxxx-ag/
I submitted it more than 5 years ago, it got one positive review, but
was never merged.
This patch enables the VFS's umask code even if the filesystem
prerents to support ACLs. This still doesn't fix the filesystem bug,
but makes VFS's behavior consistent.
Max