Btrfs: Fix setting umask when POSIX ACLs are not enabled
authorChris Ball <cjb@laptop.org>
Tue, 29 Sep 2009 17:51:04 +0000 (13:51 -0400)
committerChris Mason <chris.mason@oracle.com>
Tue, 29 Sep 2009 17:51:04 +0000 (13:51 -0400)
We currently set sb->s_flags |= MS_POSIXACL unconditionally, which is
incorrect -- it tells the VFS that it shouldn't set umask because we
will, yet we don't set it ourselves if we aren't using POSIX ACLs, so
the umask ends up ignored.

Signed-off-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Chris Mason <chris.mason@oracle.com>
fs/btrfs/super.c

index 0242c8babae92e83cdfca98eb8bde41fcab6604f..e0a64328080c4ad235bf876c7a1633e62fe61784 100644 (file)
@@ -344,7 +344,9 @@ static int btrfs_fill_super(struct super_block *sb,
        sb->s_export_op = &btrfs_export_ops;
        sb->s_xattr = btrfs_xattr_handlers;
        sb->s_time_gran = 1;
+#ifdef CONFIG_BTRFS_POSIX_ACL
        sb->s_flags |= MS_POSIXACL;
+#endif
 
        tree_root = open_ctree(sb, fs_devices, (char *)data);