btrfs: allow to set compression level for zlib
Preliminary support for setting compression level for zlib, the following works: $ mount -o compess=zlib # default $ mount -o compess=zlib0 # same $ mount -o compess=zlib9 # level 9, slower sync, less data $ mount -o compess=zlib1 # level 1, faster sync, more data $ mount -o remount,compress=zlib3 # level set by remount The compress-force works the same as compress'. The level is visible in the same format in /proc/mounts. Level set via file property does not work yet. Required patch: "btrfs: prepare for extensions in compression options" Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
@@ -539,7 +539,10 @@ again:
|
||||
*/
|
||||
extent_range_clear_dirty_for_io(inode, start, end);
|
||||
redirty = 1;
|
||||
ret = btrfs_compress_pages(compress_type,
|
||||
|
||||
/* Compression level is applied here and only here */
|
||||
ret = btrfs_compress_pages(
|
||||
compress_type | (fs_info->compress_level << 4),
|
||||
inode->i_mapping, start,
|
||||
pages,
|
||||
&nr_pages,
|
||||
|
Reference in New Issue
Block a user