On Sat, Jun 18, 2016 at 02:36:32PM +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 host->intr_wq is involved > in sync point interrupts, and sync point wait and is not being used on > a memory reclaim path, dedicated host->intr_wq 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. > > cancel_work_sync() has been used in _host1x_free_syncpt_irq() to ensure > that no work is pending by the time exit path runs. Alternatively, this could have used alloc_workqueue() w/o WQ_MEM_RECLAIM and used it just as a flush domain. Either way is fine. Acked-by: Tejun Heo <tj@xxxxxxxxxx> Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html