[lkml]   [2012]   [Apr]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 4/4] blkcg: use radix tree to index blkgs from blkcg
On Thu, Apr 19, 2012 at 04:29:24PM -0700, Tejun Heo wrote:
> blkg lookup is currently performed by traversing linked list anchored
> at blkcg->blkg_list. This is very unscalable and with blk-throttle
> enabled and enough request queues on the system, this can get very
> ugly quickly (blk-throttle performs look up on every bio submission).
> This patch makes blkcg use radix tree to index blkgs combined with
> simple last-looked-up hint. This is mostly identical to how icqs are
> indexed from ioc.
> Note that because __blkg_lookup() may be invoked without holding queue
> lock, hint is only updated from __blkg_lookup_create(). Due to cfq's
> cfqq caching, this makes hint updates overly lazy. This will be
> improved with scheduled blkcg aware request allocation.
> Signed-off-by: Tejun Heo <>
> Cc: Vivek Goyal <>

Nice to see radix tree lookup and caching hint. Helps with scalability.

Acked-by: Vivek Goyal <>


 \ /
  Last update: 2012-04-20 19:29    [W:0.179 / U:5.452 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site