| From 1525bd6381ff313dd7e7bb2e04b3f26b30338004 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Tue, 3 Aug 2021 15:37:15 -0700 |
| Subject: dmaengine: idxd: clear block on fault flag when clear wq |
| |
| From: Dave Jiang <dave.jiang@intel.com> |
| |
| [ Upstream commit bd2f4ae5e019efcfadd6b491204fd60adf14f4a3 ] |
| |
| The block on fault flag is not cleared when we disable or reset wq. This |
| causes it to remain set if the user does not clear it on the next |
| configuration load. Add clear of flag in dxd_wq_disable_cleanup() |
| routine. |
| |
| Fixes: da32b28c95a7 ("dmaengine: idxd: cleanup workqueue config after disabling") |
| Signed-off-by: Dave Jiang <dave.jiang@intel.com> |
| Link: https://lore.kernel.org/r/162803023553.3086015.8158952172068868803.stgit@djiang5-desk3.ch.intel.com |
| Signed-off-by: Vinod Koul <vkoul@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/dma/idxd/device.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| diff --git a/drivers/dma/idxd/device.c b/drivers/dma/idxd/device.c |
| index c8cf1de72176..9c6760ae5aef 100644 |
| --- a/drivers/dma/idxd/device.c |
| +++ b/drivers/dma/idxd/device.c |
| @@ -401,6 +401,7 @@ static void idxd_wq_disable_cleanup(struct idxd_wq *wq) |
| wq->priority = 0; |
| wq->ats_dis = 0; |
| clear_bit(WQ_FLAG_DEDICATED, &wq->flags); |
| + clear_bit(WQ_FLAG_BLOCK_ON_FAULT, &wq->flags); |
| memset(wq->name, 0, WQ_NAME_SIZE); |
| } |
| |
| -- |
| 2.33.0 |
| |