]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
bnxt_en: Fix ethtool -l pre-set max combined channel.
authorMichael Chan <michael.chan@broadcom.com>
Mon, 13 Feb 2017 00:18:12 +0000 (19:18 -0500)
committerChuck Anderson <chuck.anderson@oracle.com>
Mon, 6 Mar 2017 21:35:37 +0000 (13:35 -0800)
Orabug: 25645429

With commit d1e7925e6d80 ("bnxt_en: Centralize logic to reserve rings."),
ring allocation for combined rings has become stricter.  A combined
ring must now have an rx-tx ring pair.  The pre-set max. for combined
rings should now be min(rx, tx).

Fixes: d1e7925e6d80 ("bnxt_en: Centralize logic to reserve rings.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit a79a5276aa2f844bd368c1d3d5a625e1fbefd989)
Signed-off-by: Brian Maly <brian.maly@oracle.com>
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c

index a28c9a09619f2056fd2cd045dbda4bb2b666169b..9b70815313209febe8c8d20cd6add2586a20bc14 100644 (file)
@@ -362,7 +362,7 @@ static void bnxt_get_channels(struct net_device *dev,
        int max_rx_rings, max_tx_rings, tcs;
 
        bnxt_get_max_rings(bp, &max_rx_rings, &max_tx_rings, true);
-       channel->max_combined = max_t(int, max_rx_rings, max_tx_rings);
+       channel->max_combined = min_t(int, max_rx_rings, max_tx_rings);
 
        if (bnxt_get_max_rings(bp, &max_rx_rings, &max_tx_rings, false)) {
                max_rx_rings = 0;