s390/cio/chp : Remove deprecated create_singlethread_workqueue
authorBhaktipriya Shridhar <bhaktipriya96@gmail.com>
Sat, 16 Jul 2016 08:48:34 +0000 (14:18 +0530)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 18 Jul 2016 08:17:21 +0000 (10:17 +0200)
commit7b1058bc59ac24eb01e259749e8655fb884aa711
tree3606d57eb01a0c82004d3faf86a4c6e898fe7d46
parent687cb7f21695469626f683d709d931ad41b2ca68
s390/cio/chp : Remove deprecated create_singlethread_workqueue

The workqueue "chp_wq" is involved in performing pending
configure tasks for channel paths.

It has a single work item(&cfg_work) and hence doesn't require
ordering. Also, it is not being used on a memory reclaim path.
Hence, the singlethreaded workqueue has been replaced with the use of
system_wq.

System workqueues have been able to handle high level of concurrency
for a long time now and hence it's not required to have a singlethreaded
workqueue just to gain concurrency. Unlike a dedicated per-cpu workqueue
created with create_singlethread_workqueue(), system_wq allows multiple
work items to overlap executions even on the same CPU; however, a
per-cpu workqueue doesn't have any CPU locality or global ordering
guarantee unless the target CPU is explicitly specified and thus the
increase of local concurrency shouldn't make any difference.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/chp.c