net/bnx2x: fix incorrect number of supported queues
authorCharles (Chas) Williams <ciwillia@brocade.com>
Tue, 28 Jun 2016 16:14:50 +0000 (12:14 -0400)
committerBruce Richardson <bruce.richardson@intel.com>
Mon, 4 Jul 2016 13:30:23 +0000 (15:30 +0200)
We need sc->igu_sb_cnt determined before calculating the number of queues
we can support, so move the call to bnx2x_init_rte() to later in the code.

Fixes: 3754101cd74c ("net/bnx2x: fix MSIX vector and VF resource counts")

Signed-off-by: Charles (Chas) Williams <ciwillia@brocade.com>
Acked-by: Rasesh Mody <rasesh.mody@qlogic.com>
drivers/net/bnx2x/bnx2x.c

index 3095d2b..10859c1 100644 (file)
@@ -9682,9 +9682,6 @@ int bnx2x_attach(struct bnx2x_softc *sc)
 
        sc->state = BNX2X_STATE_CLOSED;
 
-       /* Init RTE stuff */
-       bnx2x_init_rte(sc);
-
        pci_write_long(sc, PCICFG_GRC_ADDRESS, PCICFG_VENDOR_ID_OFFSET);
 
        sc->igu_base_addr = IS_VF(sc) ? PXP_VF_ADDR_IGU_START : BAR_IGU_INTMEM;
@@ -9702,6 +9699,9 @@ int bnx2x_attach(struct bnx2x_softc *sc)
                sc->igu_sb_cnt = 1;
        }
 
+       /* Init RTE stuff */
+       bnx2x_init_rte(sc);
+
        if (IS_PF(sc)) {
 /* get device info and set params */
                if (bnx2x_get_device_info(sc) != 0) {