[PATCH] drm/qxl: Remove deprecated create_singlethread_workqueue

Daniel Vetter daniel at ffwll.ch
Tue Jul 12 12:45:01 UTC 2016


On Sat, Jul 02, 2016 at 09:44:17AM -0400, Tejun Heo wrote:
> 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 <bhaktipriya96 at gmail.com>
> 
> Acked-by: Tejun Heo <tj at kernel.org>

Applied to drm-misc, thanks.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list