diff options
author | Chris Mason <chris.mason@oracle.com> | 2010-05-25 09:48:28 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2010-05-25 10:34:58 -0400 |
commit | eaf25d933e64c2bf3c79b83e8820404f36fdfc52 (patch) | |
tree | 649dc862fcc9a243bdc925db34da618b25a275fc /fs/btrfs/extent_io.c | |
parent | ed3b3d314cd2f16fac42676839854a68cab2e22b (diff) | |
download | linux-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.c | 2 |
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)) |