Commit 9120c879 authored by Dave Jiang's avatar Dave Jiang Committed by Vinod Koul
Browse files

dmaengine: idxd: free irq before wq type is reset



Call idxd_wq_free_irq() in the drv_disable_wq() function before
idxd_wq_reset() is called. Otherwise the wq type is reset and the irq does
not get freed.

Fixes: 63c14ae6 ("dmaengine: idxd: refactor wq driver enable/disable operations")
Signed-off-by: default avatarDave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/165231367316.986407.11001767338124941736.stgit@djiang5-desk3.ch.intel.com


Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent cf4ac3fe
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1383,9 +1383,9 @@ void drv_disable_wq(struct idxd_wq *wq)
	idxd_wq_free_resources(wq);
	idxd_wq_unmap_portal(wq);
	idxd_wq_drain(wq);
	idxd_wq_free_irq(wq);
	idxd_wq_reset(wq);
	percpu_ref_exit(&wq->wq_active);
	idxd_wq_free_irq(wq);
	wq->type = IDXD_WQT_NONE;
	wq->client_count = 0;
}