diff options
author | Chris Mason <chris.mason@oracle.com> | 2008-04-16 11:14:51 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2008-09-25 11:04:01 -0400 |
commit | 44b8bd7edda4f63de180d0f7325c9fb704b3806b (patch) | |
tree | 6090e8b70d6a726caed7d4662c311779d1927cf7 /fs/btrfs/extent_io.h | |
parent | 321aecc65671ae8136bd2ca6879b56f0221f8ac8 (diff) | |
download | blackbird-op-linux-44b8bd7edda4f63de180d0f7325c9fb704b3806b.tar.gz blackbird-op-linux-44b8bd7edda4f63de180d0f7325c9fb704b3806b.zip |
Btrfs: Create a work queue for bio writes
This allows checksumming to happen in parallel among many cpus, and
keeps us from bogging down pdflush with the checksumming code.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/extent_io.h')
-rw-r--r-- | fs/btrfs/extent_io.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h index b47859ccd78a..232300d13be2 100644 --- a/fs/btrfs/extent_io.h +++ b/fs/btrfs/extent_io.h @@ -24,11 +24,12 @@ struct extent_state; +typedef int (extent_submit_bio_hook_t)(struct inode *inode, int rw, + struct bio *bio, int mirror_num); struct extent_io_ops { int (*fill_delalloc)(struct inode *inode, u64 start, u64 end); int (*writepage_io_hook)(struct page *page, u64 start, u64 end); - int (*submit_bio_hook)(struct inode *inode, int rw, struct bio *bio, - int mirror_num); + extent_submit_bio_hook_t *submit_bio_hook; int (*merge_bio_hook)(struct page *page, unsigned long offset, size_t size, struct bio *bio); int (*readpage_io_hook)(struct page *page, u64 start, u64 end); |