mbox series

[ovs-dev,0/3] dpcls subtable func pointers

Message ID 20190225161815.59733-1-harry.van.haaren@intel.com
Headers show
Series dpcls subtable func pointers | expand

Message

Van Haaren, Harry Feb. 25, 2019, 4:18 p.m. UTC
Hi Folks,

TL;DR: Dropped optimized dpcls_rule_match_key() to simplify this
patchset, optimization patches will depend on this patchset's
functionality once it is integrated.

I've run with make check, and its showing good here now.


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.

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 |  95 +++++++++++++++++++++++++++
 lib/dpif-netdev.c                | 108 ++++---------------------------
 lib/dpif-netdev.h                |  66 +++++++++++++++++++
 4 files changed, 175 insertions(+), 95 deletions(-)
 create mode 100644 lib/dpif-netdev-lookup-generic.c