Hi Chris, Looked at the patch and the new version does not try to work around my concerns on v18, i.e., the ones where we need Ilya’s input. So I could not add any more ACKs; however, I did talk to Ilya offline, and he will get back to this after his 2.17 release work.
See: https://patchwork.ozlabs.org/project/openvswitch/patch/[email protected]/ https://patchwork.ozlabs.org/project/openvswitch/patch/[email protected]/ Also, I did notice you did not respond to all the v18 questions on patch 5. Cheers, Eelco On 28 Dec 2021, at 7:38, Chris Mi wrote: > This patch set adds offload support for sFlow. > > Psample is a genetlink channel for packet sampling. TC action act_sample > uses psample to send sampled packets to userspace. > > When offloading sample action to TC, userspace creates a unique ID to > map sFlow action and tunnel info and passes this ID to kernel instead > of the sFlow info. psample will send this ID and sampled packet to > userspace. Using the ID, userspace can recover the sFlow info and send > sampled packet to the right sFlow monitoring host. > > v2-v1: > - Fix robot errors. > v3-v2: > - Remove Gerrit Change-Id. > - Add patch #9 to fix older kernels build issue. > - Add travis test result. > v4-v3: > - Fix offload issue when sampling rate is 1. > v5-v4: > - Move polling thread from ofproto to netdev-offload-tc. > v6-v5: > - Rebase. > - Add GitHub Actions test result. > v7-v6: > - Remove Gerrit Change-Id. > - Fix "ERROR: Inappropriate spacing around cast" > v8-v7 > - Address Eelco Chaudron's comment for patch #11. > v9-v8 > - Remove sflow_len from struct dpif_sflow_attr. > - Log a debug message for other userspace actions. > v10-v9 > - Address Eelco Chaudron's comments on v9. > v11-v10 > - Fix a bracing error. > v12-v11 > - Add duplicate sample group id check. > v13-v12 > - Remove the psample poll thread from netdev-offload-tc and reuse > ofproto handler thread according to Ilya's new desgin. > - Add dpif-offload-provider layer according to Eli's suggestion. > v14-v13 > - Fix a robot error. > v15-v14 > - Address Eelco Chaudron's comments on v14. > v16-v15 > - Address Eelco Chaudron's comments on v15. > - Add two test cases. > v17-v16 > - Address Eelco Chaudron's comments on v16. > - Move struct dpif_offload_api from struct dpif_class to struct dpif. > v18-v17 > - Rename dpif_offload_api to dpif_offload_class. > - Add init and destroy callbacks in dpif_offload_class. They are called > when registering dpif_offload_class. > v19-18 > - Fix a bug that psample_sock is destroyed when last bridge is deleted. > > Chris Mi (8): > compat: Add psample and tc sample action defines for older kernels > ovs-kmod-ctl: Load kernel module psample > dpif-offload-provider: Introduce dpif-offload-provider layer > netdev-offload-tc: Introduce group ID management API > dpif-offload-netlink: Implement dpif-offload-provider API > ofproto: Introduce API to process sFlow offload packet > netdev-offload-tc: Add offload support for sFlow > system-offloads-traffic.at: Add sFlow offload test cases > > NEWS | 1 + > include/linux/automake.mk | 4 +- > include/linux/psample.h | 62 ++++ > include/linux/tc_act/tc_sample.h | 25 ++ > lib/automake.mk | 4 + > lib/dpif-netdev.c | 8 +- > lib/dpif-netlink.c | 4 +- > lib/dpif-offload-netdev.c | 43 +++ > lib/dpif-offload-netlink.c | 228 +++++++++++++++ > lib/dpif-offload-provider.h | 93 ++++++ > lib/dpif-offload.c | 200 +++++++++++++ > lib/dpif-provider.h | 10 +- > lib/dpif.c | 17 +- > lib/netdev-offload-tc.c | 466 +++++++++++++++++++++++++++++-- > lib/netdev-offload.h | 2 + > lib/tc.c | 61 +++- > lib/tc.h | 16 +- > ofproto/ofproto-dpif-upcall.c | 73 +++++ > tests/system-offloads-traffic.at | 101 +++++++ > utilities/ovs-kmod-ctl.in | 14 + > 20 files changed, 1400 insertions(+), 32 deletions(-) > create mode 100644 include/linux/psample.h > create mode 100644 include/linux/tc_act/tc_sample.h > create mode 100644 lib/dpif-offload-netdev.c > create mode 100644 lib/dpif-offload-netlink.c > create mode 100644 lib/dpif-offload-provider.h > create mode 100644 lib/dpif-offload.c > > -- > 2.30.2 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
