Improve feature arc order constraint specification
Add the VNET_FEATURE_ARC_ORDER macro, which allows specification of
bulk order constraints. Here's an example:
VNET_FEATURE_ARC_ORDER(ip4_unicast_arc_order, static) = {
.arc_name = "ip4-unicast",
.node_names = VNET_FEATURES ("ip4-flow-classify",
"ip4-inacl",
"ip4-source-check-via-rx",
"ip4-source-check-via-any",
"ip4-source-and-port-range-check-rx",
"ip4-policer-classify",
"ipsec4-input",
"vpath-input-ip4",
"ip4-vxlan-bypass",
"ip4-not-enabled",
"ip4-lookup"),
};
Simply list feature nodes in the desired order, and you're
done. Multiple macro instances per are are fine / expected /
tested.
Under the covers: generate "a before b" tuples by chain-dragging
across the ordered list. No need to touch existing per-feature
constraints.
Fixed a long-broken "you lose!" error message.
Change-Id: I259282e426fd305e22c8d65886787c41a1d348d3
Signed-off-by: Dave Barach <dave@barachs.net>