summaryrefslogtreecommitdiffstats
path: root/drivers/spi
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2013-05-14 13:52:37 -0700
committerTejun Heo <tj@kernel.org>2013-05-14 13:52:37 -0700
commit6e1a5704cbbd244a8db2d7d59215cf9a4c9a0d31 (patch)
tree1d81963b53b4753eb5a492e5a15f8b68f81ed58c /drivers/spi
parent7f52f98c2a83339b89a27d01296354e5dbb90ad0 (diff)
downloadlinux-6e1a5704cbbd244a8db2d7d59215cf9a4c9a0d31.tar.gz
linux-6e1a5704cbbd244a8db2d7d59215cf9a4c9a0d31.tar.bz2
linux-6e1a5704cbbd244a8db2d7d59215cf9a4c9a0d31.zip
blk-throttle: dispatch from throtl_pending_timer_fn()
Currently, blk_throtl_dispatch_work_fn() is responsible for both dispatching bio's from throtl_grp's according to their limits and then issuing the dispatched bios. This patch moves the dispatch part to throtl_pending_timer_fn() so that the work item is kicked iff there are bio's to issue. This is to avoid work item execution at each step when hierarchy support is enabled. bio's will be dispatched towards the top-level service_queue from the timers at each layer and the work item will only be used to issue the bio's which reached the top-level service_queue. While fetching bio's to issue from bio_lists[], blk_throtl_dispatch_work_fn() fetches all READs before WRITEs. While the original code also dispatched READs first, if multiple throtl_grps are dispatched on the same run, WRITEs from throtl_grp which is dispatched first would precede READs from throtl_grps which are dispatched later. While this is a behavior change, given that the previous code already prioritized READs and block layer generally prioritizes and segregates READs from WRITEs, this isn't likely to make any noticeable differences. Signed-off-by: Tejun Heo <tj@kernel.org> Acked-by: Vivek Goyal <vgoyal@redhat.com>
Diffstat (limited to 'drivers/spi')
0 files changed, 0 insertions, 0 deletions