From: Igor Romanov <igor.roma...@oktetlabs.ru> Functions efx_*q_nbufs return the number of a queue buffers by dividing the queue size by page size. If minimum size of a queue is smaller than one page, we still need the page and number of buffers should not be 0.
Signed-off-by: Igor Romanov <igor.roma...@oktetlabs.ru> Signed-off-by: Andrew Rybchenko <arybche...@solarflare.com> --- drivers/net/sfc/base/efx_ev.c | 2 +- drivers/net/sfc/base/efx_rx.c | 2 +- drivers/net/sfc/base/efx_tx.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/sfc/base/efx_ev.c b/drivers/net/sfc/base/efx_ev.c index 21f4c226c..b98623995 100644 --- a/drivers/net/sfc/base/efx_ev.c +++ b/drivers/net/sfc/base/efx_ev.c @@ -188,7 +188,7 @@ efx_evq_nbufs( __in const efx_nic_t *enp, __in unsigned int ndescs) { - return (efx_evq_size(enp, ndescs) / EFX_BUF_SIZE); + return (EFX_DIV_ROUND_UP(efx_evq_size(enp, ndescs), EFX_BUF_SIZE)); } void diff --git a/drivers/net/sfc/base/efx_rx.c b/drivers/net/sfc/base/efx_rx.c index c0d738128..8a12ef705 100644 --- a/drivers/net/sfc/base/efx_rx.c +++ b/drivers/net/sfc/base/efx_rx.c @@ -781,7 +781,7 @@ efx_rxq_nbufs( __in const efx_nic_t *enp, __in unsigned int ndescs) { - return (efx_rxq_size(enp, ndescs) / EFX_BUF_SIZE); + return (EFX_DIV_ROUND_UP(efx_rxq_size(enp, ndescs), EFX_BUF_SIZE)); } void diff --git a/drivers/net/sfc/base/efx_tx.c b/drivers/net/sfc/base/efx_tx.c index bbe2bd1b7..5cf3dcd3a 100644 --- a/drivers/net/sfc/base/efx_tx.c +++ b/drivers/net/sfc/base/efx_tx.c @@ -312,7 +312,7 @@ efx_txq_nbufs( __in const efx_nic_t *enp, __in unsigned int ndescs) { - return (efx_txq_size(enp, ndescs) / EFX_BUF_SIZE); + return (EFX_DIV_ROUND_UP(efx_txq_size(enp, ndescs), EFX_BUF_SIZE)); } __checkReturn efx_rc_t -- 2.17.1