From: Tejun Heo Date: Tue, 14 May 2013 20:52:38 +0000 (-0700) Subject: blk-throttle: make blk_throtl_bio() ready for hierarchy X-Git-Tag: v3.11-rc1~21^2~9 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9e660acffcd1b5adc4ec1ffba0cbb584f86b8907;p=pandora-kernel.git blk-throttle: make blk_throtl_bio() ready for hierarchy Currently, blk_throtl_bio() issues the passed in bio directly if it's within limits of its associated tg (throtl_grp). This behavior becomes incorrect with hierarchy support as the bio should be accounted to and throttled by the ancestor throtl_grps too. This patch makes the direct issue path of blk_throtl_bio() to loop until it reaches the top-level service_queue or gets throttled. If the former, the bio can be issued directly; otherwise, it gets queued at the first layer it was above limits. As tg->parent_sq is always the top-level service queue currently, this patch in itself doesn't make any behavior differences. Signed-off-by: Tejun Heo Acked-by: Vivek Goyal --- Reading git-diff-tree failed