bnx2x: correct memory release scheme
authorYuval Mintz <yuvalmin@broadcom.com>
Wed, 23 Jan 2013 03:21:51 +0000 (03:21 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 23 Jan 2013 18:58:29 +0000 (13:58 -0500)
Fix an incorrect SR-IOV memory release which was committed in 1ab4434.

Signed-off-by: Yuval Mintz <yuvalmin@broadcom.com>
Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h

index f511c3c..ac00ddc 100644 (file)
@@ -7738,10 +7738,6 @@ void bnx2x_free_mem(struct bnx2x *bp)
 {
        int i;
 
-       /* fastpath */
-       bnx2x_free_fp_mem(bp);
-       /* end of fastpath */
-
        BNX2X_PCI_FREE(bp->def_status_blk, bp->def_status_blk_mapping,
                       sizeof(struct host_sp_status_block));
 
@@ -7762,6 +7758,8 @@ void bnx2x_free_mem(struct bnx2x *bp)
 
        BNX2X_PCI_FREE(bp->eq_ring, bp->eq_mapping,
                       BCM_PAGE_SIZE * NUM_EQ_PAGES);
+
+       bnx2x_iov_free_mem(bp);
 }
 
 
index d51189b..b405017 100644 (file)
@@ -773,6 +773,7 @@ static inline void bnx2x_vf_mbx(struct bnx2x *bp,
 static inline int bnx2x_iov_init_ilt(struct bnx2x *bp, u16 line) {return line; }
 static inline void bnx2x_iov_init_dq(struct bnx2x *bp) {}
 static inline int bnx2x_iov_alloc_mem(struct bnx2x *bp) {return 0; }
+static inline void bnx2x_iov_free_mem(struct bnx2x *bp) {}
 static inline int bnx2x_iov_chip_cleanup(struct bnx2x *bp) {return 0; }
 static inline void bnx2x_iov_init_dmae(struct bnx2x *bp) {}
 static inline int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,