projects
/
platform
/
kernel
/
linux-starfive.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
cf4ac3f
)
dmaengine: idxd: free irq before wq type is reset
author
Dave Jiang
<dave.jiang@intel.com>
Thu, 12 May 2022 00:01:13 +0000
(17:01 -0700)
committer
Vinod Koul
<vkoul@kernel.org>
Mon, 16 May 2022 12:49:29 +0000
(18:19 +0530)
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:
63c14ae6c161
("dmaengine: idxd: refactor wq driver enable/disable operations")
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Link:
https://lore.kernel.org/r/165231367316.986407.11001767338124941736.stgit@djiang5-desk3.ch.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/idxd/device.c
patch
|
blob
|
history
diff --git
a/drivers/dma/idxd/device.c
b/drivers/dma/idxd/device.c
index
001a820
..
c7412f5
100644
(file)
--- a/
drivers/dma/idxd/device.c
+++ b/
drivers/dma/idxd/device.c
@@
-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;
}