summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent_io.c
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2010-05-25 09:48:28 -0400
committerChris Mason <chris.mason@oracle.com>2010-05-25 10:34:58 -0400
commiteaf25d933e64c2bf3c79b83e8820404f36fdfc52 (patch)
tree649dc862fcc9a243bdc925db34da618b25a275fc /fs/btrfs/extent_io.c
parented3b3d314cd2f16fac42676839854a68cab2e22b (diff)
downloadlinux-eaf25d933e64c2bf3c79b83e8820404f36fdfc52.tar.gz
linux-eaf25d933e64c2bf3c79b83e8820404f36fdfc52.tar.bz2
linux-eaf25d933e64c2bf3c79b83e8820404f36fdfc52.zip
Btrfs: use async helpers for DIO write checksumming
The async helper threads offload crc work onto all the CPUs, and make streaming writes much faster. This changes the O_DIRECT write code to use them. The only small complication was that we need to pass in the logical offset in the file for each bio, because we can't find it in the bio's pages. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/extent_io.c')
-rw-r--r--fs/btrfs/extent_io.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index a53aca338c7f..15392af21bfb 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -1913,7 +1913,7 @@ static int submit_one_bio(int rw, struct bio *bio, int mirror_num,
if (tree->ops && tree->ops->submit_bio_hook)
tree->ops->submit_bio_hook(page->mapping->host, rw, bio,
- mirror_num, bio_flags);
+ mirror_num, bio_flags, start);
else
submit_bio(rw, bio);
if (bio_flagged(bio, BIO_EOPNOTSUPP))