Thread (4 messages) 4 messages, 3 authors, 2016-08-10

Re: [PATCH] omapfb: panel-dsi-cm: Remove deprecated create_singlethread_workqueue

From: Tomi Valkeinen <hidden>
Date: 2016-08-10 10:44:42


On 02/07/16 11:25, Bhaktipriya Shridhar wrote:
The workqueue "workqueue" has only a single workitem(&ddata->ulps_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.

dsicm_remove() calls dsicm_cancel_ulps_work which uses
cancel_delayed_work() to ensure that there are no pending tasks while
disconnecting the driver.

Signed-off-by: Bhaktipriya Shridhar <redacted>
---
 drivers/video/fbdev/omap2/omapfb/displays/panel-dsi-cm.c | 14 ++------------
 1 file changed, 2 insertions(+), 12 deletions(-)
Thanks, queued for v4.9.

 Tomi

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help