Bug 2165879

Summary: [openvswitch] DPDK interfaces dp-packet headroom and data buffer can't be dynamically adjusted
Product: Red Hat Enterprise Linux Fast Datapath Reporter: David Marchand <dmarchan>
Component: openvswitchAssignee: David Marchand <dmarchan>
openvswitch sub component: ovs-dpdk QA Contact: qding
Status: NEW --- Docs Contact:
Severity: low    
Priority: unspecified CC: ctrautma, jhsiao, ktraynor
Version: FDP 18.04   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description David Marchand 2023-01-31 10:55:14 UTC
This is kind of a theoretical issue.

DPDK based dp-packets points to data buffers that can't be expanded dynamically.
One potential issue would be when encapsulating a packet received from a DPDK interface, and require more than 128 bytes of headroom.
In such a setup, OVS would hit an assert when trying to expand this dp-packet (in dp_packet_resize()).

This can be reproduced with 3 levels of vxlan tunnels, for example.

Comment 1 David Marchand 2023-01-31 10:56:24 UTC
One fix has been posted upstream but still needs some work (adding a unit test): https://patchwork.ozlabs.org/project/openvswitch/patch/20220318153339.31083-1-david.marchand@redhat.com/