DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] net/ixgbe: fix min Rx/Tx descriptors
@ 2025-02-21  8:23 Mingjin Ye
  2025-02-21 14:33 ` Bruce Richardson
  2025-02-21 14:36 ` Bruce Richardson
  0 siblings, 2 replies; 3+ messages in thread
From: Mingjin Ye @ 2025-02-21  8:23 UTC (permalink / raw)
  To: dev; +Cc: Mingjin Ye, stable, Anatoly Burakov, Vladimir Medvedkin

The minimum free packet threshold (tx_free_thresh) and the minimum RS bit
threshold (tx_rs_thresh) both have a default value of 32. Therefore, the
default minimum number of ring descriptors value is 64.

Fixes: dee5f1fd5fc7 ("ixgbe: get queue info and descriptor limits")
Cc: stable@dpdk.org

Signed-off-by: Mingjin Ye <mingjinx.ye@intel.com>
---
 doc/guides/nics/ixgbe.rst            | 2 +-
 drivers/net/intel/ixgbe/ixgbe_rxtx.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/doc/guides/nics/ixgbe.rst b/doc/guides/nics/ixgbe.rst
index c5c6a6c34b..10a0cdd270 100644
--- a/doc/guides/nics/ixgbe.rst
+++ b/doc/guides/nics/ixgbe.rst
@@ -76,7 +76,7 @@ Scattered packets are not supported in this mode.
 If an incoming packet is greater than the maximum acceptable length of one "mbuf" data size (by default, the size is 2 KB),
 vPMD for RX would be disabled.
 
-By default, IXGBE_MAX_RING_DESC is set to 8192 and RTE_PMD_IXGBE_RX_MAX_BURST is set to 32.
+By default, IXGBE_MAX_RING_DESC is set to 8192 and RTE_PMD_IXGBE_RX_MAX_BURST is set to 64.
 
 Windows Prerequisites and Pre-conditions
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/drivers/net/intel/ixgbe/ixgbe_rxtx.h b/drivers/net/intel/ixgbe/ixgbe_rxtx.h
index 278f665108..54569c7ade 100644
--- a/drivers/net/intel/ixgbe/ixgbe_rxtx.h
+++ b/drivers/net/intel/ixgbe/ixgbe_rxtx.h
@@ -26,7 +26,7 @@
  * descriptors should meet the following condition:
  *      (num_ring_desc * sizeof(rx/tx descriptor)) % 128 == 0
  */
-#define	IXGBE_MIN_RING_DESC	32
+#define	IXGBE_MIN_RING_DESC	64
 #define	IXGBE_MAX_RING_DESC	8192
 
 #define RTE_PMD_IXGBE_TX_MAX_BURST 32
-- 
2.25.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] net/ixgbe: fix min Rx/Tx descriptors
  2025-02-21  8:23 [PATCH] net/ixgbe: fix min Rx/Tx descriptors Mingjin Ye
@ 2025-02-21 14:33 ` Bruce Richardson
  2025-02-21 14:36 ` Bruce Richardson
  1 sibling, 0 replies; 3+ messages in thread
From: Bruce Richardson @ 2025-02-21 14:33 UTC (permalink / raw)
  To: Mingjin Ye; +Cc: dev, stable, Anatoly Burakov, Vladimir Medvedkin

On Fri, Feb 21, 2025 at 08:23:18AM +0000, Mingjin Ye wrote:
> The minimum free packet threshold (tx_free_thresh) and the minimum RS bit
> threshold (tx_rs_thresh) both have a default value of 32. Therefore, the
> default minimum number of ring descriptors value is 64.
> 
> Fixes: dee5f1fd5fc7 ("ixgbe: get queue info and descriptor limits")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Mingjin Ye <mingjinx.ye@intel.com>
> ---
>  doc/guides/nics/ixgbe.rst            | 2 +-
>  drivers/net/intel/ixgbe/ixgbe_rxtx.h | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/doc/guides/nics/ixgbe.rst b/doc/guides/nics/ixgbe.rst
> index c5c6a6c34b..10a0cdd270 100644
> --- a/doc/guides/nics/ixgbe.rst
> +++ b/doc/guides/nics/ixgbe.rst
> @@ -76,7 +76,7 @@ Scattered packets are not supported in this mode.
>  If an incoming packet is greater than the maximum acceptable length of one "mbuf" data size (by default, the size is 2 KB),
>  vPMD for RX would be disabled.
>  
> -By default, IXGBE_MAX_RING_DESC is set to 8192 and RTE_PMD_IXGBE_RX_MAX_BURST is set to 32.
> +By default, IXGBE_MAX_RING_DESC is set to 8192 and RTE_PMD_IXGBE_RX_MAX_BURST is set to 64.
>  

Was this part of the patch included by mistake? The RX_MAX_BURST value is
still set to 32 in the code.

However, in terms of doc updates, I believe the text above this point is
incorrect. It states that scattered packets are not supported in vector
drivers, which is no longer correct, as we support them for vector Rx.
Similarly, I think the pre-conditions for use of burst/vector mode are
incorrect compared to what is checked in the code.

>  Windows Prerequisites and Pre-conditions
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> diff --git a/drivers/net/intel/ixgbe/ixgbe_rxtx.h b/drivers/net/intel/ixgbe/ixgbe_rxtx.h
> index 278f665108..54569c7ade 100644
> --- a/drivers/net/intel/ixgbe/ixgbe_rxtx.h
> +++ b/drivers/net/intel/ixgbe/ixgbe_rxtx.h
> @@ -26,7 +26,7 @@
>   * descriptors should meet the following condition:
>   *      (num_ring_desc * sizeof(rx/tx descriptor)) % 128 == 0
>   */
> -#define	IXGBE_MIN_RING_DESC	32
> +#define	IXGBE_MIN_RING_DESC	64
>  #define	IXGBE_MAX_RING_DESC	8192
>  
>  #define RTE_PMD_IXGBE_TX_MAX_BURST 32
> -- 
> 2.25.1
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] net/ixgbe: fix min Rx/Tx descriptors
  2025-02-21  8:23 [PATCH] net/ixgbe: fix min Rx/Tx descriptors Mingjin Ye
  2025-02-21 14:33 ` Bruce Richardson
@ 2025-02-21 14:36 ` Bruce Richardson
  1 sibling, 0 replies; 3+ messages in thread
From: Bruce Richardson @ 2025-02-21 14:36 UTC (permalink / raw)
  To: Mingjin Ye; +Cc: dev, stable, Anatoly Burakov, Vladimir Medvedkin

On Fri, Feb 21, 2025 at 08:23:18AM +0000, Mingjin Ye wrote:
> The minimum free packet threshold (tx_free_thresh) and the minimum RS bit
> threshold (tx_rs_thresh) both have a default value of 32. Therefore, the
> default minimum number of ring descriptors value is 64.
> 
> Fixes: dee5f1fd5fc7 ("ixgbe: get queue info and descriptor limits")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Mingjin Ye <mingjinx.ye@intel.com>
> ---
>  doc/guides/nics/ixgbe.rst            | 2 +-
>  drivers/net/intel/ixgbe/ixgbe_rxtx.h | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/doc/guides/nics/ixgbe.rst b/doc/guides/nics/ixgbe.rst
> index c5c6a6c34b..10a0cdd270 100644
> --- a/doc/guides/nics/ixgbe.rst
> +++ b/doc/guides/nics/ixgbe.rst
> @@ -76,7 +76,7 @@ Scattered packets are not supported in this mode.
>  If an incoming packet is greater than the maximum acceptable length of one "mbuf" data size (by default, the size is 2 KB),
>  vPMD for RX would be disabled.
>  
> -By default, IXGBE_MAX_RING_DESC is set to 8192 and RTE_PMD_IXGBE_RX_MAX_BURST is set to 32.
> +By default, IXGBE_MAX_RING_DESC is set to 8192 and RTE_PMD_IXGBE_RX_MAX_BURST is set to 64.
>  
>  Windows Prerequisites and Pre-conditions
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> diff --git a/drivers/net/intel/ixgbe/ixgbe_rxtx.h b/drivers/net/intel/ixgbe/ixgbe_rxtx.h
> index 278f665108..54569c7ade 100644
> --- a/drivers/net/intel/ixgbe/ixgbe_rxtx.h
> +++ b/drivers/net/intel/ixgbe/ixgbe_rxtx.h
> @@ -26,7 +26,7 @@
>   * descriptors should meet the following condition:
>   *      (num_ring_desc * sizeof(rx/tx descriptor)) % 128 == 0
>   */
> -#define	IXGBE_MIN_RING_DESC	32
> +#define	IXGBE_MIN_RING_DESC	64
>  #define	IXGBE_MAX_RING_DESC	8192

Ack for this part of the change. Just ran a quick test using ixgbe and
things stopped working pretty quickly with an Rx ring size of 32.

With the doc update above dropped:

Acked-by: Bruce Richardson <bruce.richardson@intel.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-02-21 14:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-02-21  8:23 [PATCH] net/ixgbe: fix min Rx/Tx descriptors Mingjin Ye
2025-02-21 14:33 ` Bruce Richardson
2025-02-21 14:36 ` Bruce Richardson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).