Messages in this thread | | | Date | Wed, 1 Jun 2016 11:45:27 -0400 | From | Tejun Heo <> | Subject | Re: [PATCH v2] xen: xen-pciback: Remove create_workqueue |
| |
On Wed, Jun 01, 2016 at 07:45:08PM +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. Replace dedicated xen_pcibk_wq 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. > > Since the work items could be pending, flush_work() has been used in > xen_pcibk_disconnect(). xen_pcibk_xenbus_remove() calls free_pdev() > which in turn calls xen_pcibk_disconnect() for every pdev to ensure that > there is no pending task while disconnecting the driver. > > Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Acked-by: Tejun Heo <tj@kernel.org>
Thanks.
-- tejun
| |