diff options
| author | Mark Stapp <mjs@labn.net> | 2023-11-17 08:40:58 -0500 | 
|---|---|---|
| committer | Mark Stapp <mjs@labn.net> | 2023-11-17 08:40:58 -0500 | 
| commit | bb3faf1b95ad877a4ce95caf17cf3f01b031fc1d (patch) | |
| tree | 3d9b1be5e33492bf23519e1072ac8e16e7490acd /zebra/interface.c | |
| parent | f671c92857eaf554172339f93f6631afe77a6d28 (diff) | |
zebra: reduce number of switch statements with dplane opcodes
Replace several switch blocks that contain every dplane opcode
with simpler sets of if()s. In these cases the code only
uses a couple of opcodes.
Signed-off-by: Mark Stapp <mjs@labn.net>
Diffstat (limited to 'zebra/interface.c')
| -rw-r--r-- | zebra/interface.c | 67 | 
1 files changed, 4 insertions, 63 deletions
diff --git a/zebra/interface.c b/zebra/interface.c index 1283f15b05..9164956066 100644 --- a/zebra/interface.c +++ b/zebra/interface.c @@ -2295,15 +2295,10 @@ void zebra_if_dplane_result(struct zebra_dplane_ctx *ctx)  	ifp = if_lookup_by_index_per_ns(zns, ifindex); -	switch (op) { -	case DPLANE_OP_INTF_ADDR_ADD: -	case DPLANE_OP_INTF_ADDR_DEL: +	if (op == DPLANE_OP_INTF_ADDR_ADD || op == DPLANE_OP_INTF_ADDR_DEL) {  		zebra_if_addr_update_ctx(ctx, ifp); -		break; - -	case DPLANE_OP_INTF_INSTALL: -	case DPLANE_OP_INTF_UPDATE: -	case DPLANE_OP_INTF_DELETE: +	} else if (op == DPLANE_OP_INTF_INSTALL || +		   op == DPLANE_OP_INTF_UPDATE || op == DPLANE_OP_INTF_DELETE) {  		/*  		 * Queued from the dplane means it is something  		 * that we need to handle( create/delete the @@ -2313,62 +2308,8 @@ void zebra_if_dplane_result(struct zebra_dplane_ctx *ctx)  			zebra_if_dplane_ifp_handling(ctx);  		else  			zebra_if_update_ctx(ctx, ifp); -		break; - -	case DPLANE_OP_INTF_NETCONFIG: +	} else if (op == DPLANE_OP_INTF_NETCONFIG) {  		zebra_if_netconf_update_ctx(ctx, ifp, ifindex); -		break; - -	case DPLANE_OP_ROUTE_INSTALL: -	case DPLANE_OP_ROUTE_UPDATE: -	case DPLANE_OP_ROUTE_DELETE: -	case DPLANE_OP_NH_DELETE: -	case DPLANE_OP_NH_INSTALL: -	case DPLANE_OP_NH_UPDATE: -	case DPLANE_OP_ROUTE_NOTIFY: -	case DPLANE_OP_LSP_INSTALL: -	case DPLANE_OP_LSP_UPDATE: -	case DPLANE_OP_LSP_DELETE: -	case DPLANE_OP_LSP_NOTIFY: -	case DPLANE_OP_PW_INSTALL: -	case DPLANE_OP_PW_UNINSTALL: -	case DPLANE_OP_SYS_ROUTE_ADD: -	case DPLANE_OP_SYS_ROUTE_DELETE: -	case DPLANE_OP_ADDR_INSTALL: -	case DPLANE_OP_ADDR_UNINSTALL: -	case DPLANE_OP_MAC_INSTALL: -	case DPLANE_OP_MAC_DELETE: -	case DPLANE_OP_NEIGH_INSTALL: -	case DPLANE_OP_NEIGH_UPDATE: -	case DPLANE_OP_NEIGH_DELETE: -	case DPLANE_OP_NEIGH_IP_INSTALL: -	case DPLANE_OP_NEIGH_IP_DELETE: -	case DPLANE_OP_VTEP_ADD: -	case DPLANE_OP_VTEP_DELETE: -	case DPLANE_OP_RULE_ADD: -	case DPLANE_OP_RULE_DELETE: -	case DPLANE_OP_RULE_UPDATE: -	case DPLANE_OP_NEIGH_DISCOVER: -	case DPLANE_OP_BR_PORT_UPDATE: -	case DPLANE_OP_NONE: -	case DPLANE_OP_IPTABLE_ADD: -	case DPLANE_OP_IPTABLE_DELETE: -	case DPLANE_OP_IPSET_ADD: -	case DPLANE_OP_IPSET_DELETE: -	case DPLANE_OP_IPSET_ENTRY_ADD: -	case DPLANE_OP_IPSET_ENTRY_DELETE: -	case DPLANE_OP_NEIGH_TABLE_UPDATE: -	case DPLANE_OP_GRE_SET: -	case DPLANE_OP_TC_QDISC_INSTALL: -	case DPLANE_OP_TC_QDISC_UNINSTALL: -	case DPLANE_OP_TC_CLASS_ADD: -	case DPLANE_OP_TC_CLASS_DELETE: -	case DPLANE_OP_TC_CLASS_UPDATE: -	case DPLANE_OP_TC_FILTER_ADD: -	case DPLANE_OP_TC_FILTER_DELETE: -	case DPLANE_OP_TC_FILTER_UPDATE: -	case DPLANE_OP_STARTUP_STAGE: -		break; /* should never hit here */  	}  }  | 
