[ovs-dev] [PATCH v1] netdev: fix partial offloading test cases failure

Yanqin Wei Yanqin.Wei at arm.com
Tue Feb 25 09:59:44 UTC 2020


Hi Ilya,


> -----Original Message-----
> From: Ilya Maximets <i.maximets at ovn.org>
> Sent: Tuesday, February 25, 2020 5:25 PM
> To: Yanqin Wei <Yanqin.Wei at arm.com>; dev at openvswitch.org
> Cc: nd <nd at arm.com>; Lijian Zhang <Lijian.Zhang at arm.com>; Gavin Hu
> <Gavin.Hu at arm.com>; i.maximets at ovn.org
> Subject: Re: [ovs-dev] [PATCH v1] netdev: fix partial offloading test cases
> failure
> 
> On 2/25/20 2:46 AM, Yanqin Wei wrote:
> > Some partial offloading test cases are failing inconsistently. The
> > root cause is that dummy netdev is assigned with incorrect offloading flow
> API.
> > dpif-netdev - partial hw offload - dummy dpif-netdev - partial hw
> > offload - dummy-pmd dpif-netdev - partial hw offload with packet
> > modifications - dummy dpif-netdev - partial hw offload with packet
> > modifications - dummy-pmd
> >
> > This patch fixes this issue by adding a specified flow api type in netdev.
> > Dummy netdev class can specify flow type in construct function. All of
> > the above cases can pass consistently.
> 
> Could you, please, clarify which offload provider is assigned to dummy ports in
> your case and why this happens?
> 
> In general, we need to fix offload providers to only accept ports that are usable
> for them instead of hardcoding the type.
> 
[Yanqin] Sometimes " linux_tc" is assigned to dummy netdev by mistake. Currently, dpif traverses all offloading provider and select the first provider with successful initialization. It makes the result uncertain and random. 
I think the problem is who should take responsible for offloading providers assignment. Both dpif and netdev class  impact the provider selection
Firstly, netdev may specify offloading provider if the option is unique. Secondly, dpif should determine if netdev has more than one option (instead of traverse all providers).
This patch implement the first one. The second one could be implemented in netdev_init_flow_api by means of dpif class and netdev class.
What do you think of this?
Best Regards,
Wei Yanqin
> Best regards, Ilya Maximets.


More information about the dev mailing list