[lkml]   [2016]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] drm/qxl: Remove deprecated create_singlethread_workqueue
On Sat, Jul 02, 2016 at 04:32:09PM +0530, Bhaktipriya Shridhar wrote:
> System workqueues have been able to handle high level of concurrency
> for a long time now and there's no reason to use dedicated workqueues
> just to gain concurrency. Since the workqueue in the QXL graphics device
> driver is involved in freeing and processing the release ring
> (workitem &qdev->gc_workqxl, maps to gc_work which calls
> qxl_garbage_collect) and is not being used on a memory reclaim path,
> dedicated gc_queue has been replaced with the use of system_wq.
> Unlike a dedicated per-cpu workqueue created with create_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 guarantees unless the target CPU is
> explicitly specified and thus the increase of local concurrency
> shouldn't make any difference.
> flush_work() has been called in qxl_device_fini() to ensure that there
> are no pending tasks while disconnecting the driver.
> Signed-off-by: Bhaktipriya Shridhar <>

Acked-by: Tejun Heo <>



 \ /
  Last update: 2016-07-02 16:21    [W:0.068 / U:1.620 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site