This patch set covers removal of expressions which are subsets of other wider expressions and aggregation of a few granular expressions into wider expressions that cover all of them at once. This allows to avoid flow explosion in case of negative matches and reduce the total number of flows required for address sets. More details are in commit messages.
Version 2: * Became a patch set. * Added tests and missing bitmap.h include. * Code switched to work with bitwise maskable fields only (ORDINAL). * Added a new patch to combine smaller expressions into wider ones. * Added a patch to fix a crash uncovered with expression aggregation. Ilya Maximets (3): expr: Remove supersets from OR expressions. expr: Avoid crash if all sub-expressions crushed down to 'true'. expr: Combine OR sub-expressions into supersets. controller/lflow.c | 5 +- lib/expr.c | 188 +++++++++++++------ tests/ovn-controller.at | 399 ++++++++++++++++++++-------------------- tests/ovn.at | 210 +++++++++++---------- 4 files changed, 443 insertions(+), 359 deletions(-) -- 2.39.2 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
