Hi The usage of the proxy port is wrong. All transfer offload should be migrated to use it. There was [1-4], but it was not completed.
Meters should be created only on the proxy ports. As all offloads are moved to use proxy ports, this is how they are shared. Since we don't know the proxy port when meter is added, it can be lazy created upon the first flow that uses this meter/proxy-port (referenced counted), and destroy upon the last flow destroy using it. As there might be multiple "proxy" ports, there might be multiple HW meter objects associated with the same SW one. This should be managed. [1] http://patchwork.ozlabs.org/project/openvswitch/list/?series=302525&state=* [2] http://patchwork.ozlabs.org/project/openvswitch/list/?series=310413&state=* [3] http://patchwork.ozlabs.org/project/openvswitch/list/?series=310415&state=* [4] http://patchwork.ozlabs.org/project/openvswitch/list/?series=342885&state=* Thanks, Eli >-----Original Message----- >From: Simon Horman <simon.hor...@corigine.com> >Sent: Thursday, 30 March 2023 14:21 >To: d...@openvswitch.org >Cc: Ilya Maximets <i.maxim...@ovn.org>; Eli Britstein <el...@nvidia.com>; >Chaoyong He <chaoyong...@corigine.com>; Peng Zhang ><peng.zh...@corigine.com>; Jin Liu <jin....@corigine.com>; oss- >driv...@corigine.com >Subject: [PATCH dpdk-latest v3 0/6] Add support for DPDK meter HW offload > >External email: Use caution opening links or attachments > > >Hi, > >this series adds support for DPDK meter HW offload. > >Changes between v2 and v3. >* Use common API for DPDK and non-DPDK meter offloads >* Make use of netdev_ports_traverse to offload the meter >* Add dpdk-latest to subject prefix > >Changes between v1 and v2: >* Add the prox mechanism: add the meter by proxy id >* Change the offload interface from netdev-dpdk to the netdev-offload >* Changed base to dpdk-latest branch > >Peng Zhang (6): > netdev-offload-dpdk: use flow transfer proxy > netdev-offload: Let meter offload API can be used with DPDK > dpif-netdev: Offloading meter with DPDK > netdev-offload-dpdk: Implement meter offload API for DPDK > netdev-dpdk: add meter algorithms > netdev-dpdk-offload: Add support for meter action > > Documentation/howto/dpdk.rst | 5 +- > lib/dpif-netdev.c | 22 ++- > lib/netdev-dpdk.c | 306 +++++++++++++++++++++++++++++++++- > lib/netdev-dpdk.h | 43 +++++ > lib/netdev-offload-dpdk.c | 97 +++++++++++ > lib/netdev-offload-provider.h | 21 ++- > lib/netdev-offload-tc.c | 9 +- > lib/netdev-offload.c | 135 ++++++++++++++- > lib/netdev-offload.h | 9 + > 9 files changed, 633 insertions(+), 14 deletions(-) > >-- >2.30.2 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev