[dpdk-dev] [PATCH v3 04/10] app/testpmd: convert to new Ethdev Tx offloads API

Shahaf Shuler shahafs at mellanox.com
Tue Jan 9 11:02:22 CET 2018


Tuesday, January 9, 2018 9:14 AM, Lu, Wenzhuo:
> > The original code doesn't have such restriction because testpmd wasn't
> > configuring Tx offloads at all. It used it's own Tx offloads enum
> > (which I removed on later patches) to indicate which offloads is set.
> > From the device perspective all the Tx offloads should be set.
> > It did had a way to configure offloads with txqflags parameter, but
> > this required queues reconfigurations.
> ' cmd_tx_vlan_set_parsed' is the function which configures TX vlan insertion.
> This patch adds the restriction in it.
> For example, on ixgbe it does support on the fly configuration. APP doesn't
> need to stop the device or reconfigure the queues.

What is mean is that in the old offloads API, all the Tx offloads were enabled by default, besides the ones which were masked with txqflags.
This is why testpmd didn't have any limitation on changing the Tx offloads. All of them were enabled, it just needed to choose with which one to use.

Now, with the new offloads API, the Tx offloads are disabled by default, and enabled per application need on device and queue configuration.
In order to call device/queue configuration the port must be stopped. This is requirement from ethdev API.

Now, there is an API in ethdev to configure Rx VLAN offloads on the flight for supported devices.
If there are devices which supports it also in the Tx side, and you see a good use case for that, then need to think of new API in ethdev to configure Tx VLAN offloads on the flight.

However, the plain conversion of testpmd from the old to the new API requires the port to be stopped for all of the Tx offloads. 




More information about the dev mailing list