Commit d0ad4238 authored by Dave Jiang's avatar Dave Jiang Committed by Vinod Koul

dmaengine: idxd: skip irq free when wq type is not kernel

Skip wq irq resources freeing when wq type is not kernel since the driver
skips the irq alloction during wq enable. Add check in wq type check in
idxd_wq_free_irq() to mirror idxd_wq_request_irq().

Fixes: 63c14ae6 ("dmaengine: idxd: refactor wq driver enable/disable operations")
Reported-by: default avatarTony Zu <tony.zhu@intel.com>
Tested-by: default avatarTony Zu <tony.zhu@intel.com>
Signed-off-by: default avatarDave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/165176310726.2112428.7474366910758522079.stgit@djiang5-desk3.ch.intel.comSigned-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent 8e6226f0
...@@ -1176,6 +1176,9 @@ void idxd_wq_free_irq(struct idxd_wq *wq) ...@@ -1176,6 +1176,9 @@ void idxd_wq_free_irq(struct idxd_wq *wq)
struct idxd_device *idxd = wq->idxd; struct idxd_device *idxd = wq->idxd;
struct idxd_irq_entry *ie = &wq->ie; struct idxd_irq_entry *ie = &wq->ie;
if (wq->type != IDXD_WQT_KERNEL)
return;
synchronize_irq(ie->vector); synchronize_irq(ie->vector);
free_irq(ie->vector, ie); free_irq(ie->vector, ie);
idxd_flush_pending_descs(ie); idxd_flush_pending_descs(ie);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment