Bug ID 1769
Summary Update for mbuf fast release TX offload not enabled by default in testpmd
Product DTS
Version unspecified
Hardware All
OS All
Status UNCONFIRMED
Severity normal
Priority Normal
Component tests
Assignee dts@dpdk.org
Reporter mb@smartsharesystems.com
Target Milestone ---

The patch "[v3,3/3] ethdev: Reject conflicting TX offloads configuration" [1]
applied to next-net is causing CI failures.
Specifically, the test_txoffload_queue test case in the rxtx_offload_test_plan
test plan fails.

The patch 3/3 depends on "[v3,1/3] testpmd: Do not enable mbuf fast release TX
offload by default" [2], which has not yet been applied to next-net, and a
modification of the test plan related to this patch 1/3.

The required modifications to the "rxtx_offload_test_plan.rst" test plan are
described below.

## Are notes describing the modification, and should be omitted.

[1]:
https://patchwork.dpdk.org/project/dpdk/patch/20250803194218.683318-3-mb@smartsharesystems.com/
[2]:
https://patchwork.dpdk.org/project/dpdk/patch/20250803194218.683318-1-mb@smartsharesystems.com/


Test case: IntelĀ® Ethernet 700 Series Tx offload per-queue setting
==================================================================

1. Start testpmd and get the tx_offload capability and configuration::

    ./<build_target>/app/dpdk-testpmd -c f -n 4 -- -i --rxq=4 --txq=4
    testpmd> show port 0 tx_offload capabilities
    Tx Offloading Capabilities of port 0 :
      Per Queue : MBUF_FAST_FREE
## MBUF_FAST_FREE is also supported per port (unrelated change)
-      Per Port  : VLAN_INSERT IPV4_CKSUM UDP_CKSUM TCP_CKSUM SCTP_CKSUM
TCP_TSO OUTER_IPV4_CKSUM QINQ_INSERT VXLAN_TNL_TSO GRE_TNL_TSO IPIP_TNL_TSO
GENEVE_TNL_TSO MULTI_SEGS
+      Per Port  : VLAN_INSERT IPV4_CKSUM UDP_CKSUM TCP_CKSUM SCTP_CKSUM
TCP_TSO OUTER_IPV4_CKSUM QINQ_INSERT VXLAN_TNL_TSO GRE_TNL_TSO IPIP_TNL_TSO
GENEVE_TNL_TSO MULTI_SEGS MBUF_FAST_FREE
    testpmd> show port 0 tx_offload configuration
    Tx Offloading Configuration of port 0 :
## The updated testpmd does not enable MBUF_FAST_FREE per default
-      Port : MBUF_FAST_FREE
+      Port :
      Queue[ 0] :
      Queue[ 1] :
      Queue[ 2] :
      Queue[ 3] :

## This is now the default state, so this test item has been moved to the end.
-2. Disable mbuf_fast_free per_port::
-
-    testpmd> port stop 0
-    testpmd> port config 0 tx_offload mbuf_fast_free off
-    testpmd> port start 0
-    testpmd> show port 0 tx_offload configuration
-    Tx Offloading Configuration of port 0 :
-      Port :
-      Queue[ 0] :
-      Queue[ 1] :
-      Queue[ 2] :
-      Queue[ 3] :
-
## Renumbered.
-3. Enable mbuf_fast_free per_queue::
+2. Enable mbuf_fast_free per_queue::

## With the above test item moved, the port has not yet been started. No need
to stop it.
-    testpmd> port stop 0
    testpmd> port 0 txq 0 tx_offload mbuf_fast_free on
    testpmd> port 0 txq 1 tx_offload mbuf_fast_free on
    testpmd> port 0 txq 2 tx_offload mbuf_fast_free on
    testpmd> port 0 txq 3 tx_offload mbuf_fast_free on
    testpmd> port start 0
    testpmd> show port 0 tx_offload configuration
    Tx Offloading Configuration of port 0 :
      Port :
      Queue[ 0] : MBUF_FAST_FREE
      Queue[ 1] : MBUF_FAST_FREE
      Queue[ 2] : MBUF_FAST_FREE
      Queue[ 3] : MBUF_FAST_FREE
    testpmd> start

   The port fwd can be started normally.

## Renumbered.
-4. Disable mbuf_fast_free per_queue::
+3. Disable mbuf_fast_free per_queue::

    testpmd> port stop 0
    testpmd> port 0 txq 0 tx_offload mbuf_fast_free off
    testpmd> port 0 txq 1 tx_offload mbuf_fast_free off
    testpmd> port 0 txq 2 tx_offload mbuf_fast_free off
    testpmd> port 0 txq 3 tx_offload mbuf_fast_free off
    testpmd> port start 0
    testpmd> show port 0 tx_offload configuration
    Tx Offloading Configuration of port 0 :
      Port :
      Queue[ 0] :
      Queue[ 1] :
      Queue[ 2] :
      Queue[ 3] :

## Renumbered.
-5. Enable mbuf_fast_free per_port::
+4. Enable mbuf_fast_free per_port::

    testpmd> port stop 0
    testpmd> port config 0 tx_offload mbuf_fast_free on
    testpmd> port start 0
    testpmd> show port 0 tx_offload configuration
    Tx Offloading Configuration of port 0 :
      Port : MBUF_FAST_FREE
      Queue[ 0] : MBUF_FAST_FREE
      Queue[ 1] : MBUF_FAST_FREE
      Queue[ 2] : MBUF_FAST_FREE
      Queue[ 3] : MBUF_FAST_FREE
    testpmd> start

   The port fwd can be started normally.

## Test item moved from above to here, and renumbered.
+5. Disable mbuf_fast_free per_port::
+
+    testpmd> port stop 0
+    testpmd> port config 0 tx_offload mbuf_fast_free off
+    testpmd> port start 0
+    testpmd> show port 0 tx_offload configuration
+    Tx Offloading Configuration of port 0 :
+      Port :
+      Queue[ 0] :
+      Queue[ 1] :
+      Queue[ 2] :
+      Queue[ 3] :
+
   Note 1: there is no tx_offload per_queue parameter in ixgbe driver,
   so this case is just only for i40e.
          


You are receiving this mail because: