diff options
Diffstat (limited to 'fs/btrfs/super.c')
-rw-r--r-- | fs/btrfs/super.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index 2e6039825b7b..431fdf144b58 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c | |||
@@ -47,6 +47,7 @@ | |||
47 | #include "volumes.h" | 47 | #include "volumes.h" |
48 | #include "version.h" | 48 | #include "version.h" |
49 | #include "export.h" | 49 | #include "export.h" |
50 | #include "compression.h" | ||
50 | 51 | ||
51 | #define BTRFS_SUPER_MAGIC 0x9123683E | 52 | #define BTRFS_SUPER_MAGIC 0x9123683E |
52 | 53 | ||
@@ -69,7 +70,7 @@ static void btrfs_put_super (struct super_block * sb) | |||
69 | enum { | 70 | enum { |
70 | Opt_degraded, Opt_subvol, Opt_device, Opt_nodatasum, Opt_nodatacow, | 71 | Opt_degraded, Opt_subvol, Opt_device, Opt_nodatasum, Opt_nodatacow, |
71 | Opt_max_extent, Opt_max_inline, Opt_alloc_start, Opt_nobarrier, | 72 | Opt_max_extent, Opt_max_inline, Opt_alloc_start, Opt_nobarrier, |
72 | Opt_ssd, Opt_thread_pool, Opt_noacl, Opt_err, | 73 | Opt_ssd, Opt_thread_pool, Opt_noacl, Opt_compress, Opt_err, |
73 | }; | 74 | }; |
74 | 75 | ||
75 | static match_table_t tokens = { | 76 | static match_table_t tokens = { |
@@ -83,6 +84,7 @@ static match_table_t tokens = { | |||
83 | {Opt_max_inline, "max_inline=%s"}, | 84 | {Opt_max_inline, "max_inline=%s"}, |
84 | {Opt_alloc_start, "alloc_start=%s"}, | 85 | {Opt_alloc_start, "alloc_start=%s"}, |
85 | {Opt_thread_pool, "thread_pool=%d"}, | 86 | {Opt_thread_pool, "thread_pool=%d"}, |
87 | {Opt_compress, "compress"}, | ||
86 | {Opt_ssd, "ssd"}, | 88 | {Opt_ssd, "ssd"}, |
87 | {Opt_noacl, "noacl"}, | 89 | {Opt_noacl, "noacl"}, |
88 | {Opt_err, NULL}, | 90 | {Opt_err, NULL}, |
@@ -163,6 +165,10 @@ int btrfs_parse_options(struct btrfs_root *root, char *options) | |||
163 | btrfs_set_opt(info->mount_opt, NODATACOW); | 165 | btrfs_set_opt(info->mount_opt, NODATACOW); |
164 | btrfs_set_opt(info->mount_opt, NODATASUM); | 166 | btrfs_set_opt(info->mount_opt, NODATASUM); |
165 | break; | 167 | break; |
168 | case Opt_compress: | ||
169 | printk(KERN_INFO "btrfs: use compression\n"); | ||
170 | btrfs_set_opt(info->mount_opt, COMPRESS); | ||
171 | break; | ||
166 | case Opt_ssd: | 172 | case Opt_ssd: |
167 | printk(KERN_INFO "btrfs: use ssd allocation scheme\n"); | 173 | printk(KERN_INFO "btrfs: use ssd allocation scheme\n"); |
168 | btrfs_set_opt(info->mount_opt, SSD); | 174 | btrfs_set_opt(info->mount_opt, SSD); |
@@ -622,6 +628,7 @@ static int __init init_btrfs_fs(void) | |||
622 | err = btrfs_interface_init(); | 628 | err = btrfs_interface_init(); |
623 | if (err) | 629 | if (err) |
624 | goto free_extent_map; | 630 | goto free_extent_map; |
631 | |||
625 | err = register_filesystem(&btrfs_fs_type); | 632 | err = register_filesystem(&btrfs_fs_type); |
626 | if (err) | 633 | if (err) |
627 | goto unregister_ioctl; | 634 | goto unregister_ioctl; |
@@ -651,6 +658,7 @@ static void __exit exit_btrfs_fs(void) | |||
651 | unregister_filesystem(&btrfs_fs_type); | 658 | unregister_filesystem(&btrfs_fs_type); |
652 | btrfs_exit_sysfs(); | 659 | btrfs_exit_sysfs(); |
653 | btrfs_cleanup_fs_uuids(); | 660 | btrfs_cleanup_fs_uuids(); |
661 | btrfs_zlib_exit(); | ||
654 | } | 662 | } |
655 | 663 | ||
656 | module_init(init_btrfs_fs) | 664 | module_init(init_btrfs_fs) |