• Tejun Heo's avatar
    blk-throttle: remove asynchrnous percpu stats allocation mechanism · 4fb72036
    Tejun Heo authored
    Because percpu allocator couldn't do non-blocking allocations,
    blk-throttle was forced to implement an ad-hoc asynchronous allocation
    mechanism for its percpu stats for cases where blkg's (blkcg_gq's) are
    allocated from an IO path without sleepable context.
    
    Now that percpu allocator can handle gfp_mask and blkg_policy_data
    alloc / free are handled by policy methods, the ad-hoc asynchronous
    allocation mechanism can be replaced with direct allocation from
    tg_stats_alloc_fn().  Rit it out.
    
    This ensures that an active throtl_grp always has valid non-NULL
    ->stats_cpu.  Remove checks on it.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Cc: Vivek Goyal <vgoyal@redhat.com>
    Signed-off-by: default avatarJens Axboe <axboe@fb.com>
    4fb72036
blk-throttle.c 44.1 KB