Skip to content

Commit

Permalink
Btrfs: Don't return acl info when mounting with noacl option
Browse files Browse the repository at this point in the history
Steps to reproduce:

  # mkfs.btrfs /dev/sda2
  # mount /dev/sda2 /mnt
  # touch /mnt/file0
  # setfacl -m 'u:root:x,g::x,o::x' /mnt/file0
  # umount /mnt
  # mount /dev/sda2 -o noacl /mnt
  # getfacl /mnt/file0
  ...
  user::rw-
  user:root:--x
  group::--x
  mask::--x
  other::--x

The output should be:

  user::rw-
  group::--x
  other::--x

Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
  • Loading branch information
Miao Xie authored and Li Zefan committed Jan 26, 2011
1 parent 3f3d0bc commit d0f6968
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions fs/btrfs/acl.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,9 @@ static struct posix_acl *btrfs_get_acl(struct inode *inode, int type)
char *value = NULL;
struct posix_acl *acl;

if (!IS_POSIXACL(inode))
return NULL;

acl = get_cached_acl(inode, type);
if (acl != ACL_NOT_CACHED)
return acl;
Expand Down Expand Up @@ -82,6 +85,9 @@ static int btrfs_xattr_acl_get(struct dentry *dentry, const char *name,
struct posix_acl *acl;
int ret = 0;

if (!IS_POSIXACL(dentry->d_inode))
return -EOPNOTSUPP;

acl = btrfs_get_acl(dentry->d_inode, type);

if (IS_ERR(acl))
Expand Down

0 comments on commit d0f6968

Please sign in to comment.