[v7] doc: add PMD known issue

Message ID 20221227090040.38394-1-mingjinx.ye@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Qi Zhang
Headers
Series [v7] doc: add PMD known issue |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-broadcom-Performance success Performance Testing PASS
ci/intel-Testing success Testing PASS
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/github-robot: build success github build: passed
ci/iol-abi-testing success Testing PASS
ci/iol-testing success Testing PASS
ci/iol-x86_64-unit-testing success Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS

Commit Message

Mingjin Ye Dec. 27, 2022, 9 a.m. UTC
  Add a known issue: Rx path dynamic routing is not supported for PMD.

Fixes: de853a3bb151 ("net/ice: disable DDP package on Windows")
Cc: stable@dpdk.org

Signed-off-by: Mingjin Ye <mingjinx.ye@intel.com>
---
 doc/guides/nics/ice.rst | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
  

Comments

Stephen Hemminger Dec. 27, 2022, 4:40 p.m. UTC | #1
On Tue, 27 Dec 2022 17:00:40 +0800
Mingjin Ye <mingjinx.ye@intel.com> wrote:

> +
> +ice: Rx path is not supported after PF or DCF add vlan offload
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +If pmd does not enable Vlan offload during initialization, it will
> +automatically select Rx paths that do not support offload. Even if
> +Vlan offload is subsequently enabled through the API, Vlan offload
> +will not work because the selected Rx path does not support Vlan
> +offload.
> +
> +cmd_vlan_offload_parsed() goes down to the follow ethdev API functions:
> +    - rte_eth_dev_set_vlan_strip_on_queue()
> +    - rte_eth_dev_set_vlan_offload()
> +
> +These functions add offload settings when the port is started, running
> +and processing traffic. At this time, ``rte_eth_rx_queue_setup`` api is
> +needed to reroute rxq to the RX path with offload function. But at this
> +time, it is possible that the original Rx path is handling packages, so
> +this is not thread-safe.
> +
> +When applying offload on the PF or DCF, starting the ``testpmd``
> +application, use the ``--rx-offloads`` startup parameter to force the
> +dpdk lib to choose the Rx path with the offload function by default.
> +

This seems like just making excuses in the documentation for something
that should be fixed instead.

This situation is probably common to many PMD's.
Ideally, the drivers should reject changes to settings after device
is started if they can not support it.
  

Patch

diff --git a/doc/guides/nics/ice.rst b/doc/guides/nics/ice.rst
index ce075e067c..a0739d81b1 100644
--- a/doc/guides/nics/ice.rst
+++ b/doc/guides/nics/ice.rst
@@ -395,3 +395,27 @@  file is used by both the kernel driver and the DPDK PMD.
 
       Windows support: The DDP package is not supported on Windows so,
       loading of the package is disabled on Windows.
+
+ice: Rx path is not supported after PF or DCF add vlan offload
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+If pmd does not enable Vlan offload during initialization, it will
+automatically select Rx paths that do not support offload. Even if
+Vlan offload is subsequently enabled through the API, Vlan offload
+will not work because the selected Rx path does not support Vlan
+offload.
+
+cmd_vlan_offload_parsed() goes down to the follow ethdev API functions:
+    - rte_eth_dev_set_vlan_strip_on_queue()
+    - rte_eth_dev_set_vlan_offload()
+
+These functions add offload settings when the port is started, running
+and processing traffic. At this time, ``rte_eth_rx_queue_setup`` api is
+needed to reroute rxq to the RX path with offload function. But at this
+time, it is possible that the original Rx path is handling packages, so
+this is not thread-safe.
+
+When applying offload on the PF or DCF, starting the ``testpmd``
+application, use the ``--rx-offloads`` startup parameter to force the
+dpdk lib to choose the Rx path with the offload function by default.
+