btrfs: prohibit a operation of changing acl's mask when noacl mount option used
PATCH 1/1 btrfs: prohibit a operation of changing acl's mask when noacl mount option used
when used Posix File System Test Suite(pjd-fstest) to test btrfs, some cases about setfacl failed when noacl mount option used. I simplified used commands in pjd-fstest, and the following steps can reproduce it.
------------------------
# cd btrfs-part/ # mkdir aaa # setfacl -m m::rw aaa <- successed, but not expected by pjd-fstest. ------------------------ I checked ext3, a warning message occured, like as: setfacl: aaa/: Operation not supported Certainly, it's expected by pjd-fstest.
So, i compared acl.c of btrfs and ext3. Based on that, a patch created. Fortunately, it works.
Signed-off-by Shi Weihua <[email protected]>
---
fs/btrfs/acl.c +3 -0
@@ -159,6 +159,9 @@ static int btrfs_xattr_set_acl(struct inode *inode, int type,int ret;struct posix_acl *acl =NULL ; +if (!IS_POSIXACL (inode)) +return -EOPNOTSUPP ; +if (value) { acl =posix_acl_from_xattr (value, size);if (acl ==NULL ) {