Re: [PATCH v3] dmaengine: idxd: force wq context cleanup on device disable path

From: Vinod Koul
Date: Fri Jul 01 2022 - 07:43:03 EST


On 28-06-22, 16:00, Fenghua Yu wrote:
> From: Dave Jiang <dave.jiang@xxxxxxxxx>
>
> Testing shown that when a wq mode is setup to be dedicated and then torn
> down and reconfigured to shared, the wq configured end up being dedicated
> anyays. The root cause is when idxd_device_wqs_clear_state() gets called
> during idxd_driver removal, idxd_wq_disable_cleanup() does not get called
> vs when the wq driver is removed first. The check of wq state being
> "enabled" causes the cleanup to be bypassed. However, idxd_driver->remove()
> releases all wq drivers. So the wqs goes to "disabled" state and will never
> be "enabled". By that point, the driver has no idea if the wq was
> previously configured or clean. So force call idxd_wq_disable_cleanup() on
> all wqs always to make sure everything gets cleaned up.

Applied, thanks

--
~Vinod