On 12/21/21 19:50, Ilya Maximets wrote:
> On 12/13/21 08:37, Sriharsha Basavapatna via dev wrote:
>> The hw_miss_packet_recover() API results in performance degradation, for
>> ports that are either not offload capable or do not support this specific
>> offload API.
>>
>> For example, in the test configuration shown below, the vhost-user port
>> does not support offloads and the VF port doesn't support hw_miss offload
>> API. But because tunnel offload needs to be configured in other bridges
>> (br-vxlan and br-phy), OVS has been built with -DALLOW_EXPERIMENTAL_API.
>>
>>     br-vhost            br-vxlan            br-phy
>> vhost-user<-->VF    VF-Rep<-->VxLAN       uplink-port
>>
>> For every packet between the VF and the vhost-user ports, hw_miss API is
>> called even though it is not supported by the ports involved. This leads
>> to significant performance drop (~3x in some cases; both cycles and pps).
>>
>> Return EOPNOTSUPP when this API fails for a device that doesn't support it
>> and avoid this API on that port for subsequent packets.
>>
>> Signed-off-by: Sriharsha Basavapatna <[email protected]>
>> ---
>>
>> v2: 
>>     Rebased changes to commit: 20a4f546f7db; updated the logic to
>>     save 'hw_miss_api_supported' variable in struct dp_netdev_rxq.
> 
> Thanks for the update!  The change looks good to me and I also tested
> it with dummy rte_flow and it seem to work as expected.
> 
> I'm planning to apply this change once I get back from my PTO.
> For now,
> Acked-by: Ilya Maximets <[email protected]>

Applied now.  Thanks!

Best regards, Ilya Maximets.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to