Building with clang and enabling option to find unreachable code
found this bug.
The loop looking for a free adapter slot returned EEXIST as soon
as it found a used slot, so only one adapter could be created per
event queue.
Keep searching; the existing check after the loop reports when
all slots are in use.
Fixes: e12c3754da7a ("eventdev/vector: introduce event vector adapter")
Cc: [email protected]
Signed-off-by: Stephen Hemminger <[email protected]>
---
drivers/net/qede/base/ecore_dev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/qede/base/ecore_dev.c
b/drivers/net/qede/base/ecore_dev.c
index e895dee405..6e76ac9c2f 100644
--- a/drivers/net/qede/base/ecore_dev.c
+++ b/drivers/net/qede/base/ecore_dev.c
@@ -1544,7 +1544,7 @@ static u32 ecore_hw_bar_size(struct ecore_hwfn *p_hwfn,
if (ECORE_IS_CMT(p_hwfn->p_dev)) {
DP_INFO(p_hwfn,
"BAR size not configured. Assuming BAR size of 256kB
for GRC and 512kB for DB\n");
- val = BAR_ID_0 ? 256 * 1024 : 512 * 1024;
+ val = bar_id == BAR_ID_0 ? 256 * 1024 : 512 * 1024;
} else {
DP_INFO(p_hwfn,
"BAR size not configured. Assuming BAR size of 512kB
for GRC and 512kB for DB\n");
--
2.53.0