>-----Original Message----- >From: Nole Zhang <peng.zh...@corigine.com> >Sent: Friday, 6 January 2023 11:28 >To: Eli Britstein <el...@nvidia.com>; d...@openvswitch.org >Cc: Eelco Chaudron <echau...@redhat.com>; Ilya Maximets ><i.maxim...@ovn.org>; Chaoyong He <chaoyong...@corigine.com>; oss- >drivers <oss-driv...@corigine.com>; Nole Zhang <peng.zh...@corigine.com> >Subject: RE: [PATCH 0/6] Add support for DPDK meter HW offload > >External email: Use caution opening links or attachments > > >> -----Original Message----- >> From: Eli Britstein <el...@nvidia.com> >> Sent: 2022年12月26日 18:04 >> To: Simon Horman <simon.hor...@corigine.com>; d...@openvswitch.org >> Cc: Eelco Chaudron <echau...@redhat.com>; Ilya Maximets >> <i.maxim...@ovn.org>; Chaoyong He <chaoyong...@corigine.com>; oss- >> drivers <oss-driv...@corigine.com>; Nole Zhang >> <peng.zh...@corigine.com> >> Subject: RE: [PATCH 0/6] Add support for DPDK meter HW offload >> >> Dpif-netdev should not implement internal HW offload details. If need >> to "apply on all ports", it needs to be done in offload layer. >> However, in arch level, there is a problem with the proposed series. >> It will create a meter object per port, while in SW it is one object, >> that can be shared between multiple flows, on different ports. > >In dpif-netdev, it doesn't relate with implement internal HW offload details, I >just try to add the meter to the PMD if the PMD support the meter offload. [Eli Britstein] your loops over ports, not over PMDs. See in [1], for example in dpif_netdev_offload_meter_set(): + HMAP_FOR_EACH (port, node, &dp->ports) { + dev = port->netdev; Am I wrong?
Other than that, there is already a convenient API to traverse ports for offload - netdev_ports_traverse(). > >No, it will create a meter object per PMD not per port, so the meter can share >the same NIC different vf, different NIC can't share the meter, it is same >with >ovs-tc meter offload [Eli Britstein] no, it will create an object per port, as this is your code. To create a shared object for all the VFs in the same NIC, need to use the "proxy" port. Such work has started in [2]. [1] http://patchwork.ozlabs.org/project/openvswitch/patch/20221216155054.986464-3-simon.hor...@corigine.com/ [2] http://patchwork.ozlabs.org/project/openvswitch/patch/20220720121823.2497727-4-ivan.ma...@oktetlabs.ru/ >> >> >-----Original Message----- >> >From: Simon Horman <simon.hor...@corigine.com> >> >Sent: Friday, 16 December 2022 17:51 >> >To: d...@openvswitch.org >> >Cc: Eelco Chaudron <echau...@redhat.com>; Ilya Maximets >> ><i.maxim...@ovn.org>; Eli Britstein <el...@nvidia.com>; Chaoyong He >> ><chaoyong...@corigine.com>; oss-driv...@corigine.com; Peng Zhang >> ><peng.zh...@corigine.com>; Simon Horman >> <simon.hor...@corigine.com> >> >Subject: [PATCH 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 >> > >> >* Patch 1/6: Add netdev provider API for HW offload of DPDK meters >> >* Patch 2/6: Add DPIF API to offload OpenFlow meters to DPDK >> >* Patch 3/6: Implement netdev provider API for HW offload of DPDK >> >meters >> >* Patch 4/6: Add more DPDK meter algorithms >> >* Patch 4/6: Add support for meter action ti DPDK HW offload >> >* Patch 4/6: Add CI builds with ALLOW_EXPERIMENTAL_API >> > >> >Peng Zhang (6): >> > netdev-offload: Add DPDK meter offload API >> > 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 >> > ci: add the opts about ALLOW_EXPERIMENTAL_API >> > >> > .ci/linux-build.sh | 4 + >> > .github/workflows/build-and-test.yml | 31 ++++ >> > Documentation/howto/dpdk.rst | 5 +- >> > lib/dpif-netdev.c | 102 +++++++++++ >> > lib/netdev-dpdk.c | 243 +++++++++++++++++++++++++++ >> > lib/netdev-dpdk.h | 41 +++++ >> > lib/netdev-offload-dpdk.c | 101 +++++++++++ >> > lib/netdev-offload-provider.h | 30 ++++ >> > lib/netdev-offload.c | 59 +++++++ >> > lib/netdev-offload.h | 9 + >> > 10 files changed, 623 insertions(+), 2 deletions(-) >> > >> >-- >> >2.30.2 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev