• Tejun Heo's avatar
    workqueue: make freezing/thawing per-pool · a1056305
    Tejun Heo authored
    Instead of holding locks from both pools and then processing the pools
    together, make freezing/thwaing per-pool - grab locks of one pool,
    process it, release it and then proceed to the next pool.
    
    While this patch changes processing order across pools, order within
    each pool remains the same.  As each pool is independent, this
    shouldn't break anything.
    
    This is part of an effort to remove global_cwq and make worker_pool
    the top level abstraction, which in turn will help implementing worker
    pools with user-specified attributes.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Reviewed-by: default avatarLai Jiangshan <laijs@cn.fujitsu.com>
    a1056305
workqueue.c 106 KB