summaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia/sa11xx_base.h
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2010-06-29 10:07:12 +0200
committerTejun Heo <tj@kernel.org>2010-06-29 10:07:12 +0200
commita0a1a5fd4fb15ec61117c759fe9f5c16c53d9e9c (patch)
tree6df8eddcaeff6cde892c8cae6bdfa7653805e144 /drivers/pcmcia/sa11xx_base.h
parentworkqueue: implement per-cwq active work limit (diff)
downloadlinux-a0a1a5fd4fb15ec61117c759fe9f5c16c53d9e9c.tar.xz
linux-a0a1a5fd4fb15ec61117c759fe9f5c16c53d9e9c.zip
workqueue: reimplement workqueue freeze using max_active
Currently, workqueue freezing is implemented by marking the worker freezeable and calling try_to_freeze() from dispatch loop. Reimplement it using cwq->limit so that the workqueue is frozen instead of the worker. * workqueue_struct->saved_max_active is added which stores the specified max_active on initialization. * On freeze, all cwq->max_active's are quenched to zero. Freezing is complete when nr_active on all cwqs reach zero. * On thaw, all cwq->max_active's are restored to wq->saved_max_active and the worklist is repopulated. This new implementation allows having single shared pool of workers per cpu. Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/pcmcia/sa11xx_base.h')
0 files changed, 0 insertions, 0 deletions