bnx2x: fix rx ring size report
Store the size in bp, read from bp when queried. Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com> Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
5f83736345
commit
c2188952fc
@@ -3091,15 +3091,20 @@ static int bnx2x_alloc_fp_mem_at(struct bnx2x *bp, int index)
|
|||||||
struct bnx2x_fastpath *fp = &bp->fp[index];
|
struct bnx2x_fastpath *fp = &bp->fp[index];
|
||||||
int ring_size = 0;
|
int ring_size = 0;
|
||||||
u8 cos;
|
u8 cos;
|
||||||
|
int rx_ring_size = 0;
|
||||||
|
|
||||||
/* if rx_ring_size specified - use it */
|
/* if rx_ring_size specified - use it */
|
||||||
int rx_ring_size = bp->rx_ring_size ? bp->rx_ring_size :
|
if (!bp->rx_ring_size) {
|
||||||
MAX_RX_AVAIL/BNX2X_NUM_RX_QUEUES(bp);
|
|
||||||
|
|
||||||
/* allocate at least number of buffers required by FW */
|
rx_ring_size = MAX_RX_AVAIL/BNX2X_NUM_RX_QUEUES(bp);
|
||||||
rx_ring_size = max_t(int, bp->disable_tpa ? MIN_RX_SIZE_NONTPA :
|
|
||||||
MIN_RX_SIZE_TPA,
|
/* allocate at least number of buffers required by FW */
|
||||||
rx_ring_size);
|
rx_ring_size = max_t(int, bp->disable_tpa ? MIN_RX_SIZE_NONTPA :
|
||||||
|
MIN_RX_SIZE_TPA, rx_ring_size);
|
||||||
|
|
||||||
|
bp->rx_ring_size = rx_ring_size;
|
||||||
|
} else
|
||||||
|
rx_ring_size = bp->rx_ring_size;
|
||||||
|
|
||||||
/* Common */
|
/* Common */
|
||||||
sb = &bnx2x_fp(bp, index, status_blk);
|
sb = &bnx2x_fp(bp, index, status_blk);
|
||||||
|
@@ -1310,10 +1310,7 @@ static void bnx2x_get_ringparam(struct net_device *dev,
|
|||||||
if (bp->rx_ring_size)
|
if (bp->rx_ring_size)
|
||||||
ering->rx_pending = bp->rx_ring_size;
|
ering->rx_pending = bp->rx_ring_size;
|
||||||
else
|
else
|
||||||
if (bp->state == BNX2X_STATE_OPEN && bp->num_queues)
|
ering->rx_pending = MAX_RX_AVAIL;
|
||||||
ering->rx_pending = MAX_RX_AVAIL/bp->num_queues;
|
|
||||||
else
|
|
||||||
ering->rx_pending = MAX_RX_AVAIL;
|
|
||||||
|
|
||||||
ering->rx_mini_pending = 0;
|
ering->rx_mini_pending = 0;
|
||||||
ering->rx_jumbo_pending = 0;
|
ering->rx_jumbo_pending = 0;
|
||||||
|
Reference in New Issue
Block a user