Merge branch 'for-2.6.39/core' of git://git.kernel.dk/linux-2.6-block
* 'for-2.6.39/core' of git://git.kernel.dk/linux-2.6-block: (65 commits) Documentation/iostats.txt: bit-size reference etc. cfq-iosched: removing unnecessary think time checking cfq-iosched: Don't clear queue stats when preempt. blk-throttle: Reset group slice when limits are changed blk-cgroup: Only give unaccounted_time under debug cfq-iosched: Don't set active queue in preempt block: fix non-atomic access to genhd inflight structures block: attempt to merge with existing requests on plug flush block: NULL dereference on error path in __blkdev_get() cfq-iosched: Don't update group weights when on service tree fs: assign sb->s_bdi to default_backing_dev_info if the bdi is going away block: Require subsystems to explicitly allocate bio_set integrity mempool jbd2: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging jbd: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging fs: make fsync_buffers_list() plug mm: make generic_writepages() use plugging blk-cgroup: Add unaccounted time to timeslice_used. block: fixup plugging stubs for !CONFIG_BLOCK block: remove obsolete comments for blkdev_issue_zeroout. blktrace: Use rq->cmd_flags directly in blk_add_trace_rq. ... Fix up conflicts in fs/{aio.c,super.c}
This commit is contained in:
@@ -990,7 +990,7 @@ xfs_buf_lock(
|
||||
if (atomic_read(&bp->b_pin_count) && (bp->b_flags & XBF_STALE))
|
||||
xfs_log_force(bp->b_target->bt_mount, 0);
|
||||
if (atomic_read(&bp->b_io_remaining))
|
||||
blk_run_address_space(bp->b_target->bt_mapping);
|
||||
blk_flush_plug(current);
|
||||
down(&bp->b_sema);
|
||||
XB_SET_OWNER(bp);
|
||||
|
||||
@@ -1034,9 +1034,7 @@ xfs_buf_wait_unpin(
|
||||
set_current_state(TASK_UNINTERRUPTIBLE);
|
||||
if (atomic_read(&bp->b_pin_count) == 0)
|
||||
break;
|
||||
if (atomic_read(&bp->b_io_remaining))
|
||||
blk_run_address_space(bp->b_target->bt_mapping);
|
||||
schedule();
|
||||
io_schedule();
|
||||
}
|
||||
remove_wait_queue(&bp->b_waiters, &wait);
|
||||
set_current_state(TASK_RUNNING);
|
||||
@@ -1442,7 +1440,7 @@ xfs_buf_iowait(
|
||||
trace_xfs_buf_iowait(bp, _RET_IP_);
|
||||
|
||||
if (atomic_read(&bp->b_io_remaining))
|
||||
blk_run_address_space(bp->b_target->bt_mapping);
|
||||
blk_flush_plug(current);
|
||||
wait_for_completion(&bp->b_iowait);
|
||||
|
||||
trace_xfs_buf_iowait_done(bp, _RET_IP_);
|
||||
@@ -1666,7 +1664,6 @@ xfs_mapping_buftarg(
|
||||
struct inode *inode;
|
||||
struct address_space *mapping;
|
||||
static const struct address_space_operations mapping_aops = {
|
||||
.sync_page = block_sync_page,
|
||||
.migratepage = fail_migrate_page,
|
||||
};
|
||||
|
||||
@@ -1947,7 +1944,7 @@ xfsbufd(
|
||||
count++;
|
||||
}
|
||||
if (count)
|
||||
blk_run_address_space(target->bt_mapping);
|
||||
blk_flush_plug(current);
|
||||
|
||||
} while (!kthread_should_stop());
|
||||
|
||||
@@ -1995,7 +1992,7 @@ xfs_flush_buftarg(
|
||||
|
||||
if (wait) {
|
||||
/* Expedite and wait for IO to complete. */
|
||||
blk_run_address_space(target->bt_mapping);
|
||||
blk_flush_plug(current);
|
||||
while (!list_empty(&wait_list)) {
|
||||
bp = list_first_entry(&wait_list, struct xfs_buf, b_list);
|
||||
|
||||
|
Reference in New Issue
Block a user