From 44a2c882067553a069c1b294644ebbda50d326c8 Mon Sep 17 00:00:00 2001 From: Numan Siddique Date: Wed, 22 Jan 2020 17:58:23 +0530 Subject: [PATCH 1/4] Make is_switch() in lflow.c a util function This patch renames is_switch() to datapath_is_switch() and moves to lib/ovn-util.c. Upcoming patch will make use of it. Acked-by: Han Zhou Signed-off-by: Numan Siddique (cherry-picked from upstream master commit 280429aaa380da43820961a552fe5e18e07578e5) Change-Id: I3091105a6cb56857ee2752749c5910f0c9aaa867 --- ovn/controller/lflow.c | 11 ++--------- ovn/lib/ovn-util.c | 6 ++++++ ovn/lib/ovn-util.h | 3 ++- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/ovn/controller/lflow.c b/ovn/controller/lflow.c index 9dbce91d1..b38a3f38a 100644 --- a/ovn/controller/lflow.c +++ b/ovn/controller/lflow.c @@ -128,13 +128,6 @@ is_chassis_resident_cb(const void *c_aux_, const char *port_name) } } -static bool -is_switch(const struct sbrec_datapath_binding *ldp) -{ - return smap_get(&ldp->external_ids, "logical-switch") != NULL; - -} - void lflow_resource_init(struct lflow_resource_ref *lfrr) { @@ -682,7 +675,7 @@ consider_logical_flow( struct ovnact_encode_params ep = { .lookup_port = lookup_port_cb, .aux = &aux, - .is_switch = is_switch(ldp), + .is_switch = datapath_is_switch(ldp), .group_table = group_table, .meter_table = meter_table, .lflow_uuid = lflow->header_.uuid, @@ -706,7 +699,7 @@ consider_logical_flow( if (m->match.wc.masks.conj_id) { m->match.flow.conj_id += *conj_id_ofs; } - if (is_switch(ldp)) { + if (datapath_is_switch(ldp)) { unsigned int reg_index = (ingress ? MFF_LOG_INPORT : MFF_LOG_OUTPORT) - MFF_REG0; int64_t port_id = m->match.flow.regs[reg_index]; diff --git a/ovn/lib/ovn-util.c b/ovn/lib/ovn-util.c index 91ec3d62e..9b6efdfc6 100644 --- a/ovn/lib/ovn-util.c +++ b/ovn/lib/ovn-util.c @@ -405,3 +405,9 @@ ovn_logical_flow_hash(const struct uuid *logical_datapath, hash = hash_string(match, hash); return hash_string(actions, hash); } + +bool +datapath_is_switch(const struct sbrec_datapath_binding *ldp) +{ + return smap_get(&ldp->external_ids, "logical-switch") != NULL; +} diff --git a/ovn/lib/ovn-util.h b/ovn/lib/ovn-util.h index 8461db505..f49f91862 100644 --- a/ovn/lib/ovn-util.h +++ b/ovn/lib/ovn-util.h @@ -23,6 +23,7 @@ struct sbrec_logical_flow; struct uuid; struct eth_addr; struct sbrec_port_binding; +struct sbrec_datapath_binding; struct ipv4_netaddr { ovs_be32 addr; /* 192.168.10.123 */ @@ -85,5 +86,5 @@ uint32_t ovn_logical_flow_hash(const struct uuid *logical_datapath, uint8_t table_id, const char *pipeline, uint16_t priority, const char *match, const char *actions); - +bool datapath_is_switch(const struct sbrec_datapath_binding *); #endif -- 2.26.2