在 2024/12/14 3:26, Honggang LI 写道:
On Fri, Dec 13, 2024 at 08:30:01PM +0100, Zhu Yanjun wrote:
I delved into this problem. It seems that it is a known problem.
Can you apply the following to make tests again?
diff --git a/drivers/infiniband/hw/irdma/hw.c
b/drivers/infiniband/hw/irdma/hw.c
index ad50b77282f8..31501ff9f282 100644
--- a/drivers/infiniband/hw/irdma/hw.c
+++ b/drivers/infiniband/hw/irdma/hw.c
@@ -1872,7 +1872,7 @@ int irdma_rt_init_hw(struct irdma_device *iwdev,
* free cq bufs
*/
iwdev->cleanup_wq = alloc_workqueue("irdma-cleanup-wq",
- WQ_UNBOUND, WQ_UNBOUND_MAX_ACTIVE);
+ WQ_UNBOUND|WQ_MEM_RECLAIM,
After add flag WQ_MEM_RECLAIM, the warning message is gone. However,
it may raise similar issue fixed by commit 2cc7d150550 again.
thanks
commit 2cc7d150550cc981aceedf008f5459193282425c
Author: Sindhu Devale <sindhu.devale@xxxxxxxxx>
Date: Tue Apr 23 11:27:17 2024 -0700
i40e: Do not use WQ_MEM_RECLAIM flag for workqueue
I read the commit log carefully. If I understand the commit log
correctly, the flag WQ_MEM_RECLAIM is used in i40e while it is
not used in i40iw.
The fix is to remove the flag WQ_MEM_RECLAIM from i40e.
"
Issue reported by customer during SRIOV testing, call trace:
When both i40e and the i40iw driver are loaded, a warning
in check_flush_dependency is being triggered. This seems
to be because of the i40e driver workqueue is allocated with
the WQ_MEM_RECLAIM flag, and the i40iw one is not.
Similar error was encountered on ice too and it was fixed by
removing the flag. Do the same for i40e too.
"
I do not have E810 device and i40e device and can not read the issue
reported by customer during SRIOV testing.
Thus, let Intel engineers continue to handle this problem.
@Mustafa Ismail
Zhu Yanjun