[D][PATCH] bnx2x: Disable multi-cos feature.

Mauricio Faria de Oliveira mfo at canonical.com
Thu Aug 22 13:20:04 UTC 2019

From: Sudarsana Reddy Kalluru <skalluru at marvell.com>

BugLink: https://bugs.launchpad.net/bugs/1840789

Commit 3968d38917eb ("bnx2x: Fix Multi-Cos.") which enabled multi-cos
feature after prolonged time in driver added some regression causing
numerous issues (sudden reboots, tx timeout etc.) reported by customers.
We plan to backout this commit and submit proper fix once we have root
cause of issues reported with this feature enabled.

Fixes: 3968d38917eb ("bnx2x: Fix Multi-Cos.")
Signed-off-by: Sudarsana Reddy Kalluru <skalluru at marvell.com>
Signed-off-by: Manish Chopra <manishc at marvell.com>
Signed-off-by: David S. Miller <davem at davemloft.net>
(backported from commit d1f0b5dce8fda09a7f5f04c1878f181d548e42f5)
[mfo: backport: essentially revert the mentioned commit;
 upstream more recently removed the fallback() function
 and moved to netdev_pick_tx(),
 the parentheses are left in as done in this commit.]
Signed-off-by: Mauricio Faria de Oliveira <mfo at canonical.com>
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
index 78a01880931c..9c5b932c61dd 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
@@ -1932,8 +1932,7 @@ u16 bnx2x_select_queue(struct net_device *dev, struct sk_buff *skb,
 	/* select a non-FCoE queue */
-	return fallback(dev, skb, NULL) %
-	       (BNX2X_NUM_ETH_QUEUES(bp) * bp->max_cos);
+	return fallback(dev, skb, NULL) % (BNX2X_NUM_ETH_QUEUES(bp));
 void bnx2x_set_num_queues(struct bnx2x *bp)

More information about the kernel-team mailing list