diff options
author | Tejun Heo <tj@kernel.org> | 2013-05-14 13:52:35 -0700 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2013-05-14 13:52:35 -0700 |
commit | 651930bc1c2a2550fde93a8cfa1a201c363a0ca1 (patch) | |
tree | e043b460d7a681d846057a52bd8ed221dfaa1f6e /block/blk-flush.c | |
parent | 73f0d49a9637a7ec3448a62a0042e35b14ba18a3 (diff) | |
download | op-kernel-dev-651930bc1c2a2550fde93a8cfa1a201c363a0ca1.zip op-kernel-dev-651930bc1c2a2550fde93a8cfa1a201c363a0ca1.tar.gz |
blk-throttle: dispatch to throtl_data->service_queue.bio_lists[]
throtl_service_queues will eventually form a tree which is anchored at
throtl_data->service_queue and queue bios will climb the tree to the
top service_queue to be executed.
This patch makes the dispatch paths in blk_throtl_dispatch_work_fn()
and blk_throtl_drain() to dispatch bios to
throtl_data->service_queue.bio_lists[] instead of the on-stack
bio_lists. This will keep the final dispatch to the top level
service_queue share the same mechanism as dispatches through the rest
of the hierarchy.
As bio's should be issued in a sleepable context,
blk_throtl_dispatch_work_fn() transfers all dispatched bio's from the
service_queue bio_lists[] into an onstack one before dropping
queue_lock and issuing the bio's.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
Diffstat (limited to 'block/blk-flush.c')
0 files changed, 0 insertions, 0 deletions