>-----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

Reply via email to