diff options
Diffstat (limited to 'fs/btrfs/disk-io.c')
| -rw-r--r-- | fs/btrfs/disk-io.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 92caa8035f36..a6b83744b05d 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c | |||
| @@ -579,6 +579,10 @@ int btrfs_wq_submit_bio(struct btrfs_fs_info *fs_info, struct inode *inode, | |||
| 579 | async->bio_flags = bio_flags; | 579 | async->bio_flags = bio_flags; |
| 580 | 580 | ||
| 581 | atomic_inc(&fs_info->nr_async_submits); | 581 | atomic_inc(&fs_info->nr_async_submits); |
| 582 | |||
| 583 | if (rw & (1 << BIO_RW_SYNCIO)) | ||
| 584 | btrfs_set_work_high_prio(&async->work); | ||
| 585 | |||
| 582 | btrfs_queue_worker(&fs_info->workers, &async->work); | 586 | btrfs_queue_worker(&fs_info->workers, &async->work); |
| 583 | #if 0 | 587 | #if 0 |
| 584 | int limit = btrfs_async_submit_limit(fs_info); | 588 | int limit = btrfs_async_submit_limit(fs_info); |
| @@ -656,6 +660,7 @@ static int btree_submit_bio_hook(struct inode *inode, int rw, struct bio *bio, | |||
| 656 | return btrfs_map_bio(BTRFS_I(inode)->root, rw, bio, | 660 | return btrfs_map_bio(BTRFS_I(inode)->root, rw, bio, |
| 657 | mirror_num, 0); | 661 | mirror_num, 0); |
| 658 | } | 662 | } |
| 663 | |||
| 659 | /* | 664 | /* |
| 660 | * kthread helpers are used to submit writes so that checksumming | 665 | * kthread helpers are used to submit writes so that checksumming |
| 661 | * can happen in parallel across all CPUs | 666 | * can happen in parallel across all CPUs |
| @@ -2095,10 +2100,10 @@ static int write_dev_supers(struct btrfs_device *device, | |||
| 2095 | device->barriers = 0; | 2100 | device->barriers = 0; |
| 2096 | get_bh(bh); | 2101 | get_bh(bh); |
| 2097 | lock_buffer(bh); | 2102 | lock_buffer(bh); |
| 2098 | ret = submit_bh(WRITE, bh); | 2103 | ret = submit_bh(WRITE_SYNC, bh); |
| 2099 | } | 2104 | } |
| 2100 | } else { | 2105 | } else { |
| 2101 | ret = submit_bh(WRITE, bh); | 2106 | ret = submit_bh(WRITE_SYNC, bh); |
| 2102 | } | 2107 | } |
| 2103 | 2108 | ||
| 2104 | if (!ret && wait) { | 2109 | if (!ret && wait) { |
