summaryrefslogtreecommitdiff
path: root/fs/btrfs/compression.h
diff options
context:
space:
mode:
authorLiu Bo <bo.li.liu@oracle.com>2017-10-23 23:18:16 -0600
committerDavid Sterba <dsterba@suse.com>2017-11-15 14:44:31 +0100
commitf82b735936ffd58b6711cf1f1054616517d8ffcd (patch)
treeb4ad8e86330ccee60b085882d187bd4899010efa /fs/btrfs/compression.h
parentd28e649a5c58b779b303c252c66ee84a0f2c3b32 (diff)
downloadlwn-f82b735936ffd58b6711cf1f1054616517d8ffcd.tar.gz
lwn-f82b735936ffd58b6711cf1f1054616517d8ffcd.zip
Btrfs: add write_flags for compression bio
Compression code path has only flaged bios with REQ_OP_WRITE no matter where the bios come from, but it could be a sync write if fsync starts this writeback or a normal writeback write if wb kthread starts a periodic writeback. It breaks the rule that sync writes and writeback writes need to be differentiated from each other, because from the POV of block layer, all bios need to be recognized by these flags in order to do some management, e.g. throttlling. This passes writeback_control to compression write path so that it can send bios with proper flags to block layer. Signed-off-by: Liu Bo <bo.li.liu@oracle.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/compression.h')
-rw-r--r--fs/btrfs/compression.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/compression.h b/fs/btrfs/compression.h
index da20755ebf21..93c5b82ae97e 100644
--- a/fs/btrfs/compression.h
+++ b/fs/btrfs/compression.h
@@ -91,7 +91,8 @@ blk_status_t btrfs_submit_compressed_write(struct inode *inode, u64 start,
unsigned long len, u64 disk_start,
unsigned long compressed_len,
struct page **compressed_pages,
- unsigned long nr_pages);
+ unsigned long nr_pages,
+ unsigned int write_flags);
blk_status_t btrfs_submit_compressed_read(struct inode *inode, struct bio *bio,
int mirror_num, unsigned long bio_flags);