In order to make way for incremental processing of the port_group nodes there needs to be a way to update the ACLs without requiring a recalulation of node en_ls_stateful. That requires the arguments of ls_stateful_record_set_acl() to change from taking the ovn_datapath to the nbrec_logical_switch, because en_port_group can only pass the logical switch to en_ls_stateful
Acked-by: Mark Michelson <mmich...@redhat.com> Signed-off-by: Jacob Tanenbaum <jtane...@redhat.com> diff --git a/northd/en-ls-stateful.c b/northd/en-ls-stateful.c index 7f07a6506..6aec43415 100644 --- a/northd/en-ls-stateful.c +++ b/northd/en-ls-stateful.c @@ -68,7 +68,7 @@ static void ls_stateful_record_init( const struct ls_port_group_table *); static bool ls_has_lb_vip(const struct ovn_datapath *); static void ls_stateful_record_set_acls( - struct ls_stateful_record *, const struct ovn_datapath *, + struct ls_stateful_record *, const struct nbrec_logical_switch *, const struct ls_port_group_table *); static void ls_stateful_record_set_acls_(struct ls_stateful_record *, struct nbrec_acl **, size_t n_acls); @@ -159,7 +159,7 @@ ls_stateful_northd_handler(struct engine_node *node, void *data_) struct ls_stateful_record *ls_stateful_rec = ls_stateful_table_find_(&data->table, od->nbs); ovs_assert(ls_stateful_rec); - ls_stateful_record_set_acls(ls_stateful_rec, od, + ls_stateful_record_set_acls(ls_stateful_rec, od->nbs, input_data.ls_port_groups); /* Add the ls_stateful_rec to the tracking data. */ @@ -304,7 +304,7 @@ ls_stateful_record_init(struct ls_stateful_record *ls_stateful_rec, const struct ls_port_group_table *ls_pgs) { ls_stateful_rec->has_lb_vip = ls_has_lb_vip(od); - ls_stateful_record_set_acls(ls_stateful_rec, od, ls_pgs); + ls_stateful_record_set_acls(ls_stateful_rec, od->nbs, ls_pgs); } static bool @@ -343,7 +343,7 @@ ls_has_lb_vip(const struct ovn_datapath *od) static void ls_stateful_record_set_acls(struct ls_stateful_record *ls_stateful_rec, - const struct ovn_datapath *od, + const struct nbrec_logical_switch *nbs, const struct ls_port_group_table *ls_pgs) { ls_stateful_rec->has_stateful_acl = false; @@ -352,10 +352,10 @@ ls_stateful_record_set_acls(struct ls_stateful_record *ls_stateful_rec, ls_stateful_rec->has_acls = false; uuidset_clear(&ls_stateful_rec->related_acls); - ls_stateful_record_set_acls_(ls_stateful_rec, od->nbs->acls, - od->nbs->n_acls); + ls_stateful_record_set_acls_(ls_stateful_rec, nbs->acls, + nbs->n_acls); - struct ls_port_group *ls_pg = ls_port_group_table_find(ls_pgs, od->nbs); + struct ls_port_group *ls_pg = ls_port_group_table_find(ls_pgs, nbs); if (!ls_pg) { return; } -- 2.50.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev