summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/super.c
diff options
context:
space:
mode:
authorEric Sandeen <sandeen@redhat.com>2014-06-27 23:50:31 +0200
committerChris Mason <clm@fb.com>2014-07-03 16:04:06 +0200
commit2aa06a35d06a34b3109bdbf1d653de1695dc8f12 (patch)
tree619b71c486c3c5097cb682a4c3553f7954287766 /fs/btrfs/super.c
parentBtrfs: fix race between balance recovery and root deletion (diff)
downloadlinux-2aa06a35d06a34b3109bdbf1d653de1695dc8f12.tar.xz
linux-2aa06a35d06a34b3109bdbf1d653de1695dc8f12.zip
btrfs: fix nossd and ssd_spread mount option regression
The commit 0780253 btrfs: Cleanup the btrfs_parse_options for remount. broke ssd options quite badly; it stopped making ssd_spread imply ssd, and it made "nossd" unsettable. Put things back at least as well as they were before (though ssd mount option handling is still pretty odd: # mount -o "nossd,ssd_spread" works?) Reported-by: Roman Mamedov <rm@romanrm.net> Signed-off-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to '')
-rw-r--r--fs/btrfs/super.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index b6ebde231de7..0927e463afca 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -522,9 +522,10 @@ int btrfs_parse_options(struct btrfs_root *root, char *options)
case Opt_ssd_spread:
btrfs_set_and_info(root, SSD_SPREAD,
"use spread ssd allocation scheme");
+ btrfs_set_opt(info->mount_opt, SSD);
break;
case Opt_nossd:
- btrfs_clear_and_info(root, NOSSD,
+ btrfs_set_and_info(root, NOSSD,
"not using ssd allocation scheme");
btrfs_clear_opt(info->mount_opt, SSD);
break;