[dpdk-stable] [dpdk-dev] [PATCH] net/virtio: fix mbuf data and pkt length mismatch

Andrew Rybchenko arybchenko at solarflare.com
Mon Oct 7 09:17:07 CEST 2019


On 9/27/19 12:50 PM, Maxime Coquelin wrote:
> On 9/23/19 4:05 PM, Marvin Liu wrote:
>> If reserve virtio header room by function rte_pktmbuf_prepend, both
>> segment data length and packet length of mbuf will be increased.
>> Data length will be equal to descriptor length, while packet length
>> should be decreased as virtio-net header won't be taken into packet.
>> Thus will cause mismatch in mbuf structure. Fix this issue by access
>> mbuf data directly and increase descriptor length if it is needed.
>>
>> Fixes: 58169a9c8153 ("net/virtio: support Tx checksum offload")
>> Fixes: 892dc798fa9c ("net/virtio: implement Tx path for packed queues")
>> Fixes: 4905ed3a523f ("net/virtio: optimize Tx enqueue for packed ring")
>> Fixes: e5f456a98d3c ("net/virtio: support in-order Rx and Tx")
>> Cc: stable at dpdk.org
>>
>> Reported-by: Stephen Hemminger <stephen at networkplumber.org>
>> Signed-off-by: Marvin Liu <yong.liu at intel.com>
>>
> Applied to dpdk-next-virtio/master.

We observe regressions in virtio with the patch applied.
We've not found root cause yet.

Andrew.


More information about the stable mailing list