[dpdk-stable] [dpdk-dev] [PATCH v4 3/3] vhost: fix offload flags in Rx path

David Marchand david.marchand at redhat.com
Wed May 12 17:20:21 CEST 2021


On Wed, May 12, 2021 at 5:30 AM Wang, Yinan <yinan.wang at intel.com> wrote:
>
> Hi David,
>
> Since vhost tx offload can’t work now, we report a Bugzilla as below, could you help to take a look?
> https://bugs.dpdk.org/show_bug.cgi?id=702

(I discovered your mail from 05/08 only today, now that I got a new
mail, might be a pebcak from me, sorry...)


- Looking at the bz, there is a first issue/misconception.
testpmd only does TSO or any kind of tx offloading with the csum forward engine.
The iofwd engine won't make TSO possible.


- Let's say we use the csum fwd engine, testpmd configures drivers
through the ethdev API.
The ethdev API states that no offloading is enabled unless requested
by the application.
TSO, l3/l4 checksums offloading are documented as:
https://doc.dpdk.org/guides/nics/features.html#l3-checksum-offload
https://doc.dpdk.org/guides/nics/features.html#lro

But the vhost pmd does not report such capabilities.
https://git.dpdk.org/dpdk/tree/drivers/net/vhost/rte_eth_vhost.c#n1276

So we can't expect testpmd to have tso working with net/vhost pmd.


- The csum offloading engine swaps mac addresses.
I would expect issues with inter vm traffic.


In summary, I think this is a bad test.
If it worked with the commands in the bugzilla before my change (which
I doubt), it was wrong.


> We also tried vhost example with VM2VM iperf test, large pkts also can't forwarding.

"large pkts", can you give details?

I tried to use this example, without/with my change, but:

When I try to start this example with a physical port and two vhosts,
I get a crash (division by 0 on vdmq stuff).
When I start it without a physical port, I get a complaint about no
port being enabled.
Passing a portmask 0x1 seems to work, the example starts but, next, no
traffic is forwarded (not even arp).
Hooking gdb, I never get packet dequeued from vhost.


-- 
David Marchand



More information about the stable mailing list