diff options
Diffstat (limited to 'fs/btrfs/super.c')
| -rw-r--r-- | fs/btrfs/super.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index 752a5463bf53..3f9b45704fcd 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c | |||
| @@ -128,6 +128,7 @@ int btrfs_parse_options(struct btrfs_root *root, char *options) | |||
| 128 | substring_t args[MAX_OPT_ARGS]; | 128 | substring_t args[MAX_OPT_ARGS]; |
| 129 | char *p, *num; | 129 | char *p, *num; |
| 130 | int intarg; | 130 | int intarg; |
| 131 | int ret = 0; | ||
| 131 | 132 | ||
| 132 | if (!options) | 133 | if (!options) |
| 133 | return 0; | 134 | return 0; |
| @@ -262,12 +263,18 @@ int btrfs_parse_options(struct btrfs_root *root, char *options) | |||
| 262 | case Opt_discard: | 263 | case Opt_discard: |
| 263 | btrfs_set_opt(info->mount_opt, DISCARD); | 264 | btrfs_set_opt(info->mount_opt, DISCARD); |
| 264 | break; | 265 | break; |
| 266 | case Opt_err: | ||
| 267 | printk(KERN_INFO "btrfs: unrecognized mount option " | ||
| 268 | "'%s'\n", p); | ||
| 269 | ret = -EINVAL; | ||
| 270 | goto out; | ||
| 265 | default: | 271 | default: |
| 266 | break; | 272 | break; |
| 267 | } | 273 | } |
| 268 | } | 274 | } |
| 275 | out: | ||
| 269 | kfree(options); | 276 | kfree(options); |
| 270 | return 0; | 277 | return ret; |
| 271 | } | 278 | } |
| 272 | 279 | ||
| 273 | /* | 280 | /* |
| @@ -405,8 +412,8 @@ int btrfs_sync_fs(struct super_block *sb, int wait) | |||
| 405 | return 0; | 412 | return 0; |
| 406 | } | 413 | } |
| 407 | 414 | ||
| 408 | btrfs_start_delalloc_inodes(root); | 415 | btrfs_start_delalloc_inodes(root, 0); |
| 409 | btrfs_wait_ordered_extents(root, 0); | 416 | btrfs_wait_ordered_extents(root, 0, 0); |
| 410 | 417 | ||
| 411 | trans = btrfs_start_transaction(root, 1); | 418 | trans = btrfs_start_transaction(root, 1); |
| 412 | ret = btrfs_commit_transaction(trans, root); | 419 | ret = btrfs_commit_transaction(trans, root); |
| @@ -450,6 +457,8 @@ static int btrfs_show_options(struct seq_file *seq, struct vfsmount *vfs) | |||
| 450 | seq_puts(seq, ",notreelog"); | 457 | seq_puts(seq, ",notreelog"); |
| 451 | if (btrfs_test_opt(root, FLUSHONCOMMIT)) | 458 | if (btrfs_test_opt(root, FLUSHONCOMMIT)) |
| 452 | seq_puts(seq, ",flushoncommit"); | 459 | seq_puts(seq, ",flushoncommit"); |
| 460 | if (btrfs_test_opt(root, DISCARD)) | ||
| 461 | seq_puts(seq, ",discard"); | ||
| 453 | if (!(root->fs_info->sb->s_flags & MS_POSIXACL)) | 462 | if (!(root->fs_info->sb->s_flags & MS_POSIXACL)) |
| 454 | seq_puts(seq, ",noacl"); | 463 | seq_puts(seq, ",noacl"); |
| 455 | return 0; | 464 | return 0; |
