Hi Folks, TL;DR: Dropped optimized dpcls_rule_match_key() to simplify this patchset, optimization patches will be sent around once this patchset is integrated.
I've run with make check, and its showing good here now. Checkpatch shows all code OK except one MACRO, which I believe cannot be fixed? This patchset makes the following changes; Patch 1: Refactor dpcls_lookup and the subtable for flexibility. In particular, add a function pointer to the subtable structure, which enables "plugging-in" a lookup function at runtime. This enables a number of optimizations in future. Patch 2 & 3: With the function pointer in place, we refactor the existing dpcls_lookup matching code into its own function, and later its own file. To split it to its own file requires making various dpcls data-structures available in the dpif-netdev.h header. No performance changes expected from these patches, these changes in the dpcls infrastructure allow selection of optimized functions in future. Regards, -Harry Harry van Haaren (3): dpif-netdev: implement function pointers/subtable dpif-netdev: move dpcls lookup structures to .h dpif-netdev: split out generic lookup function lib/automake.mk | 1 + lib/dpif-netdev-lookup-generic.c | 94 ++++++++++++++++++++++++ lib/dpif-netdev.c | 119 ++++++------------------------- lib/dpif-netdev.h | 68 ++++++++++++++++++ 4 files changed, 184 insertions(+), 98 deletions(-) create mode 100644 lib/dpif-netdev-lookup-generic.c -- 2.17.1 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
