Improvement in fabric.p4 and bng.p4
- fabric.p4 now supports double tagged hosts
- bng.p4 now only manages PPPoE termination
- bng_ingress moved at the end of the fabric pipeline
Change-Id: Iff62238fde9ec6ddf7311312a98c041e3ab3aa8d
diff --git a/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java b/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java
index f1bb185..36d9f25 100644
--- a/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java
+++ b/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java
@@ -37,6 +37,8 @@
PiMatchFieldId.of("ig_port");
public static final PiMatchFieldId HDR_VLAN_IS_VALID =
PiMatchFieldId.of("vlan_is_valid");
+ public static final PiMatchFieldId HDR_EG_PORT =
+ PiMatchFieldId.of("eg_port");
public static final PiMatchFieldId HDR_IPV6_SRC_NET_ID =
PiMatchFieldId.of("ipv6_src_net_id");
public static final PiMatchFieldId HDR_C_TAG = PiMatchFieldId.of("c_tag");
@@ -44,6 +46,8 @@
PiMatchFieldId.of("ipv4_src");
public static final PiMatchFieldId HDR_IPV6_DST =
PiMatchFieldId.of("ipv6_dst");
+ public static final PiMatchFieldId HDR_IS_MPLS =
+ PiMatchFieldId.of("is_mpls");
public static final PiMatchFieldId HDR_L4_DPORT =
PiMatchFieldId.of("l4_dport");
public static final PiMatchFieldId HDR_PPPOE_CODE =
@@ -63,8 +67,6 @@
PiMatchFieldId.of("ipv4_dst");
public static final PiMatchFieldId HDR_IPV6_TRAFFIC_CLASS =
PiMatchFieldId.of("ipv6_traffic_class");
- public static final PiMatchFieldId HDR_IPV6_DST_NET_ID =
- PiMatchFieldId.of("ipv6_dst_net_id");
public static final PiMatchFieldId HDR_ETH_TYPE =
PiMatchFieldId.of("eth_type");
public static final PiMatchFieldId HDR_NEXT_ID =
@@ -73,6 +75,8 @@
PiMatchFieldId.of("l4_sport");
public static final PiMatchFieldId HDR_ICMP_CODE =
PiMatchFieldId.of("icmp_code");
+ public static final PiMatchFieldId HDR_INNER_VLAN_ID =
+ PiMatchFieldId.of("inner_vlan_id");
public static final PiMatchFieldId HDR_IPV4_ECN =
PiMatchFieldId.of("ipv4_ecn");
public static final PiMatchFieldId HDR_PPPOE_SESSION_ID =
@@ -83,8 +87,10 @@
PiMatchFieldId.of("line_id");
public static final PiMatchFieldId HDR_IPV4_DSCP =
PiMatchFieldId.of("ipv4_dscp");
- public static final PiMatchFieldId HDR_EG_PORT =
- PiMatchFieldId.of("eg_port");
+ public static final PiMatchFieldId HDR_IS_IPV4 =
+ PiMatchFieldId.of("is_ipv4");
+ public static final PiMatchFieldId HDR_IS_IPV6 =
+ PiMatchFieldId.of("is_ipv6");
public static final PiMatchFieldId HDR_GTP_IPV4_DST =
PiMatchFieldId.of("gtp_ipv4_dst");
public static final PiMatchFieldId HDR_INT_IS_VALID =
@@ -98,10 +104,10 @@
// Table IDs
public static final PiTableId FABRIC_INGRESS_NEXT_HASHED =
PiTableId.of("FabricIngress.next.hashed");
+ public static final PiTableId FABRIC_INGRESS_BNG_INGRESS_T_LINE_MAP =
+ PiTableId.of("FabricIngress.bng_ingress.t_line_map");
public static final PiTableId FABRIC_EGRESS_PROCESS_INT_MAIN_PROCESS_INT_TRANSIT_TB_INT_INSERT =
PiTableId.of("FabricEgress.process_int_main.process_int_transit.tb_int_insert");
- public static final PiTableId FABRIC_EGRESS_BNG_EGRESS_DOWNSTREAM_T_SESSION_ENCAP =
- PiTableId.of("FabricEgress.bng_egress.downstream.t_session_encap");
public static final PiTableId FABRIC_INGRESS_FILTERING_FWD_CLASSIFIER =
PiTableId.of("FabricIngress.filtering.fwd_classifier");
public static final PiTableId FABRIC_INGRESS_NEXT_XCONNECT =
@@ -130,16 +136,12 @@
PiTableId.of("FabricIngress.bng_ingress.upstream.t_pppoe_term_v4");
public static final PiTableId FABRIC_INGRESS_SPGW_INGRESS_S1U_FILTER_TABLE =
PiTableId.of("FabricIngress.spgw_ingress.s1u_filter_table");
- public static final PiTableId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_T_LINE_MAP_V6 =
- PiTableId.of("FabricIngress.bng_ingress.downstream.t_line_map_v6");
- public static final PiTableId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_T_LINE_MAP_V4 =
- PiTableId.of("FabricIngress.bng_ingress.downstream.t_line_map_v4");
public static final PiTableId FABRIC_INGRESS_FORWARDING_BRIDGING =
PiTableId.of("FabricIngress.forwarding.bridging");
- public static final PiTableId FABRIC_INGRESS_BNG_INGRESS_UPSTREAM_T_LINE_MAP =
- PiTableId.of("FabricIngress.bng_ingress.upstream.t_line_map");
public static final PiTableId FABRIC_INGRESS_SPGW_INGRESS_DL_SESS_LOOKUP =
PiTableId.of("FabricIngress.spgw_ingress.dl_sess_lookup");
+ public static final PiTableId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_T_LINE_SESSION_MAP =
+ PiTableId.of("FabricIngress.bng_ingress.downstream.t_line_session_map");
public static final PiTableId FABRIC_EGRESS_EGRESS_NEXT_EGRESS_VLAN =
PiTableId.of("FabricEgress.egress_next.egress_vlan");
public static final PiTableId FABRIC_INGRESS_PROCESS_SET_SOURCE_SINK_TB_SET_SINK =
@@ -219,6 +221,8 @@
PiActionId.of("FabricIngress.forwarding.set_next_id_bridging");
public static final PiActionId FABRIC_EGRESS_PROCESS_INT_MAIN_PROCESS_INT_SOURCE_INT_SOURCE_DSCP =
PiActionId.of("FabricEgress.process_int_main.process_int_source.int_source_dscp");
+ public static final PiActionId FABRIC_INGRESS_NEXT_SET_DOUBLE_VLAN =
+ PiActionId.of("FabricIngress.next.set_double_vlan");
public static final PiActionId FABRIC_EGRESS_PROCESS_INT_MAIN_PROCESS_INT_TRANSIT_INIT_METADATA =
PiActionId.of("FabricEgress.process_int_main.process_int_transit.init_metadata");
public static final PiActionId FABRIC_INGRESS_ACL_DROP =
@@ -227,10 +231,14 @@
PiActionId.of("FabricIngress.acl.set_clone_session_id");
public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_UPSTREAM_PUNT_TO_CPU =
PiActionId.of("FabricIngress.bng_ingress.upstream.punt_to_cpu");
- public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_UPSTREAM_SET_LINE =
- PiActionId.of("FabricIngress.bng_ingress.upstream.set_line");
+ public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_DROP =
+ PiActionId.of("FabricIngress.bng_ingress.downstream.drop");
+ public static final PiActionId FABRIC_INGRESS_NEXT_SET_VLAN =
+ PiActionId.of("FabricIngress.next.set_vlan");
public static final PiActionId FABRIC_INGRESS_ACL_NOP_ACL =
PiActionId.of("FabricIngress.acl.nop_acl");
+ public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_SET_LINE =
+ PiActionId.of("FabricIngress.bng_ingress.set_line");
public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_UPSTREAM_TERM_DISABLED =
PiActionId.of("FabricIngress.bng_ingress.upstream.term_disabled");
public static final PiActionId FABRIC_INGRESS_ACL_SET_NEXT_ID_ACL =
@@ -251,8 +259,6 @@
PiActionId.of("FabricIngress.next.output_hashed");
public static final PiActionId FABRIC_INGRESS_FORWARDING_POP_MPLS_AND_NEXT =
PiActionId.of("FabricIngress.forwarding.pop_mpls_and_next");
- public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_SET_LINE_NEXT =
- PiActionId.of("FabricIngress.bng_ingress.downstream.set_line_next");
public static final PiActionId FABRIC_EGRESS_BNG_EGRESS_DOWNSTREAM_ENCAP_V6 =
PiActionId.of("FabricEgress.bng_egress.downstream.encap_v6");
public static final PiActionId FABRIC_INGRESS_NEXT_MPLS_ROUTING_SIMPLE =
@@ -261,8 +267,6 @@
PiActionId.of("FabricIngress.acl.punt_to_cpu");
public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_QOS_PRIO =
PiActionId.of("FabricIngress.bng_ingress.downstream.qos_prio");
- public static final PiActionId FABRIC_INGRESS_NEXT_SET_VLAN =
- PiActionId.of("FabricIngress.next.set_vlan");
public static final PiActionId FABRIC_EGRESS_EGRESS_NEXT_POP_VLAN =
PiActionId.of("FabricEgress.egress_next.pop_vlan");
public static final PiActionId FABRIC_INGRESS_PROCESS_SET_SOURCE_SINK_INT_SET_SINK =
@@ -280,21 +284,21 @@
PiActionId.of("FabricIngress.next.output_simple");
public static final PiActionId FABRIC_INGRESS_FILTERING_DENY =
PiActionId.of("FabricIngress.filtering.deny");
+ public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_SET_SESSION =
+ PiActionId.of("FabricIngress.bng_ingress.downstream.set_session");
public static final PiActionId FABRIC_INGRESS_NEXT_SET_MCAST_GROUP_ID =
PiActionId.of("FabricIngress.next.set_mcast_group_id");
public static final PiActionId FABRIC_INGRESS_FILTERING_SET_FORWARDING_TYPE =
PiActionId.of("FabricIngress.filtering.set_forwarding_type");
- public static final PiActionId FABRIC_INGRESS_BNG_INGRESS_DOWNSTREAM_SET_LINE_DROP =
- PiActionId.of("FabricIngress.bng_ingress.downstream.set_line_drop");
public static final PiActionId FABRIC_EGRESS_PROCESS_INT_MAIN_PROCESS_INT_REPORT_DO_REPORT_ENCAPSULATION =
PiActionId.of("FabricEgress.process_int_main.process_int_report.do_report_encapsulation");
public static final PiActionId NO_ACTION = PiActionId.of("NoAction");
public static final PiActionId FABRIC_INGRESS_NEXT_OUTPUT_XCONNECT =
PiActionId.of("FabricIngress.next.output_xconnect");
// Action Param IDs
+ public static final PiActionParamId DMAC = PiActionParamId.of("dmac");
public static final PiActionParamId MON_PORT =
PiActionParamId.of("mon_port");
- public static final PiActionParamId C_TAG = PiActionParamId.of("c_tag");
public static final PiActionParamId S1U_SGW_ADDR =
PiActionParamId.of("s1u_sgw_addr");
public static final PiActionParamId SMAC = PiActionParamId.of("smac");
@@ -306,7 +310,8 @@
public static final PiActionParamId NEXT_ID = PiActionParamId.of("next_id");
public static final PiActionParamId INS_CNT = PiActionParamId.of("ins_cnt");
public static final PiActionParamId SRC_MAC = PiActionParamId.of("src_mac");
- public static final PiActionParamId DMAC = PiActionParamId.of("dmac");
+ public static final PiActionParamId INNER_VLAN_ID =
+ PiActionParamId.of("inner_vlan_id");
public static final PiActionParamId PPPOE_SESSION_ID =
PiActionParamId.of("pppoe_session_id");
public static final PiActionParamId MON_MAC = PiActionParamId.of("mon_mac");
@@ -318,6 +323,8 @@
public static final PiActionParamId LINE_ID = PiActionParamId.of("line_id");
public static final PiActionParamId FWD_TYPE =
PiActionParamId.of("fwd_type");
+ public static final PiActionParamId OUTER_VLAN_ID =
+ PiActionParamId.of("outer_vlan_id");
public static final PiActionParamId INS_MASK0407 =
PiActionParamId.of("ins_mask0407");
public static final PiActionParamId TEID = PiActionParamId.of("teid");
diff --git a/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricInterpreter.java b/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricInterpreter.java
index dcd872b..e5e90ed 100644
--- a/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricInterpreter.java
+++ b/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/FabricInterpreter.java
@@ -91,6 +91,7 @@
.put(Criterion.Type.ETH_TYPE, FabricConstants.HDR_ETH_TYPE)
.put(Criterion.Type.MPLS_LABEL, FabricConstants.HDR_MPLS_LABEL)
.put(Criterion.Type.VLAN_VID, FabricConstants.HDR_VLAN_ID)
+ .put(Criterion.Type.INNER_VLAN_VID, FabricConstants.HDR_INNER_VLAN_ID)
.put(Criterion.Type.IPV4_DST, FabricConstants.HDR_IPV4_DST)
.put(Criterion.Type.IPV4_SRC, FabricConstants.HDR_IPV4_SRC)
.put(Criterion.Type.IPV6_DST, FabricConstants.HDR_IPV6_DST)
diff --git a/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/pipeliner/FilteringObjectiveTranslator.java b/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/pipeliner/FilteringObjectiveTranslator.java
index 67d7b3a..e86f270 100644
--- a/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/pipeliner/FilteringObjectiveTranslator.java
+++ b/pipelines/fabric/src/main/java/org/onosproject/pipelines/fabric/pipeliner/FilteringObjectiveTranslator.java
@@ -17,6 +17,7 @@
package org.onosproject.pipelines.fabric.pipeliner;
import com.google.common.collect.Lists;
+import org.onlab.packet.EthType;
import org.onlab.packet.Ethernet;
import org.onlab.packet.MacAddress;
import org.onlab.packet.VlanId;
@@ -63,12 +64,6 @@
.withId(FabricConstants.FABRIC_INGRESS_FILTERING_DENY)
.build();
- private static final PiCriterion VLAN_VALID = PiCriterion.builder()
- .matchExact(FabricConstants.HDR_VLAN_IS_VALID, ONE)
- .build();
- private static final PiCriterion VLAN_INVALID = PiCriterion.builder()
- .matchExact(FabricConstants.HDR_VLAN_IS_VALID, ZERO)
- .build();
FilteringObjectiveTranslator(DeviceId deviceId, FabricCapabilities capabilities) {
super(deviceId, capabilities);
@@ -88,14 +83,17 @@
}
final PortCriterion inPort = (PortCriterion) obj.key();
- final VlanIdCriterion vlan = (VlanIdCriterion) criterion(
+
+ final VlanIdCriterion outerVlan = (VlanIdCriterion) criterion(
obj.conditions(), Criterion.Type.VLAN_VID);
+ final VlanIdCriterion innerVlan = (VlanIdCriterion) criterion(
+ obj.conditions(), Criterion.Type.INNER_VLAN_VID);
final EthCriterion ethDst = (EthCriterion) criterion(
obj.conditions(), Criterion.Type.ETH_DST);
final EthCriterion ethDstMasked = (EthCriterion) criterion(
obj.conditions(), Criterion.Type.ETH_DST_MASKED);
- ingressPortVlanRule(obj, inPort, vlan, resultBuilder);
+ ingressPortVlanRule(obj, inPort, outerVlan, innerVlan, resultBuilder);
fwdClassifierRules(obj, inPort, ethDst, ethDstMasked, resultBuilder);
return resultBuilder.build();
@@ -104,18 +102,28 @@
private void ingressPortVlanRule(
FilteringObjective obj,
Criterion inPortCriterion,
- VlanIdCriterion vlanCriterion,
+ VlanIdCriterion outerVlanCriterion,
+ VlanIdCriterion innerVlanCriterion,
ObjectiveTranslation.Builder resultBuilder)
throws FabricPipelinerException {
- final boolean vlanValid = vlanCriterion != null
- && !vlanCriterion.vlanId().equals(VlanId.NONE);
+ final boolean outerVlanValid = outerVlanCriterion != null
+ && !outerVlanCriterion.vlanId().equals(VlanId.NONE);
+ final boolean innerVlanValid = innerVlanCriterion != null
+ && !innerVlanCriterion.vlanId().equals(VlanId.NONE);
+
+ final PiCriterion piCriterion = PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_VLAN_IS_VALID, outerVlanValid ? ONE : ZERO)
+ .build();
final TrafficSelector.Builder selector = DefaultTrafficSelector.builder()
.add(inPortCriterion)
- .add(vlanValid ? VLAN_VALID : VLAN_INVALID);
- if (vlanValid) {
- selector.add(vlanCriterion);
+ .add(piCriterion);
+ if (outerVlanValid) {
+ selector.add(outerVlanCriterion);
+ }
+ if (innerVlanValid) {
+ selector.add(innerVlanCriterion);
}
final TrafficTreatment treatment;
@@ -127,7 +135,6 @@
treatment = obj.meta() == null
? DefaultTrafficTreatment.emptyTreatment() : obj.meta();
}
-
resultBuilder.addFlowRule(flowRule(
obj, FabricConstants.FABRIC_INGRESS_FILTERING_INGRESS_PORT_VLAN,
selector.build(), treatment));
@@ -214,7 +221,7 @@
throws FabricPipelinerException {
final TrafficSelector selector = DefaultTrafficSelector.builder()
.matchInPort(inPort)
- .matchEthType(ethType)
+ .matchPi(mapEthTypeFwdClassifier(ethType))
.matchEthDstMasked(dstMac, dstMacMask == null
? MacAddress.EXACT_MASK : dstMacMask)
.build();
@@ -234,4 +241,38 @@
.build();
}
+
+ static PiCriterion mapEthTypeFwdClassifier(short ethType) {
+ // Map the Ethernet type to the validity bits of the fabric pipeline
+ switch (EthType.EtherType.lookup(ethType)) {
+ case IPV4: {
+ return PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_IPV4, ONE)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ZERO)
+ .matchExact(FabricConstants.HDR_IS_MPLS, ZERO)
+ .build();
+ }
+ case IPV6: {
+ return PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_IPV4, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ONE)
+ .matchExact(FabricConstants.HDR_IS_MPLS, ZERO)
+ .build();
+ }
+ case MPLS_UNICAST: {
+ return PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_IPV4, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ZERO)
+ .matchExact(FabricConstants.HDR_IS_MPLS, ONE)
+ .build();
+ }
+ default: {
+ return PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_IPV4, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ZERO)
+ .matchExact(FabricConstants.HDR_IS_MPLS, ZERO)
+ .build();
+ }
+ }
+ }
}
diff --git a/pipelines/fabric/src/main/resources/Makefile b/pipelines/fabric/src/main/resources/Makefile
index 32d6a25..fc096ab 100644
--- a/pipelines/fabric/src/main/resources/Makefile
+++ b/pipelines/fabric/src/main/resources/Makefile
@@ -7,7 +7,7 @@
@./bmv2-compile.sh "fabric-spgw" "-DWITH_SPGW"
fabric-bng:
- @./bmv2-compile.sh "fabric-bng" "-DWITH_BNG"
+ @./bmv2-compile.sh "fabric-bng" "-DWITH_BNG -DWITH_DOUBLE_VLAN_TERMINATION -DWITHOUT_XCONNECT"
fabric-int:
@./bmv2-compile.sh "fabric-int" "-DWITH_INT_SOURCE -DWITH_INT_TRANSIT"
@@ -18,7 +18,7 @@
fabric-full:
@./bmv2-compile.sh "fabric-full" " -DWITH_MULTICAST -DWITH_IPV6 \
-DWITH_SIMPLE_NEXT -DWITH_HASHED_NEXT -DWITH_BNG -DWITH_SPGW \
- -DWITH_INT_SOURCE -DWITH_INT_TRANSIT -DWITH_INT_SINK"
+ -DWITH_INT_SOURCE -DWITH_INT_TRANSIT -DWITH_INT_SINK -DWITH_DOUBLE_VLAN_TERMINATION"
constants:
docker run -v $(ONOS_ROOT):/onos -w /onos/tools/dev/bin \
diff --git a/pipelines/fabric/src/main/resources/fabric.p4 b/pipelines/fabric/src/main/resources/fabric.p4
index fede305..86bd764 100644
--- a/pipelines/fabric/src/main/resources/fabric.p4
+++ b/pipelines/fabric/src/main/resources/fabric.p4
@@ -68,9 +68,6 @@
spgw_ingress.apply(hdr.gtpu_ipv4, hdr.gtpu_udp, hdr.gtpu,
hdr.ipv4, hdr.udp, fabric_metadata, standard_metadata);
#endif // WITH_SPGW
-#ifdef WITH_BNG
- bng_ingress.apply(hdr, fabric_metadata, standard_metadata);
-#endif // WITH_BNG
if (fabric_metadata.skip_forwarding == _FALSE) {
forwarding.apply(hdr, fabric_metadata, standard_metadata);
}
@@ -86,6 +83,10 @@
process_set_source_sink.apply(hdr, fabric_metadata, standard_metadata);
#endif
}
+#ifdef WITH_BNG
+ bng_ingress.apply(hdr, fabric_metadata, standard_metadata);
+#endif // WITH_BNG
+
}
}
diff --git a/pipelines/fabric/src/main/resources/include/bng.p4 b/pipelines/fabric/src/main/resources/include/bng.p4
index 11e4639..ede0001 100644
--- a/pipelines/fabric/src/main/resources/include/bng.p4
+++ b/pipelines/fabric/src/main/resources/include/bng.p4
@@ -26,10 +26,6 @@
#ifndef __BNG__
#define __BNG__
-#define BNG_MAX_SUBSC 8192
-#define BNG_MAX_NET_PER_SUBSC 4
-#define BNG_MAX_SUBSC_NET BNG_MAX_NET_PER_SUBSC * BNG_MAX_SUBSC
-
#define BNG_SUBSC_IPV6_NET_PREFIX_LEN 64
control bng_ingress_upstream(
@@ -41,38 +37,11 @@
counter(BNG_MAX_SUBSC, CounterType.packets) c_dropped;
counter(BNG_MAX_SUBSC, CounterType.packets) c_control;
- vlan_id_t s_tag = hdr.vlan_tag.vlan_id;
- vlan_id_t c_tag = hdr.inner_vlan_tag.vlan_id;
-
- _BOOL drop = _FALSE;
- // TABLE: t_line_map
- // Maps double VLAN tags to line ID. Line IDs are used to uniquelly identify
- // a subscriber.
-
- action set_line(bit<32> line_id) {
- fmeta.bng.line_id = line_id;
- }
-
- table t_line_map {
- actions = {
- @defaultonly nop;
- set_line;
- }
- key = {
- s_tag: exact @name("s_tag");
- c_tag: exact @name("c_tag");
- }
- size = BNG_MAX_SUBSC;
- const default_action = nop;
- }
-
// TABLE: t_pppoe_cp
// Punt to CPU for PPPeE control packets.
action punt_to_cpu() {
smeta.egress_spec = CPU_PORT;
- fmeta.skip_forwarding = _TRUE;
- fmeta.skip_next = _TRUE;
c_control.count(fmeta.bng.line_id);
}
@@ -95,26 +64,24 @@
@hidden
action term_enabled(bit<16> eth_type) {
- hdr.ethernet.eth_type = eth_type;
- fmeta.eth_type = eth_type;
+ hdr.inner_vlan_tag.eth_type = eth_type;
+ fmeta.last_eth_type = eth_type;
hdr.pppoe.setInvalid();
- hdr.vlan_tag.setInvalid();
- hdr.inner_vlan_tag.setInvalid();
c_terminated.count(fmeta.bng.line_id);
}
action term_disabled() {
fmeta.bng.type = BNG_TYPE_INVALID;
- fmeta.skip_forwarding = _TRUE;
- fmeta.skip_next = _TRUE;
mark_to_drop(smeta);
- drop = _TRUE;
}
action term_enabled_v4() {
term_enabled(ETHERTYPE_IPV4);
}
+ // TODO: add match on hdr.ethernet.src_addr for antispoofing
+ // Take into account that MAC src address is modified by the Next control block
+ // when doing routing functionality.
table t_pppoe_term_v4 {
key = {
fmeta.bng.line_id : exact @name("line_id");
@@ -134,6 +101,9 @@
term_enabled(ETHERTYPE_IPV6);
}
+ // TODO: add match on hdr.ethernet.src_addr for antispoofing
+ // Match on unmodified metadata field, taking into account that MAC src address
+ // is modified by the Next control block when doing routing functionality.
table t_pppoe_term_v6 {
key = {
fmeta.bng.line_id : exact @name("line_id");
@@ -150,25 +120,23 @@
#endif // WITH_IPV6
apply {
- // If table miss, line_id will be 0 (default metadata value).
- t_line_map.apply();
-
- if (t_pppoe_cp.apply().hit) {
+ if(t_pppoe_cp.apply().hit) {
return;
}
-
if (hdr.ipv4.isValid()) {
- t_pppoe_term_v4.apply();
- if (drop == _TRUE) {
- c_dropped.count(fmeta.bng.line_id);
+ switch(t_pppoe_term_v4.apply().action_run) {
+ term_disabled: {
+ c_dropped.count(fmeta.bng.line_id);
+ }
}
}
#ifdef WITH_IPV6
else if (hdr.ipv6.isValid()) {
- t_pppoe_term_v6.apply();
- if (drop == _TRUE) {
- c_dropped.count(fmeta.bng.line_id);
- }
+ switch(t_pppoe_term_v6.apply().action_run) {
+ term_disabled: {
+ c_dropped.count(fmeta.bng.line_id);
+ }
+ }
}
#endif // WITH_IPV6
}
@@ -184,65 +152,37 @@
meter(BNG_MAX_SUBSC, MeterType.bytes) m_besteff;
meter(BNG_MAX_SUBSC, MeterType.bytes) m_prio;
- // Downstream line map tables.
- // Map IP dest address to line ID and next ID. Setting a next ID here
- // allows to skip the fabric.p4 forwarding stage later.
- _BOOL prio = _FALSE;
-
- @hidden
- action set_line(bit<32> line_id) {
+ action set_session(bit<16> pppoe_session_id) {
fmeta.bng.type = BNG_TYPE_DOWNSTREAM;
- fmeta.bng.line_id = line_id;
- c_line_rx.count(line_id);
+ fmeta.bng.pppoe_session_id = pppoe_session_id;
+ c_line_rx.count(fmeta.bng.line_id);
}
- action set_line_next(bit<32> line_id, next_id_t next_id) {
- set_line(line_id);
- fmeta.next_id = next_id;
- fmeta.skip_forwarding = _TRUE;
- }
-
- action set_line_drop(bit<32> line_id) {
- set_line(line_id);
- fmeta.skip_forwarding = _TRUE;
- fmeta.skip_next = _TRUE;
+ action drop() {
+ fmeta.bng.type = BNG_TYPE_DOWNSTREAM;
+ c_line_rx.count(fmeta.bng.line_id);
mark_to_drop(smeta);
}
- table t_line_map_v4 {
+ table t_line_session_map {
key = {
- hdr.ipv4.dst_addr: exact @name("ipv4_dst");
+ fmeta.bng.line_id : exact @name("line_id");
}
actions = {
@defaultonly nop;
- set_line_next;
- set_line_drop;
+ set_session;
+ drop;
}
- size = BNG_MAX_SUBSC_NET;
+ size = BNG_MAX_SUBSC;
const default_action = nop;
}
-#ifdef WITH_IPV6
- table t_line_map_v6 {
- key = {
- hdr.ipv6.dst_addr[127:64]: exact @name("ipv6_dst_net_id");
- }
- actions = {
- @defaultonly nop;
- set_line_next;
- set_line_drop;
- }
- size = BNG_MAX_SUBSC_NET;
- const default_action = nop;
- }
-#endif // WITH_IPV6
-
// Downstream QoS tables.
// Provide coarse metering before prioritazion in the OLT. By default
// everything is tagged and metered as best-effort traffic.
action qos_prio() {
- prio = _TRUE;
+ // no-op
}
action qos_besteff() {
@@ -281,38 +221,39 @@
#endif // WITH_IPV6
apply {
+ // We are not sure the pkt is a BNG downstream one, first we need to
+ // verify the line_id matches the one of a subscriber...
+
// IPv4
- if (hdr.ipv4.isValid()) {
- if (t_line_map_v4.apply().hit) {
- // Apply QoS only to subscriber traffic. This makes sense only
- // if the downstream ports are used to receive IP traffic NOT
- // destined to subscribers, e.g. to services in the compute
- // nodes.
- t_qos_v4.apply();
- if (prio == _TRUE) {
- m_prio.execute_meter((bit<32>)fmeta.bng.line_id,
- fmeta.bng.ds_meter_result);
- } else {
- m_besteff.execute_meter((bit<32>)fmeta.bng.line_id,
- fmeta.bng.ds_meter_result);
+ if (t_line_session_map.apply().hit) {
+ // Apply QoS only to subscriber traffic. This makes sense only
+ // if the downstream ports are used to receive IP traffic NOT
+ // destined to subscribers, e.g. to services in the compute
+ // nodes.
+ if (hdr.ipv4.isValid()) {
+ switch (t_qos_v4.apply().action_run) {
+ qos_prio: {
+ m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result);
+ }
+ qos_besteff: {
+ m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result);
+ }
}
}
- }
#ifdef WITH_IPV6
- // IPv6
- else if (hdr.ipv6.isValid()) {
- if (t_line_map_v6.apply().hit) {
- t_qos_v6.apply();
- if (prio == _TRUE) {
- m_prio.execute_meter((bit<32>)fmeta.bng.line_id,
- fmeta.bng.ds_meter_result);
- } else {
- m_besteff.execute_meter((bit<32>)fmeta.bng.line_id,
- fmeta.bng.ds_meter_result);
+ // IPv6
+ else if (hdr.ipv6.isValid()) {
+ switch (t_qos_v6.apply().action_run) {
+ qos_prio: {
+ m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result);
+ }
+ qos_besteff: {
+ m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result);
+ }
}
}
- }
#endif // WITH_IPV6
+ }
}
}
@@ -324,52 +265,41 @@
counter(BNG_MAX_SUBSC, CounterType.packets_and_bytes) c_line_tx;
@hidden
- action encap(vlan_id_t c_tag, bit<16> pppoe_session_id) {
- // s_tag (outer VLAN) should be already set via the next_vlan table.
- // Here we add c_tag (inner VLAN) and PPPoE.
- hdr.vlan_tag.eth_type = ETHERTYPE_VLAN;
- hdr.inner_vlan_tag.setValid();
- hdr.inner_vlan_tag.vlan_id = c_tag;
+ action encap() {
+ // Here we add PPPoE and modify the inner_vlan_tag Ethernet Type.
hdr.inner_vlan_tag.eth_type = ETHERTYPE_PPPOES;
hdr.pppoe.setValid();
hdr.pppoe.version = 4w1;
hdr.pppoe.type_id = 4w1;
hdr.pppoe.code = 8w0; // 0 means session stage.
- hdr.pppoe.session_id = pppoe_session_id;
+ hdr.pppoe.session_id = fmeta.bng.pppoe_session_id;
c_line_tx.count(fmeta.bng.line_id);
}
- action encap_v4(vlan_id_t c_tag, bit<16> pppoe_session_id) {
- encap(c_tag, pppoe_session_id);
+ action encap_v4() {
+ encap();
hdr.pppoe.length = hdr.ipv4.total_len + 16w2;
hdr.pppoe.protocol = PPPOE_PROTOCOL_IP4;
}
#ifdef WITH_IPV6
- action encap_v6(vlan_id_t c_tag, bit<16> pppoe_session_id) {
- encap(c_tag, pppoe_session_id);
+ action encap_v6() {
+ encap();
hdr.pppoe.length = hdr.ipv6.payload_len + 16w42;
hdr.pppoe.protocol = PPPOE_PROTOCOL_IP6;
}
#endif // WITH_IPV6
- table t_session_encap {
- key = {
- fmeta.bng.line_id : exact @name("line_id");
- }
- actions = {
- @defaultonly nop;
- encap_v4;
-#ifdef WITH_IPV6
- encap_v6;
-#endif // WITH_IPV6
- }
- size = BNG_MAX_SUBSC;
- const default_action = nop();
- }
-
apply {
- t_session_encap.apply();
+ if (hdr.ipv4.isValid()) {
+ encap_v4();
+ }
+#ifdef WITH_IPV6
+ // IPv6
+ else if (hdr.ipv6.isValid()) {
+ encap_v6();
+ }
+#endif // WITH_IPV6
}
}
@@ -378,20 +308,54 @@
inout fabric_metadata_t fmeta,
inout standard_metadata_t smeta) {
- bng_ingress_upstream() upstream;
- bng_ingress_downstream() downstream;
+ bng_ingress_upstream() upstream;
+ bng_ingress_downstream() downstream;
- apply {
- if (hdr.pppoe.isValid()) {
- fmeta.bng.type = BNG_TYPE_UPSTREAM;
- upstream.apply(hdr, fmeta, smeta);
+ vlan_id_t s_tag = 0;
+ vlan_id_t c_tag = 0;
+
+ // TABLE: t_line_map
+ // Map s_tag and c_tag to a line ID to uniquely identify a subscriber
+
+ action set_line(bit<32> line_id) {
+ fmeta.bng.line_id = line_id;
}
- else {
- // We are not sure the pkt is a BNG downstream one, first we need to
- // verify the IP dst matches the IP addr of a subscriber...
- downstream.apply(hdr, fmeta, smeta);
+
+ table t_line_map {
+ key = {
+ s_tag : exact @name("s_tag");
+ c_tag : exact @name("c_tag");
+ }
+ actions = {
+ @defaultonly nop;
+ set_line;
+ }
+ size = BNG_MAX_SUBSC;
+ const default_action = nop;
}
- }
+
+ apply {
+ if(hdr.pppoe.isValid()) {
+ s_tag = hdr.vlan_tag.vlan_id;
+ c_tag = hdr.inner_vlan_tag.vlan_id;
+ } else {
+ // We expect the packet to be downstream,
+ // the tags are set by the next stage in the metadata.
+ s_tag = fmeta.vlan_id;
+ c_tag = fmeta.inner_vlan_id;
+ }
+
+ // First map the double VLAN tags to a line ID
+ // If table miss line ID will be 0.
+ t_line_map.apply();
+
+ if (hdr.pppoe.isValid()) {
+ fmeta.bng.type = BNG_TYPE_UPSTREAM;
+ upstream.apply(hdr, fmeta, smeta);
+ } else {
+ downstream.apply(hdr, fmeta, smeta);
+ }
+ }
}
control bng_egress(
diff --git a/pipelines/fabric/src/main/resources/include/control/acl.p4 b/pipelines/fabric/src/main/resources/include/control/acl.p4
index bf70f15..4c2df67 100644
--- a/pipelines/fabric/src/main/resources/include/control/acl.p4
+++ b/pipelines/fabric/src/main/resources/include/control/acl.p4
@@ -66,7 +66,7 @@
hdr.ethernet.dst_addr: ternary @name("eth_src"); // 48
hdr.ethernet.src_addr: ternary @name("eth_dst"); // 48
hdr.vlan_tag.vlan_id: ternary @name("vlan_id"); // 12
- fabric_metadata.eth_type: ternary @name("eth_type"); //16
+ fabric_metadata.last_eth_type: ternary @name("eth_type"); //16
hdr.ipv4.src_addr: ternary @name("ipv4_src"); // 32
hdr.ipv4.dst_addr: ternary @name("ipv4_dst"); // 32
hdr.icmp.icmp_type: ternary @name("icmp_type"); // 8
diff --git a/pipelines/fabric/src/main/resources/include/control/filtering.p4 b/pipelines/fabric/src/main/resources/include/control/filtering.p4
index cc8e313..a3213e9 100644
--- a/pipelines/fabric/src/main/resources/include/control/filtering.p4
+++ b/pipelines/fabric/src/main/resources/include/control/filtering.p4
@@ -45,14 +45,17 @@
action permit_with_internal_vlan(vlan_id_t vlan_id) {
fabric_metadata.vlan_id = vlan_id;
- ingress_port_vlan_counter.count();
+ permit();
}
+ // FIXME: remove the use of ternary match on valid inner VLAN.
+ // Use multi-table approach to remove ternary matching
table ingress_port_vlan {
key = {
- standard_metadata.ingress_port: exact @name("ig_port");
- hdr.vlan_tag.isValid(): exact @name("vlan_is_valid");
- hdr.vlan_tag.vlan_id: ternary @name("vlan_id");
+ standard_metadata.ingress_port : exact @name("ig_port");
+ hdr.vlan_tag.isValid() : exact @name("vlan_is_valid");
+ hdr.vlan_tag.vlan_id : ternary @name("vlan_id");
+ hdr.inner_vlan_tag.vlan_id : ternary @name("inner_vlan_id");
}
actions = {
deny();
@@ -86,9 +89,11 @@
table fwd_classifier {
key = {
- standard_metadata.ingress_port: exact @name("ig_port");
- hdr.ethernet.dst_addr: ternary @name("eth_dst");
- fabric_metadata.eth_type: exact @name("eth_type");
+ standard_metadata.ingress_port : exact @name("ig_port");
+ hdr.ethernet.dst_addr : ternary @name("eth_dst");
+ fabric_metadata.is_ipv4 : exact @name("is_ipv4");
+ fabric_metadata.is_ipv6 : exact @name("is_ipv6");
+ fabric_metadata.is_mpls : exact @name("is_mpls");
}
actions = {
set_forwarding_type;
@@ -102,11 +107,17 @@
// Initialize lookup metadata. Packets without a VLAN header will be
// treated as belonging to a default VLAN ID (see parser).
if (hdr.vlan_tag.isValid()) {
- fabric_metadata.eth_type = hdr.vlan_tag.eth_type;
fabric_metadata.vlan_id = hdr.vlan_tag.vlan_id;
fabric_metadata.vlan_pri = hdr.vlan_tag.pri;
fabric_metadata.vlan_cfi = hdr.vlan_tag.cfi;
}
+ #ifdef WITH_DOUBLE_VLAN_TERMINATION
+ if (hdr.inner_vlan_tag.isValid()) {
+ fabric_metadata.inner_vlan_id = hdr.inner_vlan_tag.vlan_id;
+ fabric_metadata.inner_vlan_pri = hdr.inner_vlan_tag.pri;
+ fabric_metadata.inner_vlan_cfi = hdr.inner_vlan_tag.cfi;
+ }
+ #endif // WITH_DOUBLE_VLAN_TERMINATION
if (!hdr.mpls.isValid()) {
// Packets with a valid MPLS header will have
// fabric_metadata.mpls_ttl set to the packet's MPLS ttl value (see
@@ -115,6 +126,22 @@
fabric_metadata.mpls_ttl = DEFAULT_MPLS_TTL + 1;
}
+ // Set last_eth_type checking the validity of the L2.5 headers
+ if (hdr.mpls.isValid()) {
+ fabric_metadata.last_eth_type = ETHERTYPE_MPLS;
+ } else {
+ if (hdr.vlan_tag.isValid()) {
+#if defined(WITH_XCONNECT) || defined(WITH_BNG) || defined(WITH_DOUBLE_VLAN_TERMINATION)
+ if(hdr.inner_vlan_tag.isValid()) {
+ fabric_metadata.last_eth_type = hdr.inner_vlan_tag.eth_type;
+ } else
+#endif // WITH_XCONNECT || WITH_BNG || WITH_DOUBLE_VLAN_TERMINATION
+ fabric_metadata.last_eth_type = hdr.vlan_tag.eth_type;
+ } else {
+ fabric_metadata.last_eth_type = hdr.ethernet.eth_type;
+ }
+ }
+
ingress_port_vlan.apply();
fwd_classifier.apply();
}
diff --git a/pipelines/fabric/src/main/resources/include/control/next.p4 b/pipelines/fabric/src/main/resources/include/control/next.p4
index 82b61eb..9868339 100644
--- a/pipelines/fabric/src/main/resources/include/control/next.p4
+++ b/pipelines/fabric/src/main/resources/include/control/next.p4
@@ -71,12 +71,23 @@
next_vlan_counter.count();
}
+#ifdef WITH_DOUBLE_VLAN_TERMINATION
+ action set_double_vlan(vlan_id_t outer_vlan_id, vlan_id_t inner_vlan_id) {
+ set_vlan(outer_vlan_id);
+ fabric_metadata.push_double_vlan = _TRUE;
+ fabric_metadata.inner_vlan_id = inner_vlan_id;
+ }
+#endif // WITH_DOUBLE_VLAN_TERMINATION
+
table next_vlan {
key = {
fabric_metadata.next_id: exact @name("next_id");
}
actions = {
set_vlan;
+#ifdef WITH_DOUBLE_VLAN_TERMINATION
+ set_double_vlan;
+#endif // WITH_DOUBLE_VLAN_TERMINATION
@defaultonly nop;
}
const default_action = nop();
@@ -93,6 +104,7 @@
action output_xconnect(port_num_t port_num) {
output(port_num);
+ fabric_metadata.last_eth_type = ETHERTYPE_VLAN;
xconnect_counter.count();
}
@@ -251,7 +263,7 @@
action pop_mpls_if_present() {
hdr.mpls.setInvalid();
// Assuming there's an IP header after the MPLS one.
- fabric_metadata.eth_type = fabric_metadata.ip_eth_type;
+ fabric_metadata.last_eth_type = fabric_metadata.ip_eth_type;
}
@hidden
@@ -261,7 +273,7 @@
hdr.mpls.tc = 3w0;
hdr.mpls.bos = 1w1; // BOS = TRUE
hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push.
- fabric_metadata.eth_type = ETHERTYPE_MPLS;
+ fabric_metadata.last_eth_type = ETHERTYPE_MPLS;
}
@hidden
@@ -271,11 +283,25 @@
hdr.vlan_tag.setValid();
hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi;
hdr.vlan_tag.pri = fabric_metadata.vlan_pri;
- hdr.vlan_tag.eth_type = fabric_metadata.eth_type;
+ hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type;
hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id;
hdr.ethernet.eth_type = ETHERTYPE_VLAN;
}
+#ifdef WITH_DOUBLE_VLAN_TERMINATION
+ @hidden
+ action push_inner_vlan() {
+ // Then push inner VLAN TAG, rewriting correclty the outer vlan eth_type
+ // and the ethernet eth_type
+ hdr.inner_vlan_tag.setValid();
+ hdr.inner_vlan_tag.cfi = fabric_metadata.inner_vlan_cfi;
+ hdr.inner_vlan_tag.pri = fabric_metadata.inner_vlan_pri;
+ hdr.inner_vlan_tag.vlan_id = fabric_metadata.inner_vlan_id;
+ hdr.inner_vlan_tag.eth_type = fabric_metadata.last_eth_type;
+ hdr.vlan_tag.eth_type = ETHERTYPE_VLAN;
+ }
+#endif // WITH_DOUBLE_VLAN_TERMINATION
+
/*
* Egress VLAN Table.
* Pops the VLAN tag if the pair egress port and VLAN ID is matched.
@@ -283,7 +309,7 @@
direct_counter(CounterType.packets_and_bytes) egress_vlan_counter;
action pop_vlan() {
- hdr.ethernet.eth_type = fabric_metadata.eth_type;
+ hdr.ethernet.eth_type = fabric_metadata.last_eth_type;
hdr.vlan_tag.setInvalid();
egress_vlan_counter.count();
}
@@ -314,12 +340,26 @@
set_mpls();
}
- if (!egress_vlan.apply().hit) {
- // Push VLAN tag if not the default one.
- if (fabric_metadata.vlan_id != DEFAULT_VLAN_ID) {
- push_vlan();
+#ifdef WITH_DOUBLE_VLAN_TERMINATION
+ if (fabric_metadata.push_double_vlan == _TRUE) {
+ // Double VLAN termination.
+ push_vlan();
+ push_inner_vlan();
+ } else {
+ // If no push double vlan, inner_vlan_tag must be popped
+ hdr.inner_vlan_tag.setInvalid();
+#endif // WITH_DOUBLE_VLAN_TERMINATION
+ // Port-based VLAN tagging (by default all
+ // ports are assumed tagged)
+ if (!egress_vlan.apply().hit) {
+ // Push VLAN tag if not the default one.
+ if (fabric_metadata.vlan_id != DEFAULT_VLAN_ID) {
+ push_vlan();
+ }
}
+#ifdef WITH_DOUBLE_VLAN_TERMINATION
}
+#endif // WITH_DOUBLE_VLAN_TERMINATION
// TTL decrement and check.
if (hdr.mpls.isValid()) {
diff --git a/pipelines/fabric/src/main/resources/include/header.p4 b/pipelines/fabric/src/main/resources/include/header.p4
index 11204e8..09df685 100644
--- a/pipelines/fabric/src/main/resources/include/header.p4
+++ b/pipelines/fabric/src/main/resources/include/header.p4
@@ -159,17 +159,27 @@
struct bng_meta_t {
bit<2> type; // upstream or downstream
bit<32> line_id; // subscriber line
+ bit<16> pppoe_session_id;
bit<32> ds_meter_result; // for downstream metering
}
#endif // WITH_BNG
//Custom metadata definition
struct fabric_metadata_t {
- bit<16> eth_type;
+ bit<16> last_eth_type;
+ _BOOL is_ipv4;
+ _BOOL is_ipv6;
+ _BOOL is_mpls;
bit<16> ip_eth_type;
vlan_id_t vlan_id;
bit<3> vlan_pri;
bit<1> vlan_cfi;
+#ifdef WITH_DOUBLE_VLAN_TERMINATION
+ _BOOL push_double_vlan;
+ vlan_id_t inner_vlan_id;
+ bit<3> inner_vlan_pri;
+ bit<1> inner_vlan_cfi;
+#endif // WITH_DOUBLE_VLAN_TERMINATION
mpls_label_t mpls_label;
bit<8> mpls_ttl;
_BOOL skip_forwarding;
@@ -195,9 +205,9 @@
struct parsed_headers_t {
ethernet_t ethernet;
vlan_tag_t vlan_tag;
-#if defined(WITH_XCONNECT) || defined(WITH_BNG)
+#if defined(WITH_XCONNECT) || defined(WITH_BNG) || defined(WITH_DOUBLE_VLAN_TERMINATION)
vlan_tag_t inner_vlan_tag;
-#endif // WITH_XCONNECT || WITH_BNG
+#endif // WITH_XCONNECT || WITH_BNG || WITH_DOUBLE_VLAN_TERMINATION
#ifdef WITH_BNG
pppoe_t pppoe;
#endif // WITH_BNG
diff --git a/pipelines/fabric/src/main/resources/include/parser.p4 b/pipelines/fabric/src/main/resources/include/parser.p4
index e234676..2d6a1d4 100644
--- a/pipelines/fabric/src/main/resources/include/parser.p4
+++ b/pipelines/fabric/src/main/resources/include/parser.p4
@@ -40,14 +40,14 @@
state parse_ethernet {
packet.extract(hdr.ethernet);
- fabric_metadata.eth_type = hdr.ethernet.eth_type;
+ fabric_metadata.last_eth_type = hdr.ethernet.eth_type;
fabric_metadata.vlan_id = DEFAULT_VLAN_ID;
transition select(hdr.ethernet.eth_type){
ETHERTYPE_VLAN: parse_vlan_tag;
ETHERTYPE_MPLS: parse_mpls;
- ETHERTYPE_IPV4: parse_ipv4;
+ ETHERTYPE_IPV4: pre_parse_ipv4;
#ifdef WITH_IPV6
- ETHERTYPE_IPV6: parse_ipv6;
+ ETHERTYPE_IPV6: pre_parse_ipv6;
#endif // WITH_IPV6
default: accept;
}
@@ -56,25 +56,27 @@
state parse_vlan_tag {
packet.extract(hdr.vlan_tag);
transition select(hdr.vlan_tag.eth_type){
- ETHERTYPE_IPV4: parse_ipv4;
+ ETHERTYPE_IPV4: pre_parse_ipv4;
#ifdef WITH_IPV6
- ETHERTYPE_IPV6: parse_ipv6;
+ ETHERTYPE_IPV6: pre_parse_ipv6;
#endif // WITH_IPV6
ETHERTYPE_MPLS: parse_mpls;
-#if defined(WITH_XCONNECT) || defined(WITH_BNG)
+#if defined(WITH_XCONNECT) || defined(WITH_BNG) || defined(WITH_DOUBLE_VLAN_TERMINATION)
ETHERTYPE_VLAN: parse_inner_vlan_tag;
+ ETHERTYPE_QINQ: parse_inner_vlan_tag;
+ ETHERTYPE_QINQ_NON_STD: parse_inner_vlan_tag;
#endif // WITH_XCONNECT
default: accept;
}
}
-#if defined(WITH_XCONNECT) || defined(WITH_BNG)
+#if defined(WITH_XCONNECT) || defined(WITH_BNG) || defined(WITH_DOUBLE_VLAN_TERMINATION)
state parse_inner_vlan_tag {
packet.extract(hdr.inner_vlan_tag);
transition select(hdr.inner_vlan_tag.eth_type){
- ETHERTYPE_IPV4: parse_ipv4;
+ ETHERTYPE_IPV4: pre_parse_ipv4;
#ifdef WITH_IPV6
- ETHERTYPE_IPV6: parse_ipv6;
+ ETHERTYPE_IPV6: pre_parse_ipv6;
#endif // WITH_IPV6
ETHERTYPE_MPLS: parse_mpls;
#ifdef WITH_BNG
@@ -84,16 +86,16 @@
default: accept;
}
}
-#endif // WITH_XCONNECT
+#endif // WITH_XCONNECT || WITH_BNG || WITH_DOUBLE_VLAN_TERMINATION
#ifdef WITH_BNG
state parse_pppoe {
packet.extract(hdr.pppoe);
transition select(hdr.pppoe.protocol) {
PPPOE_PROTOCOL_MPLS: parse_mpls;
- PPPOE_PROTOCOL_IP4: parse_ipv4;
+ PPPOE_PROTOCOL_IP4: pre_parse_ipv4;
#ifdef WITH_IPV6
- PPPOE_PROTOCOL_IP6: parse_ipv6;
+ PPPOE_PROTOCOL_IP6: pre_parse_ipv6;
#endif // WITH_IPV6
default: accept;
}
@@ -102,13 +104,16 @@
state parse_mpls {
packet.extract(hdr.mpls);
+ fabric_metadata.is_mpls = _TRUE;
fabric_metadata.mpls_label = hdr.mpls.label;
fabric_metadata.mpls_ttl = hdr.mpls.ttl;
// There is only one MPLS label for this fabric.
// Assume header after MPLS header is IPv4/IPv6
// Lookup first 4 bits for version
transition select(packet.lookahead<bit<IP_VER_LENGTH>>()) {
- //The packet should be either IPv4 or IPv6.
+ // The packet should be either IPv4 or IPv6.
+ // If we have MPLS, go directly to parsing state without
+ // moving to pre_ states, the packet is considered MPLS
IP_VERSION_4: parse_ipv4;
#ifdef WITH_IPV6
IP_VERSION_6: parse_ipv6;
@@ -117,6 +122,11 @@
}
}
+ // Intermediate state to set is_ipv4
+ state pre_parse_ipv4 {
+ fabric_metadata.is_ipv4 = _TRUE;
+ transition parse_ipv4;
+ }
state parse_ipv4 {
packet.extract(hdr.ipv4);
fabric_metadata.ip_proto = hdr.ipv4.protocol;
@@ -132,6 +142,11 @@
}
#ifdef WITH_IPV6
+ // Intermediate state to set is_ipv6
+ state pre_parse_ipv6 {
+ fabric_metadata.is_ipv6 = _TRUE;
+ transition parse_ipv6;
+ }
state parse_ipv6 {
packet.extract(hdr.ipv6);
fabric_metadata.ip_proto = hdr.ipv6.next_hdr;
@@ -270,9 +285,9 @@
#endif // WITH_INT_SINK
packet.emit(hdr.ethernet);
packet.emit(hdr.vlan_tag);
-#if defined(WITH_XCONNECT) || defined(WITH_BNG)
+#if defined(WITH_XCONNECT) || defined(WITH_BNG) || defined(WITH_DOUBLE_VLAN_TERMINATION)
packet.emit(hdr.inner_vlan_tag);
-#endif // WITH_XCONNECT
+#endif // WITH_XCONNECT || WITH_BNG || WITH_DOUBLE_VLAN_TERMINATION
#ifdef WITH_BNG
packet.emit(hdr.pppoe);
#endif // WITH_BNG
diff --git a/pipelines/fabric/src/main/resources/include/size.p4 b/pipelines/fabric/src/main/resources/include/size.p4
index 8cd2fcc..2883094 100644
--- a/pipelines/fabric/src/main/resources/include/size.p4
+++ b/pipelines/fabric/src/main/resources/include/size.p4
@@ -2,8 +2,14 @@
#define __TABLE_SIZE__
// Default sizes when building for BMv2.
-
-#define PORT_VLAN_TABLE_SIZE 1024
+#define BNG_MAX_SUBSC 8192
+#define BNG_MAX_NET_PER_SUBSC 4
+#define BNG_MAX_SUBSC_NET BNG_MAX_NET_PER_SUBSC * BNG_MAX_SUBSC
+#ifdef WITH_BNG
+ #define PORT_VLAN_TABLE_SIZE BNG_MAX_SUBSC
+#else
+ #define PORT_VLAN_TABLE_SIZE 1024
+#endif // WITH_BNG
#define FWD_CLASSIFIER_TABLE_SIZE 1024
#define BRIDGING_TABLE_SIZE 1024
#define MPLS_TABLE_SIZE 1024
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
index 32ed643..911f55f 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
@@ -7,32 +7,40 @@
["tmp_0", 4, false],
["tmp", 32, false],
["tmp_1", 32, false],
- ["bng_ingress_upstream_drop", 1, false],
+ ["bng_ingress_s_tag", 12, false],
+ ["bng_ingress_c_tag", 12, false],
["bng_ingress_upstream_tmp", 1, false],
- ["bng_ingress_downstream_prio", 1, false],
["bng_ingress_downstream_tmp", 1, false],
["bng_ingress_upstream_hasReturned", 1, false],
["egress_next_tmp", 1, false],
- ["fabric_metadata_t._eth_type0", 16, false],
- ["fabric_metadata_t._ip_eth_type1", 16, false],
- ["fabric_metadata_t._vlan_id2", 12, false],
- ["fabric_metadata_t._vlan_pri3", 3, false],
- ["fabric_metadata_t._vlan_cfi4", 1, false],
- ["fabric_metadata_t._mpls_label5", 20, false],
- ["fabric_metadata_t._mpls_ttl6", 8, false],
- ["fabric_metadata_t._skip_forwarding7", 1, false],
- ["fabric_metadata_t._skip_next8", 1, false],
- ["fabric_metadata_t._fwd_type9", 3, false],
- ["fabric_metadata_t._next_id10", 32, false],
- ["fabric_metadata_t._is_multicast11", 1, false],
- ["fabric_metadata_t._is_controller_packet_out12", 1, false],
- ["fabric_metadata_t._ip_proto13", 8, false],
- ["fabric_metadata_t._l4_sport14", 16, false],
- ["fabric_metadata_t._l4_dport15", 16, false],
- ["fabric_metadata_t._bng_type16", 2, false],
- ["fabric_metadata_t._bng_line_id17", 32, false],
- ["fabric_metadata_t._bng_ds_meter_result18", 32, false],
- ["_padding_0", 1, false]
+ ["fabric_metadata_t._last_eth_type0", 16, false],
+ ["fabric_metadata_t._is_ipv41", 1, false],
+ ["fabric_metadata_t._is_ipv62", 1, false],
+ ["fabric_metadata_t._is_mpls3", 1, false],
+ ["fabric_metadata_t._ip_eth_type4", 16, false],
+ ["fabric_metadata_t._vlan_id5", 12, false],
+ ["fabric_metadata_t._vlan_pri6", 3, false],
+ ["fabric_metadata_t._vlan_cfi7", 1, false],
+ ["fabric_metadata_t._push_double_vlan8", 1, false],
+ ["fabric_metadata_t._inner_vlan_id9", 12, false],
+ ["fabric_metadata_t._inner_vlan_pri10", 3, false],
+ ["fabric_metadata_t._inner_vlan_cfi11", 1, false],
+ ["fabric_metadata_t._mpls_label12", 20, false],
+ ["fabric_metadata_t._mpls_ttl13", 8, false],
+ ["fabric_metadata_t._skip_forwarding14", 1, false],
+ ["fabric_metadata_t._skip_next15", 1, false],
+ ["fabric_metadata_t._fwd_type16", 3, false],
+ ["fabric_metadata_t._next_id17", 32, false],
+ ["fabric_metadata_t._is_multicast18", 1, false],
+ ["fabric_metadata_t._is_controller_packet_out19", 1, false],
+ ["fabric_metadata_t._ip_proto20", 8, false],
+ ["fabric_metadata_t._l4_sport21", 16, false],
+ ["fabric_metadata_t._l4_dport22", 16, false],
+ ["fabric_metadata_t._bng_type23", 2, false],
+ ["fabric_metadata_t._bng_line_id24", 32, false],
+ ["fabric_metadata_t._bng_pppoe_session_id25", 16, false],
+ ["fabric_metadata_t._bng_ds_meter_result26", 32, false],
+ ["_padding_0", 7, false]
]
},
{
@@ -375,7 +383,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
@@ -388,7 +396,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "hexstr",
@@ -415,7 +423,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"value" : "default",
@@ -449,7 +457,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -464,6 +472,18 @@
"next_state" : "parse_inner_vlan_tag"
},
{
+ "type" : "hexstr",
+ "value" : "0x88a8",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x9100",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
"value" : "default",
"mask" : null,
"next_state" : null
@@ -495,7 +515,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -553,7 +573,7 @@
"type" : "hexstr",
"value" : "0x0021",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"value" : "default",
@@ -585,7 +605,30 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._is_mpls3"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ },
+ {
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
{
"type" : "field",
@@ -598,7 +641,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl13"]
},
{
"type" : "field",
@@ -642,12 +685,49 @@
]
},
{
- "name" : "parse_ipv4",
+ "name" : "pre_parse_ipv4",
"id" : 7,
"parser_ops" : [
{
"parameters" : [
{
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._is_ipv41"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ }
+ ],
+ "transitions" : [
+ {
+ "value" : "default",
+ "mask" : null,
+ "next_state" : "parse_ipv4"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
+ "name" : "parse_ipv4",
+ "id" : 8,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
"type" : "regular",
"value" : "ipv4"
}
@@ -658,7 +738,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto20"]
},
{
"type" : "field",
@@ -671,7 +751,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
},
{
"type" : "hexstr",
@@ -715,7 +795,7 @@
},
{
"name" : "parse_tcp",
- "id" : 8,
+ "id" : 9,
"parser_ops" : [
{
"parameters" : [
@@ -730,7 +810,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport21"]
},
{
"type" : "field",
@@ -743,7 +823,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
},
{
"type" : "field",
@@ -764,7 +844,7 @@
},
{
"name" : "parse_udp",
- "id" : 9,
+ "id" : 10,
"parser_ops" : [
{
"parameters" : [
@@ -779,7 +859,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport21"]
},
{
"type" : "field",
@@ -792,7 +872,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
},
{
"type" : "field",
@@ -818,7 +898,7 @@
},
{
"name" : "parse_icmp",
- "id" : 10,
+ "id" : 11,
"parser_ops" : [
{
"parameters" : [
@@ -849,7 +929,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/parser.p4",
- "line" : 261,
+ "line" : 276,
"column" : 8,
"source_fragment" : "FabricDeparser"
},
@@ -862,7 +942,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 184,
+ "line" : 152,
"column" : 33,
"source_fragment" : "m_besteff"
},
@@ -876,7 +956,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 185,
+ "line" : 153,
"column" : 33,
"source_fragment" : "m_prio"
},
@@ -892,7 +972,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 40,
+ "line" : 36,
"column" : 39,
"source_fragment" : "c_terminated"
},
@@ -904,7 +984,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 41,
+ "line" : 37,
"column" : 39,
"source_fragment" : "c_dropped"
},
@@ -916,7 +996,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 42,
+ "line" : 38,
"column" : 39,
"source_fragment" : "c_control"
},
@@ -928,7 +1008,7 @@
"id" : 3,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 182,
+ "line" : 150,
"column" : 49,
"source_fragment" : "c_line_rx"
},
@@ -954,7 +1034,7 @@
"binding" : "FabricIngress.filtering.fwd_classifier",
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 80,
+ "line" : 83,
"column" : 50,
"source_fragment" : "fwd_classifier_counter"
}
@@ -1020,44 +1100,32 @@
}
},
{
- "name" : "FabricIngress.next.xconnect_counter",
- "id" : 11,
- "is_direct" : true,
- "binding" : "FabricIngress.next.xconnect",
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 92,
- "column" : 50,
- "source_fragment" : "xconnect_counter"
- }
- },
- {
"name" : "FabricIngress.next.hashed_counter",
- "id" : 12,
+ "id" : 11,
"is_direct" : true,
"binding" : "FabricIngress.next.hashed",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 166,
+ "line" : 178,
"column" : 50,
"source_fragment" : "hashed_counter"
}
},
{
"name" : "FabricIngress.next.multicast_counter",
- "id" : 13,
+ "id" : 12,
"is_direct" : true,
"binding" : "FabricIngress.next.multicast",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 210,
+ "line" : 222,
"column" : 50,
"source_fragment" : "multicast_counter"
}
},
{
"name" : "FabricIngress.port_counters_control.egress_port_counter",
- "id" : 14,
+ "id" : 13,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 26,
@@ -1069,7 +1137,7 @@
},
{
"name" : "FabricIngress.port_counters_control.ingress_port_counter",
- "id" : 15,
+ "id" : 14,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 27,
@@ -1081,10 +1149,10 @@
},
{
"name" : "FabricEgress.bng_egress.downstream.c_line_tx",
- "id" : 16,
+ "id" : 15,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 324,
+ "line" : 265,
"column" : 49,
"source_fragment" : "c_line_tx"
},
@@ -1093,12 +1161,12 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan_counter",
- "id" : 17,
+ "id" : 16,
"is_direct" : true,
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 283,
+ "line" : 309,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -1286,45 +1354,8 @@
"primitives" : []
},
{
- "name" : "nop",
- "id" : 9,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.set_line",
- "id" : 10,
- "runtime_data" : [
- {
- "name" : "line_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 53,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
- }
- }
- ]
- },
- {
"name" : "FabricIngress.bng_ingress.upstream.punt_to_cpu",
- "id" : 11,
+ "id" : 9,
"runtime_data" : [],
"primitives" : [
{
@@ -1341,70 +1372,12 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 73,
+ "line" : 44,
"column" : 8,
"source_fragment" : "smeta.egress_spec = 255"
}
},
{
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 74,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 75,
- "column" : 24,
- "source_fragment" : "= true; ..."
- }
- },
- {
"op" : "count",
"parameters" : [
{
@@ -1413,12 +1386,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 76,
+ "line" : 45,
"column" : 8,
"source_fragment" : "c_control.count(fmeta.bng.line_id)"
}
@@ -1427,7 +1400,7 @@
},
{
"name" : "FabricIngress.bng_ingress.upstream.term_disabled",
- "id" : 12,
+ "id" : 10,
"runtime_data" : [],
"primitives" : [
{
@@ -1435,7 +1408,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type16"]
+ "value" : ["scalars", "fabric_metadata_t._bng_type23"]
},
{
"type" : "hexstr",
@@ -1450,64 +1423,6 @@
}
},
{
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 108,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 109,
- "column" : 24,
- "source_fragment" : "= true; ..."
- }
- },
- {
"op" : "mark_to_drop",
"parameters" : [
{
@@ -1517,45 +1432,16 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 110,
+ "line" : 75,
"column" : 8,
"source_fragment" : "mark_to_drop(smeta)"
}
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 111,
- "column" : 8,
- "source_fragment" : "drop=true"
- }
}
]
},
{
"name" : "FabricIngress.bng_ingress.upstream.term_enabled_v4",
- "id" : 13,
+ "id" : 11,
"runtime_data" : [],
"primitives" : [
{
@@ -1563,7 +1449,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["ethernet", "eth_type"]
+ "value" : ["inner_vlan_tag", "eth_type"]
},
{
"type" : "hexstr",
@@ -1582,7 +1468,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "hexstr",
@@ -1606,42 +1492,12 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 100,
+ "line" : 69,
"column" : 8,
"source_fragment" : "hdr.pppoe.setInvalid()"
}
},
{
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 101,
- "column" : 8,
- "source_fragment" : "hdr.vlan_tag.setInvalid()"
- }
- },
- {
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "inner_vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 102,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
- }
- },
- {
"op" : "count",
"parameters" : [
{
@@ -1650,12 +1506,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 103,
+ "line" : 70,
"column" : 8,
"source_fragment" : "c_terminated.count(fmeta.bng.line_id)"
}
@@ -1663,16 +1519,12 @@
]
},
{
- "name" : "FabricIngress.bng_ingress.downstream.set_line_next",
- "id" : 14,
+ "name" : "FabricIngress.bng_ingress.downstream.set_session",
+ "id" : 12,
"runtime_data" : [
{
- "name" : "line_id",
- "bitwidth" : 32
- },
- {
- "name" : "next_id",
- "bitwidth" : 32
+ "name" : "pppoe_session_id",
+ "bitwidth" : 16
}
],
"primitives" : [
@@ -1681,7 +1533,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type16"]
+ "value" : ["scalars", "fabric_metadata_t._bng_type23"]
},
{
"type" : "hexstr",
@@ -1700,7 +1552,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
+ "value" : ["scalars", "fabric_metadata_t._bng_pppoe_session_id25"]
},
{
"type" : "runtime_data",
@@ -1709,9 +1561,9 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 195,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
+ "line" : 157,
+ "column" : 35,
+ "source_fragment" : "= pppoe_session_id; ..."
}
},
{
@@ -1722,83 +1574,30 @@
"value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
},
{
- "type" : "runtime_data",
- "value" : 0
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 196,
+ "line" : 158,
"column" : 8,
- "source_fragment" : "c_line_rx.count(line_id)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
- },
- {
- "type" : "runtime_data",
- "value" : 1
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 201,
- "column" : 22,
- "source_fragment" : "= next_id; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 202,
- "column" : 30,
- "source_fragment" : "= true; ..."
+ "source_fragment" : "c_line_rx.count(fmeta.bng.line_id)"
}
}
]
},
{
- "name" : "FabricIngress.bng_ingress.downstream.set_line_drop",
- "id" : 15,
- "runtime_data" : [
- {
- "name" : "line_id",
- "bitwidth" : 32
- }
- ],
+ "name" : "FabricIngress.bng_ingress.downstream.drop",
+ "id" : 13,
+ "runtime_data" : [],
"primitives" : [
{
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type16"]
+ "value" : ["scalars", "fabric_metadata_t._bng_type23"]
},
{
"type" : "hexstr",
@@ -1813,25 +1612,6 @@
}
},
{
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 195,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
- }
- },
- {
"op" : "count",
"parameters" : [
{
@@ -1839,73 +1619,15 @@
"value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
},
{
- "type" : "runtime_data",
- "value" : 0
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 196,
+ "line" : 163,
"column" : 8,
- "source_fragment" : "c_line_rx.count(line_id)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 207,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 208,
- "column" : 24,
- "source_fragment" : "= true; ..."
+ "source_fragment" : "c_line_rx.count(fmeta.bng.line_id)"
}
},
{
@@ -1918,7 +1640,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 209,
+ "line" : 164,
"column" : 8,
"source_fragment" : "mark_to_drop(smeta)"
}
@@ -1927,49 +1649,50 @@
},
{
"name" : "FabricIngress.bng_ingress.downstream.qos_prio",
- "id" : 16,
+ "id" : 14,
"runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.qos_besteff",
+ "id" : 15,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.set_line",
+ "id" : 16,
+ "runtime_data" : [
+ {
+ "name" : "line_id",
+ "bitwidth" : 32
+ }
+ ],
"primitives" : [
{
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
+ "type" : "runtime_data",
+ "value" : 0
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 245,
- "column" : 8,
- "source_fragment" : "prio=true"
+ "line" : 321,
+ "column" : 30,
+ "source_fragment" : "= line_id; ..."
}
}
]
},
{
- "name" : "FabricIngress.bng_ingress.downstream.qos_besteff",
- "id" : 17,
- "runtime_data" : [],
- "primitives" : []
- },
- {
"name" : "FabricIngress.filtering.deny",
- "id" : 18,
+ "id" : 17,
"runtime_data" : [],
"primitives" : [
{
@@ -1977,7 +1700,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding14"]
},
{
"type" : "expression",
@@ -2006,7 +1729,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
},
{
"type" : "expression",
@@ -2034,13 +1757,13 @@
},
{
"name" : "FabricIngress.filtering.permit",
- "id" : 19,
+ "id" : 18,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricIngress.filtering.permit_with_internal_vlan",
- "id" : 20,
+ "id" : 19,
"runtime_data" : [
{
"name" : "vlan_id",
@@ -2053,7 +1776,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -2071,7 +1794,7 @@
},
{
"name" : "FabricIngress.filtering.set_forwarding_type",
- "id" : 21,
+ "id" : 20,
"runtime_data" : [
{
"name" : "fwd_type",
@@ -2084,7 +1807,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
{
"type" : "runtime_data",
@@ -2093,7 +1816,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 83,
+ "line" : 86,
"column" : 33,
"source_fragment" : "= fwd_type; ..."
}
@@ -2102,7 +1825,7 @@
},
{
"name" : "FabricIngress.forwarding.set_next_id_bridging",
- "id" : 22,
+ "id" : 21,
"runtime_data" : [
{
"name" : "next_id",
@@ -2115,7 +1838,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -2133,7 +1856,7 @@
},
{
"name" : "FabricIngress.forwarding.pop_mpls_and_next",
- "id" : 23,
+ "id" : 22,
"runtime_data" : [
{
"name" : "next_id",
@@ -2146,7 +1869,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
{
"type" : "hexstr",
@@ -2165,7 +1888,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -2183,7 +1906,7 @@
},
{
"name" : "FabricIngress.forwarding.set_next_id_routing_v4",
- "id" : 24,
+ "id" : 23,
"runtime_data" : [
{
"name" : "next_id",
@@ -2196,7 +1919,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -2214,13 +1937,13 @@
},
{
"name" : "FabricIngress.forwarding.nop_routing_v4",
- "id" : 25,
+ "id" : 24,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricIngress.acl.set_next_id_acl",
- "id" : 26,
+ "id" : 25,
"runtime_data" : [
{
"name" : "next_id",
@@ -2233,7 +1956,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -2251,7 +1974,7 @@
},
{
"name" : "FabricIngress.acl.punt_to_cpu",
- "id" : 27,
+ "id" : 26,
"runtime_data" : [],
"primitives" : [
{
@@ -2278,7 +2001,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
},
{
"type" : "expression",
@@ -2306,7 +2029,7 @@
},
{
"name" : "FabricIngress.acl.set_clone_session_id",
- "id" : 28,
+ "id" : 27,
"runtime_data" : [
{
"name" : "clone_id",
@@ -2337,7 +2060,7 @@
},
{
"name" : "FabricIngress.acl.drop",
- "id" : 29,
+ "id" : 28,
"runtime_data" : [],
"primitives" : [
{
@@ -2360,7 +2083,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
},
{
"type" : "expression",
@@ -2388,13 +2111,13 @@
},
{
"name" : "FabricIngress.acl.nop_acl",
- "id" : 30,
+ "id" : 29,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricIngress.next.set_vlan",
- "id" : 31,
+ "id" : 30,
"runtime_data" : [
{
"name" : "vlan_id",
@@ -2407,7 +2130,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -2424,7 +2147,90 @@
]
},
{
- "name" : "FabricIngress.next.output_xconnect",
+ "name" : "FabricIngress.next.set_double_vlan",
+ "id" : 31,
+ "runtime_data" : [
+ {
+ "name" : "outer_vlan_id",
+ "bitwidth" : 12
+ },
+ {
+ "name" : "inner_vlan_id",
+ "bitwidth" : 12
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 70,
+ "column" : 32,
+ "source_fragment" : "= vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._push_double_vlan8"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 77,
+ "column" : 41,
+ "source_fragment" : "= true; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 1
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 78,
+ "column" : 38,
+ "source_fragment" : "= inner_vlan_id; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.next.output_hashed",
"id" : 32,
"runtime_data" : [
{
@@ -2455,70 +2261,8 @@
]
},
{
- "name" : "FabricIngress.next.set_next_id_xconnect",
- "id" : 33,
- "runtime_data" : [
- {
- "name" : "next_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 100,
- "column" : 32,
- "source_fragment" : "= next_id; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.next.output_hashed",
- "id" : 34,
- "runtime_data" : [
- {
- "name" : "port_num",
- "bitwidth" : 9
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["standard_metadata", "egress_spec"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 31,
- "column" : 5,
- "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
- }
- }
- ]
- },
- {
"name" : "FabricIngress.next.routing_hashed",
- "id" : 35,
+ "id" : 33,
"runtime_data" : [
{
"name" : "port_num",
@@ -2595,7 +2339,7 @@
},
{
"name" : "FabricIngress.next.mpls_routing_hashed",
- "id" : 36,
+ "id" : 34,
"runtime_data" : [
{
"name" : "port_num",
@@ -2620,7 +2364,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
{
"type" : "runtime_data",
@@ -2695,7 +2439,7 @@
},
{
"name" : "FabricIngress.next.set_mcast_group_id",
- "id" : 37,
+ "id" : 35,
"runtime_data" : [
{
"name" : "group_id",
@@ -2717,7 +2461,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 213,
+ "line" : 225,
"column" : 8,
"source_fragment" : "standard_metadata.mcast_grp = group_id"
}
@@ -2727,7 +2471,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast18"]
},
{
"type" : "expression",
@@ -2746,7 +2490,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 214,
+ "line" : 226,
"column" : 37,
"source_fragment" : "= true; ..."
}
@@ -2755,7 +2499,7 @@
},
{
"name" : "act",
- "id" : 38,
+ "id" : 36,
"runtime_data" : [],
"primitives" : [
{
@@ -2797,7 +2541,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out19"]
},
{
"type" : "expression",
@@ -2835,7 +2579,7 @@
},
{
"name" : "act_0",
- "id" : 39,
+ "id" : 37,
"runtime_data" : [],
"primitives" : [
{
@@ -2843,26 +2587,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
- },
- {
- "type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- }
- ],
- "source_info" : {
- "filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "field",
@@ -2871,7 +2596,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 106,
+ "line" : 110,
"column" : 36,
"source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
}
@@ -2881,7 +2606,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
},
{
"type" : "field",
@@ -2890,7 +2615,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 107,
+ "line" : 111,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.pri; ..."
}
@@ -2900,7 +2625,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
},
{
"type" : "field",
@@ -2909,7 +2634,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 108,
+ "line" : 112,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.cfi; ..."
}
@@ -2918,7 +2643,7 @@
},
{
"name" : "act_1",
- "id" : 40,
+ "id" : 38,
"runtime_data" : [],
"primitives" : [
{
@@ -2926,7 +2651,71 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "vlan_id"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 116,
+ "column" : 42,
+ "source_fragment" : "= hdr.inner_vlan_tag.vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_pri10"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "pri"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 117,
+ "column" : 43,
+ "source_fragment" : "= hdr.inner_vlan_tag.pri; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_cfi11"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "cfi"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 118,
+ "column" : 43,
+ "source_fragment" : "= hdr.inner_vlan_tag.cfi; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_2",
+ "id" : 39,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl13"]
},
{
"type" : "hexstr",
@@ -2935,7 +2724,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
}
@@ -2943,7 +2732,33 @@
]
},
{
- "name" : "act_2",
+ "name" : "act_3",
+ "id" : 40,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8847"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 108,
+ "column" : 31,
+ "source_fragment" : "0x8847; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_4",
"id" : 41,
"runtime_data" : [],
"primitives" : [
@@ -2952,76 +2767,24 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type16"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "hexstr",
- "value" : "0x01"
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
}
],
"source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 156,
- "column" : 37,
- "source_fragment" : "2w0x1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ]
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 47,
- "column" : 4,
- "source_fragment" : "bool drop = false;"
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "= hdr.inner_vlan_tag.eth_type; ..."
}
}
]
},
{
- "name" : "act_3",
+ "name" : "act_5",
"id" : 42,
"runtime_data" : [],
"primitives" : [
@@ -3030,28 +2793,24 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
}
- ]
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ }
}
]
},
{
- "name" : "act_4",
+ "name" : "act_6",
"id" : 43,
"runtime_data" : [],
"primitives" : [
@@ -3060,247 +2819,25 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_tmp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_5",
- "id" : 44,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 157,
- "column" : 12,
- "source_fragment" : "return"
- }
- }
- ]
- },
- {
- "name" : "act_6",
- "id" : 45,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.upstream.c_dropped"
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
+ "value" : ["ethernet", "eth_type"]
}
],
"source_info" : {
- "filename" : "include/bng.p4",
- "line" : 163,
- "column" : 16,
- "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "= hdr.ethernet.eth_type; ..."
}
}
]
},
{
"name" : "act_7",
- "id" : 46,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_8",
- "id" : 47,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_9",
- "id" : 48,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "execute_meter",
- "parameters" : [
- {
- "type" : "meter_array",
- "value" : "FabricIngress.bng_ingress.downstream.m_prio"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result18"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 293,
- "column" : 20,
- "source_fragment" : "m_prio.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- }
- }
- ]
- },
- {
- "name" : "act_10",
- "id" : 49,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "execute_meter",
- "parameters" : [
- {
- "type" : "meter_array",
- "value" : "FabricIngress.bng_ingress.downstream.m_besteff"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result18"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 296,
- "column" : 20,
- "source_fragment" : "m_besteff.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- }
- }
- ]
- },
- {
- "name" : "act_11",
- "id" : 50,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 190,
- "column" : 4,
- "source_fragment" : "bool prio = false;"
- }
- }
- ]
- },
- {
- "name" : "act_12",
- "id" : 51,
+ "id" : 44,
"runtime_data" : [],
"primitives" : [
{
@@ -3357,8 +2894,8 @@
]
},
{
- "name" : "act_13",
- "id" : 52,
+ "name" : "act_8",
+ "id" : 45,
"runtime_data" : [],
"primitives" : [
{
@@ -3415,63 +2952,27 @@
]
},
{
- "name" : "nop",
- "id" : 53,
+ "name" : "act_9",
+ "id" : 46,
"runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
- "id" : 54,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "FabricEgress.bng_egress.downstream.encap_v4",
- "id" : 55,
- "runtime_data" : [
- {
- "name" : "c_tag",
- "bitwidth" : 12
- },
- {
- "name" : "pppoe_session_id",
- "bitwidth" : 16
- }
- ],
"primitives" : [
{
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["vlan_tag", "eth_type"]
+ "value" : ["scalars", "bng_ingress_s_tag"]
},
{
- "type" : "hexstr",
- "value" : "0x8100"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 107,
- "column" : 31,
- "source_fragment" : "0x8100; ..."
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "inner_vlan_tag"
+ "type" : "field",
+ "value" : ["vlan_tag", "vlan_id"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 331,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.setValid()"
+ "line" : 339,
+ "column" : 16,
+ "source_fragment" : "s_tag = hdr.vlan_tag.vlan_id"
}
},
{
@@ -3479,18 +2980,44 @@
"parameters" : [
{
"type" : "field",
- "value" : ["inner_vlan_tag", "vlan_id"]
+ "value" : ["scalars", "bng_ingress_c_tag"]
},
{
- "type" : "runtime_data",
- "value" : 0
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "vlan_id"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 332,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.vlan_id = c_tag; ..."
+ "line" : 340,
+ "column" : 16,
+ "source_fragment" : "c_tag = hdr.inner_vlan_tag.vlan_id"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_10",
+ "id" : 47,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_s_tag"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 344,
+ "column" : 16,
+ "source_fragment" : "s_tag = fmeta.vlan_id; ..."
}
},
{
@@ -3498,6 +3025,329 @@
"parameters" : [
{
"type" : "field",
+ "value" : ["scalars", "bng_ingress_c_tag"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 345,
+ "column" : 16,
+ "source_fragment" : "c_tag = fmeta.inner_vlan_id; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_11",
+ "id" : 48,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_12",
+ "id" : 49,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_13",
+ "id" : 50,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_type23"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x01"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../header.p4",
+ "line" : 156,
+ "column" : 37,
+ "source_fragment" : "2w0x1; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_14",
+ "id" : 51,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 124,
+ "column" : 12,
+ "source_fragment" : "return"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_15",
+ "id" : 52,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.upstream.c_dropped"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 129,
+ "column" : 20,
+ "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_16",
+ "id" : 53,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_downstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_17",
+ "id" : 54,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_downstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_18",
+ "id" : 55,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "execute_meter",
+ "parameters" : [
+ {
+ "type" : "meter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.m_prio"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result26"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 236,
+ "column" : 24,
+ "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_19",
+ "id" : 56,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "execute_meter",
+ "parameters" : [
+ {
+ "type" : "meter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.m_besteff"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result26"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 239,
+ "column" : 24,
+ "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "nop",
+ "id" : 57,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricEgress.bng_egress.downstream.encap_v4",
+ "id" : 58,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
"value" : ["inner_vlan_tag", "eth_type"]
},
{
@@ -3522,7 +3372,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 334,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.pppoe.setValid()"
}
@@ -3541,7 +3391,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 335,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.pppoe.version = 4w1"
}
@@ -3560,7 +3410,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 336,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.pppoe.type_id = 4w1"
}
@@ -3579,7 +3429,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 337,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.pppoe.code = 8w0"
}
@@ -3592,15 +3442,15 @@
"value" : ["pppoe", "session_id"]
},
{
- "type" : "runtime_data",
- "value" : 1
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_pppoe_session_id25"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 338,
+ "line" : 275,
"column" : 8,
- "source_fragment" : "hdr.pppoe.session_id = pppoe_session_id; ..."
+ "source_fragment" : "hdr.pppoe.session_id = fmeta.bng.pppoe_session_id; ..."
}
},
{
@@ -3612,12 +3462,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id17"]
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id24"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 339,
+ "line" : 276,
"column" : 8,
"source_fragment" : "c_line_tx.count(fmeta.bng.line_id)"
}
@@ -3659,7 +3509,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 344,
+ "line" : 281,
"column" : 8,
"source_fragment" : "hdr.pppoe.length = hdr.ipv4.total_len + 16w2"
}
@@ -3687,7 +3537,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 56,
+ "id" : 59,
"runtime_data" : [],
"primitives" : [
{
@@ -3700,7 +3550,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 252,
+ "line" : 264,
"column" : 8,
"source_fragment" : "hdr.mpls.setInvalid()"
}
@@ -3710,17 +3560,17 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 254,
- "column" : 33,
+ "line" : 266,
+ "column" : 38,
"source_fragment" : "= fabric_metadata.ip_eth_type; ..."
}
}
@@ -3728,7 +3578,7 @@
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 57,
+ "id" : 60,
"runtime_data" : [],
"primitives" : [
{
@@ -3741,7 +3591,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 259,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.mpls.setValid()"
}
@@ -3755,12 +3605,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 260,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
}
@@ -3779,7 +3629,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 261,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.mpls.tc = 3w0"
}
@@ -3798,7 +3648,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 262,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.mpls.bos = 1w1"
}
@@ -3812,12 +3662,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl13"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 263,
+ "line" : 275,
"column" : 8,
"source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
}
@@ -3827,7 +3677,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "hexstr",
@@ -3845,7 +3695,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 58,
+ "id" : 61,
"runtime_data" : [],
"primitives" : [
{
@@ -3858,7 +3708,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 271,
+ "line" : 283,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setValid()"
}
@@ -3872,12 +3722,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 272,
+ "line" : 284,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
}
@@ -3891,12 +3741,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 273,
+ "line" : 285,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
}
@@ -3910,14 +3760,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 274,
+ "line" : 286,
"column" : 8,
- "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -3929,12 +3779,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 275,
+ "line" : 287,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
}
@@ -3961,8 +3811,242 @@
]
},
{
+ "name" : "FabricEgress.egress_next.push_vlan",
+ "id" : 62,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "vlan_tag"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 283,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "cfi"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 284,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "pri"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 285,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 286,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "vlan_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 287,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["ethernet", "eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.egress_next.push_inner_vlan",
+ "id" : 63,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "inner_vlan_tag"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 296,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "cfi"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_cfi11"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 297,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.cfi = fabric_metadata.inner_vlan_cfi; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "pri"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_pri10"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 298,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.pri = fabric_metadata.inner_vlan_pri; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "vlan_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 299,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.vlan_id = fabric_metadata.inner_vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 300,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
+ }
+ ]
+ },
+ {
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 59,
+ "id" : 64,
"runtime_data" : [],
"primitives" : [
{
@@ -3974,14 +4058,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 286,
+ "line" : 312,
"column" : 8,
- "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -3994,7 +4078,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 287,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -4002,8 +4086,8 @@
]
},
{
- "name" : "act_14",
- "id" : 60,
+ "name" : "act_20",
+ "id" : 65,
"runtime_data" : [],
"primitives" : [
{
@@ -4019,8 +4103,8 @@
]
},
{
- "name" : "act_15",
- "id" : 61,
+ "name" : "act_21",
+ "id" : 66,
"runtime_data" : [],
"primitives" : [
{
@@ -4070,8 +4154,8 @@
]
},
{
- "name" : "act_16",
- "id" : 62,
+ "name" : "act_22",
+ "id" : 67,
"runtime_data" : [],
"primitives" : [
{
@@ -4084,7 +4168,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -4092,8 +4176,8 @@
]
},
{
- "name" : "act_17",
- "id" : 63,
+ "name" : "act_23",
+ "id" : 68,
"runtime_data" : [],
"primitives" : [
{
@@ -4122,8 +4206,8 @@
]
},
{
- "name" : "act_18",
- "id" : 64,
+ "name" : "act_24",
+ "id" : 69,
"runtime_data" : [],
"primitives" : [
{
@@ -4152,8 +4236,30 @@
]
},
{
- "name" : "act_19",
- "id" : 65,
+ "name" : "act_25",
+ "id" : 70,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "remove_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "inner_vlan_tag"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 350,
+ "column" : 12,
+ "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_26",
+ "id" : 71,
"runtime_data" : [],
"primitives" : [
{
@@ -4166,7 +4272,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -4174,8 +4280,8 @@
]
},
{
- "name" : "act_20",
- "id" : 66,
+ "name" : "act_27",
+ "id" : 72,
"runtime_data" : [],
"primitives" : [
{
@@ -4215,7 +4321,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -4223,8 +4329,8 @@
]
},
{
- "name" : "act_21",
- "id" : 67,
+ "name" : "act_28",
+ "id" : 73,
"runtime_data" : [],
"primitives" : [
{
@@ -4237,7 +4343,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -4245,8 +4351,8 @@
]
},
{
- "name" : "act_22",
- "id" : 68,
+ "name" : "act_29",
+ "id" : 74,
"runtime_data" : [],
"primitives" : [
{
@@ -4286,7 +4392,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -4322,14 +4428,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [38],
+ "action_ids" : [36],
"actions" : ["act"],
"base_default_next" : "node_4",
"next_tables" : {
"act" : "node_4"
},
"default_entry" : {
- "action_id" : 38,
+ "action_id" : 36,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4340,9 +4446,9 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ "line" : 110,
+ "column" : 36,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
},
"key" : [],
"match_type" : "exact",
@@ -4351,14 +4457,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [39],
+ "action_ids" : [37],
"actions" : ["act_0"],
"base_default_next" : "node_6",
"next_tables" : {
"act_0" : "node_6"
},
"default_entry" : {
- "action_id" : 39,
+ "action_id" : 37,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4369,7 +4475,36 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 116,
+ "column" : 42,
+ "source_fragment" : "= hdr.inner_vlan_tag.vlan_id; ..."
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [38],
+ "actions" : ["act_1"],
+ "base_default_next" : "node_8",
+ "next_tables" : {
+ "act_1" : "node_8"
+ },
+ "default_entry" : {
+ "action_id" : 38,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_2",
+ "id" : 3,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 126,
"column" : 37,
"source_fragment" : "="
},
@@ -4380,11 +4515,40 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
+ "action_ids" : [39],
+ "actions" : ["act_2"],
+ "base_default_next" : "node_10",
+ "next_tables" : {
+ "act_2" : "node_10"
+ },
+ "default_entry" : {
+ "action_id" : 39,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_3",
+ "id" : 4,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 131,
+ "column" : 42,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
"action_ids" : [40],
- "actions" : ["act_1"],
+ "actions" : ["act_3"],
"base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
"next_tables" : {
- "act_1" : "FabricIngress.filtering.ingress_port_vlan"
+ "act_3" : "FabricIngress.filtering.ingress_port_vlan"
},
"default_entry" : {
"action_id" : 40,
@@ -4394,11 +4558,98 @@
}
},
{
- "name" : "FabricIngress.filtering.ingress_port_vlan",
- "id" : 3,
+ "name" : "tbl_act_4",
+ "id" : 5,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 51,
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [41],
+ "actions" : ["act_4"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_4" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 41,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_5",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [42],
+ "actions" : ["act_5"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_5" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 42,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_6",
+ "id" : 7,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [43],
+ "actions" : ["act_6"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_6" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 43,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "id" : 8,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 53,
"column" : 10,
"source_fragment" : "ingress_port_vlan"
},
@@ -4420,15 +4671,21 @@
"name" : "vlan_id",
"target" : ["vlan_tag", "vlan_id"],
"mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "inner_vlan_id",
+ "target" : ["inner_vlan_tag", "vlan_id"],
+ "mask" : null
}
],
"match_type" : "ternary",
"type" : "simple",
- "max_size" : 1024,
+ "max_size" : 8192,
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [18, 19, 20],
+ "action_ids" : [17, 18, 19],
"actions" : ["FabricIngress.filtering.deny", "FabricIngress.filtering.permit", "FabricIngress.filtering.permit_with_internal_vlan"],
"base_default_next" : "FabricIngress.filtering.fwd_classifier",
"next_tables" : {
@@ -4437,7 +4694,7 @@
"FabricIngress.filtering.permit_with_internal_vlan" : "FabricIngress.filtering.fwd_classifier"
},
"default_entry" : {
- "action_id" : 18,
+ "action_id" : 17,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4445,10 +4702,10 @@
},
{
"name" : "FabricIngress.filtering.fwd_classifier",
- "id" : 4,
+ "id" : 9,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 87,
+ "line" : 90,
"column" : 10,
"source_fragment" : "fwd_classifier"
},
@@ -4467,8 +4724,20 @@
},
{
"match_type" : "exact",
- "name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "name" : "is_ipv4",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv41"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_ipv6",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv62"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_mpls",
+ "target" : ["scalars", "fabric_metadata_t._is_mpls3"],
"mask" : null
}
],
@@ -4478,515 +4747,22 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [21],
+ "action_ids" : [20],
"actions" : ["FabricIngress.filtering.set_forwarding_type"],
- "base_default_next" : "node_10",
+ "base_default_next" : "node_19",
"next_tables" : {
- "FabricIngress.filtering.set_forwarding_type" : "node_10"
+ "FabricIngress.filtering.set_forwarding_type" : "node_19"
},
"default_entry" : {
- "action_id" : 21,
+ "action_id" : 20,
"action_const" : true,
"action_data" : ["0x0"],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_2",
- "id" : 5,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 47,
- "column" : 4,
- "source_fragment" : "bool drop = false; ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [41],
- "actions" : ["act_2"],
- "base_default_next" : "FabricIngress.bng_ingress.upstream.t_line_map",
- "next_tables" : {
- "act_2" : "FabricIngress.bng_ingress.upstream.t_line_map"
- },
- "default_entry" : {
- "action_id" : 41,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.t_line_map",
- "id" : 6,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 56,
- "column" : 10,
- "source_fragment" : "t_line_map"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "s_tag",
- "target" : ["vlan_tag", "vlan_id"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "c_tag",
- "target" : ["inner_vlan_tag", "vlan_id"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 8192,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [0, 10],
- "actions" : ["nop", "FabricIngress.bng_ingress.upstream.set_line"],
- "base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
- "next_tables" : {
- "nop" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
- "FabricIngress.bng_ingress.upstream.set_line" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp"
- },
- "default_entry" : {
- "action_id" : 0,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
- "id" : 7,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 79,
- "column" : 10,
- "source_fragment" : "t_pppoe_cp"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "pppoe_code",
- "target" : ["pppoe", "code"],
- "mask" : null
- },
- {
- "match_type" : "ternary",
- "name" : "pppoe_protocol",
- "target" : ["pppoe", "protocol"],
- "mask" : null
- }
- ],
- "match_type" : "ternary",
- "type" : "simple",
- "max_size" : 16,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [11, 1],
- "actions" : ["FabricIngress.bng_ingress.upstream.punt_to_cpu", "nop"],
- "base_default_next" : null,
- "next_tables" : {
- "__HIT__" : "tbl_act_3",
- "__MISS__" : "tbl_act_4"
- },
- "default_entry" : {
- "action_id" : 1,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_3",
- "id" : 8,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [42],
- "actions" : ["act_3"],
- "base_default_next" : "node_16",
- "next_tables" : {
- "act_3" : "node_16"
- },
- "default_entry" : {
- "action_id" : 42,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_4",
- "id" : 9,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [43],
- "actions" : ["act_4"],
- "base_default_next" : "node_16",
- "next_tables" : {
- "act_4" : "node_16"
- },
- "default_entry" : {
- "action_id" : 43,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_5",
- "id" : 10,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 157,
- "column" : 12,
- "source_fragment" : "return"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [44],
- "actions" : ["act_5"],
- "base_default_next" : "node_18",
- "next_tables" : {
- "act_5" : "node_18"
- },
- "default_entry" : {
- "action_id" : 44,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
- "id" : 11,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 118,
- "column" : 10,
- "source_fragment" : "t_pppoe_term_v4"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id17"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "ipv4_src",
- "target" : ["ipv4", "src_addr"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "pppoe_session_id",
- "target" : ["pppoe", "session_id"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 32768,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [13, 12],
- "actions" : ["FabricIngress.bng_ingress.upstream.term_enabled_v4", "FabricIngress.bng_ingress.upstream.term_disabled"],
- "base_default_next" : "node_21",
- "next_tables" : {
- "FabricIngress.bng_ingress.upstream.term_enabled_v4" : "node_21",
- "FabricIngress.bng_ingress.upstream.term_disabled" : "node_21"
- },
- "default_entry" : {
- "action_id" : 12,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_6",
- "id" : 12,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 163,
- "column" : 16,
- "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [45],
- "actions" : ["act_6"],
- "base_default_next" : "node_33",
- "next_tables" : {
- "act_6" : "node_33"
- },
- "default_entry" : {
- "action_id" : 45,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_7",
- "id" : 13,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 190,
- "column" : 4,
- "source_fragment" : "bool prio = false;"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [50],
- "actions" : ["act_11"],
- "base_default_next" : "node_24",
- "next_tables" : {
- "act_11" : "node_24"
- },
- "default_entry" : {
- "action_id" : 50,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.t_line_map_v4",
- "id" : 14,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 212,
- "column" : 10,
- "source_fragment" : "t_line_map_v4"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "ipv4_dst",
- "target" : ["ipv4", "dst_addr"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 32768,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [2, 14, 15],
- "actions" : ["nop", "FabricIngress.bng_ingress.downstream.set_line_next", "FabricIngress.bng_ingress.downstream.set_line_drop"],
- "base_default_next" : null,
- "next_tables" : {
- "__HIT__" : "tbl_act_8",
- "__MISS__" : "tbl_act_9"
- },
- "default_entry" : {
- "action_id" : 2,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_8",
- "id" : 15,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [46],
- "actions" : ["act_7"],
- "base_default_next" : "node_28",
- "next_tables" : {
- "act_7" : "node_28"
- },
- "default_entry" : {
- "action_id" : 46,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_9",
- "id" : 16,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [47],
- "actions" : ["act_8"],
- "base_default_next" : "node_28",
- "next_tables" : {
- "act_8" : "node_28"
- },
- "default_entry" : {
- "action_id" : 47,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
- "id" : 17,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 252,
- "column" : 10,
- "source_fragment" : "t_qos_v4"
- },
- "key" : [
- {
- "match_type" : "ternary",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id17"],
- "mask" : null
- },
- {
- "match_type" : "lpm",
- "name" : "ipv4_src",
- "target" : ["ipv4", "src_addr"],
- "mask" : null
- },
- {
- "match_type" : "ternary",
- "name" : "ipv4_dscp",
- "target" : ["ipv4", "dscp"],
- "mask" : null
- },
- {
- "match_type" : "ternary",
- "name" : "ipv4_ecn",
- "target" : ["ipv4", "ecn"],
- "mask" : null
- }
- ],
- "match_type" : "ternary",
- "type" : "simple",
- "max_size" : 256,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [16, 17],
- "actions" : ["FabricIngress.bng_ingress.downstream.qos_prio", "FabricIngress.bng_ingress.downstream.qos_besteff"],
- "base_default_next" : "node_30",
- "next_tables" : {
- "FabricIngress.bng_ingress.downstream.qos_prio" : "node_30",
- "FabricIngress.bng_ingress.downstream.qos_besteff" : "node_30"
- },
- "default_entry" : {
- "action_id" : 17,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_10",
- "id" : 18,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 293,
- "column" : 20,
- "source_fragment" : "m_prio.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [48],
- "actions" : ["act_9"],
- "base_default_next" : "node_33",
- "next_tables" : {
- "act_9" : "node_33"
- },
- "default_entry" : {
- "action_id" : 48,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_11",
- "id" : 19,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 296,
- "column" : 20,
- "source_fragment" : "m_besteff.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [49],
- "actions" : ["act_10"],
- "base_default_next" : "node_33",
- "next_tables" : {
- "act_10" : "node_33"
- },
- "default_entry" : {
- "action_id" : 49,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
"name" : "FabricIngress.forwarding.bridging",
- "id" : 20,
+ "id" : 10,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 46,
@@ -4997,7 +4773,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -5013,7 +4789,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [22, 3],
+ "action_ids" : [21, 3],
"actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
"base_default_next" : "FabricIngress.acl.acl",
"next_tables" : {
@@ -5029,7 +4805,7 @@
},
{
"name" : "FabricIngress.forwarding.mpls",
- "id" : 21,
+ "id" : 11,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 71,
@@ -5040,7 +4816,7 @@
{
"match_type" : "exact",
"name" : "mpls_label",
- "target" : ["scalars", "fabric_metadata_t._mpls_label5"],
+ "target" : ["scalars", "fabric_metadata_t._mpls_label12"],
"mask" : null
}
],
@@ -5050,7 +4826,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [23, 4],
+ "action_ids" : [22, 4],
"actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
"base_default_next" : "FabricIngress.acl.acl",
"next_tables" : {
@@ -5066,7 +4842,7 @@
},
{
"name" : "FabricIngress.forwarding.routing_v4",
- "id" : 22,
+ "id" : 12,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 101,
@@ -5087,7 +4863,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [24, 25, 5],
+ "action_ids" : [23, 24, 5],
"actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
"base_default_next" : "FabricIngress.acl.acl",
"next_tables" : {
@@ -5104,7 +4880,7 @@
},
{
"name" : "FabricIngress.acl.acl",
- "id" : 23,
+ "id" : 13,
"source_info" : {
"filename" : "include/control/acl.p4",
"line" : 60,
@@ -5121,19 +4897,19 @@
{
"match_type" : "ternary",
"name" : "ip_proto",
- "target" : ["scalars", "fabric_metadata_t._ip_proto13"],
+ "target" : ["scalars", "fabric_metadata_t._ip_proto20"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport21"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport22"],
"mask" : null
},
{
@@ -5157,7 +4933,7 @@
{
"match_type" : "ternary",
"name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "target" : ["scalars", "fabric_metadata_t._last_eth_type0"],
"mask" : null
},
{
@@ -5191,62 +4967,18 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [26, 27, 28, 29, 30],
+ "action_ids" : [25, 26, 27, 28, 29],
"actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
- "base_default_next" : "node_41",
+ "base_default_next" : "node_27",
"next_tables" : {
- "FabricIngress.acl.set_next_id_acl" : "node_41",
- "FabricIngress.acl.punt_to_cpu" : "node_41",
- "FabricIngress.acl.set_clone_session_id" : "node_41",
- "FabricIngress.acl.drop" : "node_41",
- "FabricIngress.acl.nop_acl" : "node_41"
+ "FabricIngress.acl.set_next_id_acl" : "node_27",
+ "FabricIngress.acl.punt_to_cpu" : "node_27",
+ "FabricIngress.acl.set_clone_session_id" : "node_27",
+ "FabricIngress.acl.drop" : "node_27",
+ "FabricIngress.acl.nop_acl" : "node_27"
},
"default_entry" : {
- "action_id" : 30,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.next.xconnect",
- "id" : 24,
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 104,
- "column" : 10,
- "source_fragment" : "xconnect"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "ig_port",
- "target" : ["standard_metadata", "ingress_port"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : true,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [32, 33, 7],
- "actions" : ["FabricIngress.next.output_xconnect", "FabricIngress.next.set_next_id_xconnect", "nop"],
- "base_default_next" : "FabricIngress.next.hashed",
- "next_tables" : {
- "FabricIngress.next.output_xconnect" : "FabricIngress.next.hashed",
- "FabricIngress.next.set_next_id_xconnect" : "FabricIngress.next.hashed",
- "nop" : "FabricIngress.next.hashed"
- },
- "default_entry" : {
- "action_id" : 7,
+ "action_id" : 29,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -5254,10 +4986,10 @@
},
{
"name" : "FabricIngress.next.hashed",
- "id" : 25,
+ "id" : 14,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 184,
+ "line" : 196,
"column" : 10,
"source_fragment" : "hashed"
},
@@ -5265,7 +4997,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -5276,7 +5008,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [34, 35, 36, 8],
+ "action_ids" : [32, 33, 34, 7],
"actions" : ["FabricIngress.next.output_hashed", "FabricIngress.next.routing_hashed", "FabricIngress.next.mpls_routing_hashed", "nop"],
"base_default_next" : "FabricIngress.next.multicast",
"next_tables" : {
@@ -5288,10 +5020,10 @@
},
{
"name" : "FabricIngress.next.multicast",
- "id" : 26,
+ "id" : 15,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 218,
+ "line" : 230,
"column" : 10,
"source_fragment" : "multicast"
},
@@ -5299,7 +5031,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -5309,7 +5041,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [37, 9],
+ "action_ids" : [35, 8],
"actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
"base_default_next" : "FabricIngress.next.next_vlan",
"next_tables" : {
@@ -5317,7 +5049,7 @@
"nop" : "FabricIngress.next.next_vlan"
},
"default_entry" : {
- "action_id" : 9,
+ "action_id" : 8,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -5325,10 +5057,10 @@
},
{
"name" : "FabricIngress.next.next_vlan",
- "id" : 27,
+ "id" : 16,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 74,
+ "line" : 82,
"column" : 10,
"source_fragment" : "next_vlan"
},
@@ -5336,7 +5068,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -5346,12 +5078,13 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [31, 6],
- "actions" : ["FabricIngress.next.set_vlan", "nop"],
- "base_default_next" : "node_46",
+ "action_ids" : [30, 31, 6],
+ "actions" : ["FabricIngress.next.set_vlan", "FabricIngress.next.set_double_vlan", "nop"],
+ "base_default_next" : "node_31",
"next_tables" : {
- "FabricIngress.next.set_vlan" : "node_46",
- "nop" : "node_46"
+ "FabricIngress.next.set_vlan" : "node_31",
+ "FabricIngress.next.set_double_vlan" : "node_31",
+ "nop" : "node_31"
},
"default_entry" : {
"action_id" : 6,
@@ -5361,8 +5094,8 @@
}
},
{
- "name" : "tbl_act_12",
- "id" : 28,
+ "name" : "tbl_act_7",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 31,
@@ -5376,22 +5109,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [51],
- "actions" : ["act_12"],
- "base_default_next" : "node_48",
+ "action_ids" : [44],
+ "actions" : ["act_7"],
+ "base_default_next" : "node_33",
"next_tables" : {
- "act_12" : "node_48"
+ "act_7" : "node_33"
},
"default_entry" : {
- "action_id" : 51,
+ "action_id" : 44,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_13",
- "id" : 29,
+ "name" : "tbl_act_8",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 34,
@@ -5405,11 +5138,337 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [52],
+ "action_ids" : [45],
+ "actions" : ["act_8"],
+ "base_default_next" : "node_35",
+ "next_tables" : {
+ "act_8" : "node_35"
+ },
+ "default_entry" : {
+ "action_id" : 45,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_9",
+ "id" : 19,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 339,
+ "column" : 22,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [46],
+ "actions" : ["act_9"],
+ "base_default_next" : "FabricIngress.bng_ingress.t_line_map",
+ "next_tables" : {
+ "act_9" : "FabricIngress.bng_ingress.t_line_map"
+ },
+ "default_entry" : {
+ "action_id" : 46,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_10",
+ "id" : 20,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 344,
+ "column" : 22,
+ "source_fragment" : "= fmeta.vlan_id; ..."
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [47],
+ "actions" : ["act_10"],
+ "base_default_next" : "FabricIngress.bng_ingress.t_line_map",
+ "next_tables" : {
+ "act_10" : "FabricIngress.bng_ingress.t_line_map"
+ },
+ "default_entry" : {
+ "action_id" : 47,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.t_line_map",
+ "id" : 21,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 324,
+ "column" : 14,
+ "source_fragment" : "t_line_map"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "s_tag",
+ "target" : ["scalars", "bng_ingress_s_tag"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "c_tag",
+ "target" : ["scalars", "bng_ingress_c_tag"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 8192,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [2, 16],
+ "actions" : ["nop", "FabricIngress.bng_ingress.set_line"],
+ "base_default_next" : "node_39",
+ "next_tables" : {
+ "nop" : "node_39",
+ "FabricIngress.bng_ingress.set_line" : "node_39"
+ },
+ "default_entry" : {
+ "action_id" : 2,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_11",
+ "id" : 22,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 353,
+ "column" : 31,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [50],
"actions" : ["act_13"],
+ "base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
+ "next_tables" : {
+ "act_13" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp"
+ },
+ "default_entry" : {
+ "action_id" : 50,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
+ "id" : 23,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 48,
+ "column" : 10,
+ "source_fragment" : "t_pppoe_cp"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "pppoe_code",
+ "target" : ["pppoe", "code"],
+ "mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "pppoe_protocol",
+ "target" : ["pppoe", "protocol"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "ternary",
+ "type" : "simple",
+ "max_size" : 16,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [9, 0],
+ "actions" : ["FabricIngress.bng_ingress.upstream.punt_to_cpu", "nop"],
"base_default_next" : null,
"next_tables" : {
- "act_13" : null
+ "__HIT__" : "tbl_act_12",
+ "__MISS__" : "tbl_act_13"
+ },
+ "default_entry" : {
+ "action_id" : 0,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_12",
+ "id" : 24,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [48],
+ "actions" : ["act_11"],
+ "base_default_next" : "node_44",
+ "next_tables" : {
+ "act_11" : "node_44"
+ },
+ "default_entry" : {
+ "action_id" : 48,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_13",
+ "id" : 25,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [49],
+ "actions" : ["act_12"],
+ "base_default_next" : "node_44",
+ "next_tables" : {
+ "act_12" : "node_44"
+ },
+ "default_entry" : {
+ "action_id" : 49,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_14",
+ "id" : 26,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 124,
+ "column" : 12,
+ "source_fragment" : "return"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [51],
+ "actions" : ["act_14"],
+ "base_default_next" : "node_46",
+ "next_tables" : {
+ "act_14" : "node_46"
+ },
+ "default_entry" : {
+ "action_id" : 51,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
+ "id" : 27,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 85,
+ "column" : 10,
+ "source_fragment" : "t_pppoe_term_v4"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id24"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "ipv4_src",
+ "target" : ["ipv4", "src_addr"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "pppoe_session_id",
+ "target" : ["pppoe", "session_id"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 32768,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [11, 10],
+ "actions" : ["FabricIngress.bng_ingress.upstream.term_enabled_v4", "FabricIngress.bng_ingress.upstream.term_disabled"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "FabricIngress.bng_ingress.upstream.term_disabled" : "tbl_act_15",
+ "FabricIngress.bng_ingress.upstream.term_enabled_v4" : null
+ },
+ "default_entry" : {
+ "action_id" : 10,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_15",
+ "id" : 28,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 129,
+ "column" : 20,
+ "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [52],
+ "actions" : ["act_15"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_15" : null
},
"default_entry" : {
"action_id" : 52,
@@ -5417,6 +5476,202 @@
"action_data" : [],
"action_entry_const" : true
}
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.t_line_session_map",
+ "id" : 29,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 167,
+ "column" : 10,
+ "source_fragment" : "t_line_session_map"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id24"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 8192,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [1, 12, 13],
+ "actions" : ["nop", "FabricIngress.bng_ingress.downstream.set_session", "FabricIngress.bng_ingress.downstream.drop"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "__HIT__" : "tbl_act_16",
+ "__MISS__" : "tbl_act_17"
+ },
+ "default_entry" : {
+ "action_id" : 1,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_16",
+ "id" : 30,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [53],
+ "actions" : ["act_16"],
+ "base_default_next" : "node_53",
+ "next_tables" : {
+ "act_16" : "node_53"
+ },
+ "default_entry" : {
+ "action_id" : 53,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_17",
+ "id" : 31,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [54],
+ "actions" : ["act_17"],
+ "base_default_next" : "node_53",
+ "next_tables" : {
+ "act_17" : "node_53"
+ },
+ "default_entry" : {
+ "action_id" : 54,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
+ "id" : 32,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 192,
+ "column" : 10,
+ "source_fragment" : "t_qos_v4"
+ },
+ "key" : [
+ {
+ "match_type" : "ternary",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id24"],
+ "mask" : null
+ },
+ {
+ "match_type" : "lpm",
+ "name" : "ipv4_src",
+ "target" : ["ipv4", "src_addr"],
+ "mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "ipv4_dscp",
+ "target" : ["ipv4", "dscp"],
+ "mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "ipv4_ecn",
+ "target" : ["ipv4", "ecn"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "ternary",
+ "type" : "simple",
+ "max_size" : 256,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [14, 15],
+ "actions" : ["FabricIngress.bng_ingress.downstream.qos_prio", "FabricIngress.bng_ingress.downstream.qos_besteff"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "FabricIngress.bng_ingress.downstream.qos_prio" : "tbl_act_18",
+ "FabricIngress.bng_ingress.downstream.qos_besteff" : "tbl_act_19"
+ },
+ "default_entry" : {
+ "action_id" : 15,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_18",
+ "id" : 33,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 236,
+ "column" : 24,
+ "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [55],
+ "actions" : ["act_18"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_18" : null
+ },
+ "default_entry" : {
+ "action_id" : 55,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_19",
+ "id" : 34,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 239,
+ "column" : 24,
+ "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [56],
+ "actions" : ["act_19"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_19" : null
+ },
+ "default_entry" : {
+ "action_id" : 56,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
}
],
"action_profiles" : [
@@ -5425,7 +5680,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 165,
+ "line" : 177,
"column" : 57,
"source_fragment" : "hashed_selector"
},
@@ -5443,15 +5698,15 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto20"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport21"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
}
]
}
@@ -5486,7 +5741,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 104,
+ "line" : 109,
"column" : 12,
"source_fragment" : "hdr.vlan_tag.isValid()"
},
@@ -5509,7 +5764,30 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 115,
+ "column" : 12,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_1",
+ "false_next" : "node_8"
+ },
+ {
+ "name" : "node_8",
+ "id" : 3,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 121,
"column" : 12,
"source_fragment" : "!hdr.mpls.isValid()"
},
@@ -5531,35 +5809,18 @@
}
}
},
- "true_next" : "tbl_act_1",
- "false_next" : "FabricIngress.filtering.ingress_port_vlan"
+ "true_next" : "tbl_act_2",
+ "false_next" : "node_10"
},
{
"name" : "node_10",
- "id" : 3,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 385,
- "column" : 12,
- "source_fragment" : "hdr.pppoe.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["pppoe", "$valid$"]
- }
- }
- },
- "true_next" : "tbl_act_2",
- "false_next" : "tbl_act_7"
- },
- {
- "name" : "node_16",
"id" : 4,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 130,
+ "column" : 12,
+ "source_fragment" : "hdr.mpls.isValid()"
+ },
"expression" : {
"type" : "expression",
"value" : {
@@ -5567,172 +5828,65 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ "value" : ["mpls", "$valid$"]
}
}
},
- "true_next" : "tbl_act_5",
- "false_next" : "node_18"
+ "true_next" : "tbl_act_3",
+ "false_next" : "node_12"
},
{
- "name" : "node_18",
+ "name" : "node_12",
"id" : 5,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 133,
+ "column" : 16,
+ "source_fragment" : "hdr.vlan_tag.isValid()"
+ },
"expression" : {
"type" : "expression",
"value" : {
- "op" : "not",
+ "op" : "d2b",
"left" : null,
"right" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
- }
- }
+ "type" : "field",
+ "value" : ["vlan_tag", "$valid$"]
}
}
},
- "true_next" : "node_19",
- "false_next" : "node_33"
+ "true_next" : "node_13",
+ "false_next" : "tbl_act_6"
+ },
+ {
+ "name" : "node_13",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 135,
+ "column" : 19,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_4",
+ "false_next" : "tbl_act_5"
},
{
"name" : "node_19",
- "id" : 6,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 160,
- "column" : 12,
- "source_fragment" : "hdr.ipv4.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["ipv4", "$valid$"]
- }
- }
- },
- "true_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
- "false_next" : "node_33"
- },
- {
- "name" : "node_21",
"id" : 7,
"source_info" : {
- "filename" : "include/bng.p4",
- "line" : 162,
- "column" : 15,
- "source_fragment" : "drop == true"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "==",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- }
- }
- },
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- },
- "true_next" : "tbl_act_6",
- "false_next" : "node_33"
- },
- {
- "name" : "node_24",
- "id" : 8,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 285,
- "column" : 12,
- "source_fragment" : "hdr.ipv4.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["ipv4", "$valid$"]
- }
- }
- },
- "true_next" : "FabricIngress.bng_ingress.downstream.t_line_map_v4",
- "false_next" : "node_33"
- },
- {
- "name" : "node_28",
- "id" : 9,
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp"]
- }
- }
- },
- "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
- "false_next" : "node_33"
- },
- {
- "name" : "node_30",
- "id" : 10,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 292,
- "column" : 20,
- "source_fragment" : "prio==true"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "==",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
- }
- }
- },
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- },
- "true_next" : "tbl_act_10",
- "false_next" : "tbl_act_11"
- },
- {
- "name" : "node_33",
- "id" : 11,
- "source_info" : {
"filename" : "fabric.p4",
- "line" : 74,
+ "line" : 71,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_forwarding == false"
},
@@ -5747,7 +5901,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding14"]
}
}
},
@@ -5757,12 +5911,12 @@
}
}
},
- "true_next" : "node_34",
+ "true_next" : "node_20",
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_34",
- "id" : 12,
+ "name" : "node_20",
+ "id" : 8,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 141,
@@ -5775,7 +5929,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
"right" : {
"type" : "hexstr",
@@ -5784,11 +5938,11 @@
}
},
"true_next" : "FabricIngress.forwarding.bridging",
- "false_next" : "node_36"
+ "false_next" : "node_22"
},
{
- "name" : "node_36",
- "id" : 13,
+ "name" : "node_22",
+ "id" : 9,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 142,
@@ -5801,7 +5955,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
"right" : {
"type" : "hexstr",
@@ -5810,11 +5964,11 @@
}
},
"true_next" : "FabricIngress.forwarding.mpls",
- "false_next" : "node_38"
+ "false_next" : "node_24"
},
{
- "name" : "node_38",
- "id" : 14,
+ "name" : "node_24",
+ "id" : 10,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 143,
@@ -5827,7 +5981,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
"right" : {
"type" : "hexstr",
@@ -5839,11 +5993,11 @@
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_41",
- "id" : 15,
+ "name" : "node_27",
+ "id" : 11,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 78,
+ "line" : 75,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_next == false"
},
@@ -5858,7 +6012,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
}
}
},
@@ -5868,12 +6022,12 @@
}
}
},
- "false_next" : null,
- "true_next" : "FabricIngress.next.xconnect"
+ "true_next" : "FabricIngress.next.hashed",
+ "false_next" : "node_35"
},
{
- "name" : "node_46",
- "id" : 16,
+ "name" : "node_31",
+ "id" : 12,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 30,
@@ -5894,12 +6048,12 @@
}
}
},
- "true_next" : "tbl_act_12",
- "false_next" : "node_48"
+ "true_next" : "tbl_act_7",
+ "false_next" : "node_33"
},
{
- "name" : "node_48",
- "id" : 17,
+ "name" : "node_33",
+ "id" : 13,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 33,
@@ -5920,8 +6074,158 @@
}
}
},
+ "true_next" : "tbl_act_8",
+ "false_next" : "node_35"
+ },
+ {
+ "name" : "node_35",
+ "id" : 14,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 338,
+ "column" : 15,
+ "source_fragment" : "hdr.pppoe.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["pppoe", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_9",
+ "false_next" : "tbl_act_10"
+ },
+ {
+ "name" : "node_39",
+ "id" : 15,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 352,
+ "column" : 16,
+ "source_fragment" : "hdr.pppoe.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["pppoe", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_11",
+ "false_next" : "FabricIngress.bng_ingress.downstream.t_line_session_map"
+ },
+ {
+ "name" : "node_44",
+ "id" : 16,
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_14",
+ "false_next" : "node_46"
+ },
+ {
+ "name" : "node_46",
+ "id" : 17,
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "not",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
+ }
+ }
+ }
+ }
+ },
"false_next" : null,
- "true_next" : "tbl_act_13"
+ "true_next" : "node_47"
+ },
+ {
+ "name" : "node_47",
+ "id" : 18,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 126,
+ "column" : 12,
+ "source_fragment" : "hdr.ipv4.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv4", "$valid$"]
+ }
+ }
+ },
+ "false_next" : null,
+ "true_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4"
+ },
+ {
+ "name" : "node_53",
+ "id" : 19,
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_downstream_tmp"]
+ }
+ }
+ },
+ "false_next" : null,
+ "true_next" : "node_54"
+ },
+ {
+ "name" : "node_54",
+ "id" : 20,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 233,
+ "column" : 16,
+ "source_fragment" : "hdr.ipv4.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv4", "$valid$"]
+ }
+ }
+ },
+ "false_next" : null,
+ "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v4"
}
]
},
@@ -5930,15 +6234,15 @@
"id" : 1,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 92,
+ "line" : 93,
"column" : 8,
"source_fragment" : "FabricEgress"
},
- "init_table" : "node_52",
+ "init_table" : "node_60",
"tables" : [
{
- "name" : "tbl_act_14",
- "id" : 30,
+ "name" : "tbl_act_20",
+ "id" : 35,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 41,
@@ -5952,22 +6256,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [60],
- "actions" : ["act_14"],
- "base_default_next" : "node_54",
+ "action_ids" : [65],
+ "actions" : ["act_20"],
+ "base_default_next" : "node_62",
"next_tables" : {
- "act_14" : "node_54"
+ "act_20" : "node_62"
},
"default_entry" : {
- "action_id" : 60,
+ "action_id" : 65,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_15",
- "id" : 31,
+ "name" : "tbl_act_21",
+ "id" : 36,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 44,
@@ -5981,25 +6285,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [61],
- "actions" : ["act_15"],
- "base_default_next" : "node_56",
+ "action_ids" : [66],
+ "actions" : ["act_21"],
+ "base_default_next" : "node_64",
"next_tables" : {
- "act_15" : "node_56"
+ "act_21" : "node_64"
},
"default_entry" : {
- "action_id" : 61,
+ "action_id" : 66,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_16",
- "id" : 32,
+ "name" : "tbl_act_22",
+ "id" : 37,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -6010,14 +6314,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [62],
- "actions" : ["act_16"],
- "base_default_next" : "node_58",
+ "action_ids" : [67],
+ "actions" : ["act_22"],
+ "base_default_next" : "node_66",
"next_tables" : {
- "act_16" : "node_58"
+ "act_22" : "node_66"
},
"default_entry" : {
- "action_id" : 62,
+ "action_id" : 67,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6025,10 +6329,10 @@
},
{
"name" : "tbl_egress_next_pop_mpls_if_present",
- "id" : 33,
+ "id" : 38,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -6039,14 +6343,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [56],
+ "action_ids" : [59],
"actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
- "base_default_next" : "FabricEgress.egress_next.egress_vlan",
+ "base_default_next" : "node_70",
"next_tables" : {
- "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
+ "FabricEgress.egress_next.pop_mpls_if_present" : "node_70"
},
"default_entry" : {
- "action_id" : 56,
+ "action_id" : 59,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6054,10 +6358,10 @@
},
{
"name" : "tbl_egress_next_set_mpls",
- "id" : 34,
+ "id" : 39,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 314,
+ "line" : 340,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -6068,14 +6372,101 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [57],
+ "action_ids" : [60],
"actions" : ["FabricEgress.egress_next.set_mpls"],
- "base_default_next" : "FabricEgress.egress_next.egress_vlan",
+ "base_default_next" : "node_70",
"next_tables" : {
- "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
+ "FabricEgress.egress_next.set_mpls" : "node_70"
},
"default_entry" : {
- "action_id" : 57,
+ "action_id" : 60,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_egress_next_push_vlan",
+ "id" : 40,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 346,
+ "column" : 12,
+ "source_fragment" : "push_vlan()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [61],
+ "actions" : ["FabricEgress.egress_next.push_vlan"],
+ "base_default_next" : "tbl_egress_next_push_inner_vlan",
+ "next_tables" : {
+ "FabricEgress.egress_next.push_vlan" : "tbl_egress_next_push_inner_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 61,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_egress_next_push_inner_vlan",
+ "id" : 41,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 347,
+ "column" : 12,
+ "source_fragment" : "push_inner_vlan()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [63],
+ "actions" : ["FabricEgress.egress_next.push_inner_vlan"],
+ "base_default_next" : "node_80",
+ "next_tables" : {
+ "FabricEgress.egress_next.push_inner_vlan" : "node_80"
+ },
+ "default_entry" : {
+ "action_id" : 63,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_23",
+ "id" : 42,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 350,
+ "column" : 12,
+ "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [70],
+ "actions" : ["act_25"],
+ "base_default_next" : "FabricEgress.egress_next.egress_vlan",
+ "next_tables" : {
+ "act_25" : "FabricEgress.egress_next.egress_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 70,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6083,10 +6474,10 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan",
- "id" : 35,
+ "id" : 43,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 291,
+ "line" : 317,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -6094,7 +6485,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -6110,23 +6501,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [59, 54],
+ "action_ids" : [64, 57],
"actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_17",
- "__MISS__" : "tbl_act_18"
+ "__HIT__" : "tbl_act_24",
+ "__MISS__" : "tbl_act_25"
},
"default_entry" : {
- "action_id" : 54,
+ "action_id" : 57,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_17",
- "id" : 36,
+ "name" : "tbl_act_24",
+ "id" : 44,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -6134,22 +6525,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [63],
- "actions" : ["act_17"],
- "base_default_next" : "node_65",
+ "action_ids" : [68],
+ "actions" : ["act_23"],
+ "base_default_next" : "node_77",
"next_tables" : {
- "act_17" : "node_65"
+ "act_23" : "node_77"
},
"default_entry" : {
- "action_id" : 63,
+ "action_id" : 68,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_18",
- "id" : 37,
+ "name" : "tbl_act_25",
+ "id" : 45,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -6157,26 +6548,26 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [64],
- "actions" : ["act_18"],
- "base_default_next" : "node_65",
+ "action_ids" : [69],
+ "actions" : ["act_24"],
+ "base_default_next" : "node_77",
"next_tables" : {
- "act_18" : "node_65"
+ "act_24" : "node_77"
},
"default_entry" : {
- "action_id" : 64,
+ "action_id" : 69,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_egress_next_push_vlan",
- "id" : 38,
+ "name" : "tbl_egress_next_push_vlan_0",
+ "id" : 46,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 320,
- "column" : 16,
+ "line" : 357,
+ "column" : 20,
"source_fragment" : "push_vlan()"
},
"key" : [],
@@ -6186,25 +6577,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [58],
+ "action_ids" : [62],
"actions" : ["FabricEgress.egress_next.push_vlan"],
- "base_default_next" : "node_68",
+ "base_default_next" : "node_80",
"next_tables" : {
- "FabricEgress.egress_next.push_vlan" : "node_68"
+ "FabricEgress.egress_next.push_vlan" : "node_80"
},
"default_entry" : {
- "action_id" : 58,
+ "action_id" : 62,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_19",
- "id" : 39,
+ "name" : "tbl_act_26",
+ "id" : 47,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 25,
"source_fragment" : "="
},
@@ -6215,25 +6606,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [66],
- "actions" : ["act_20"],
- "base_default_next" : "node_70",
+ "action_ids" : [72],
+ "actions" : ["act_27"],
+ "base_default_next" : "node_82",
"next_tables" : {
- "act_20" : "node_70"
+ "act_27" : "node_82"
},
"default_entry" : {
- "action_id" : 66,
+ "action_id" : 72,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_20",
- "id" : 40,
+ "name" : "tbl_act_27",
+ "id" : 48,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -6244,25 +6635,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [65],
- "actions" : ["act_19"],
- "base_default_next" : "node_76",
+ "action_ids" : [71],
+ "actions" : ["act_26"],
+ "base_default_next" : "node_88",
"next_tables" : {
- "act_19" : "node_76"
+ "act_26" : "node_88"
},
"default_entry" : {
- "action_id" : 65,
+ "action_id" : 71,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_21",
- "id" : 41,
+ "name" : "tbl_act_28",
+ "id" : 49,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 29,
"source_fragment" : "="
},
@@ -6273,25 +6664,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [68],
- "actions" : ["act_22"],
- "base_default_next" : "node_74",
+ "action_ids" : [74],
+ "actions" : ["act_29"],
+ "base_default_next" : "node_86",
"next_tables" : {
- "act_22" : "node_74"
+ "act_29" : "node_86"
},
"default_entry" : {
- "action_id" : 68,
+ "action_id" : 74,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_22",
- "id" : 42,
+ "name" : "tbl_act_29",
+ "id" : 50,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -6302,51 +6693,43 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [67],
- "actions" : ["act_21"],
- "base_default_next" : "node_76",
+ "action_ids" : [73],
+ "actions" : ["act_28"],
+ "base_default_next" : "node_88",
"next_tables" : {
- "act_21" : "node_76"
+ "act_28" : "node_88"
},
"default_entry" : {
- "action_id" : 67,
+ "action_id" : 73,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "FabricEgress.bng_egress.downstream.t_session_encap",
- "id" : 43,
+ "name" : "tbl_bng_egress_downstream_encap_v4",
+ "id" : 51,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 356,
- "column" : 10,
- "source_fragment" : "t_session_encap"
+ "line" : 295,
+ "column" : 12,
+ "source_fragment" : "encap_v4()"
},
- "key" : [
- {
- "match_type" : "exact",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id17"],
- "mask" : null
- }
- ],
+ "key" : [],
"match_type" : "exact",
"type" : "simple",
- "max_size" : 8192,
+ "max_size" : 1024,
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [53, 55],
- "actions" : ["nop", "FabricEgress.bng_egress.downstream.encap_v4"],
+ "action_ids" : [58],
+ "actions" : ["FabricEgress.bng_egress.downstream.encap_v4"],
"base_default_next" : null,
"next_tables" : {
- "nop" : null,
"FabricEgress.bng_egress.downstream.encap_v4" : null
},
"default_entry" : {
- "action_id" : 53,
+ "action_id" : 58,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6356,8 +6739,8 @@
"action_profiles" : [],
"conditionals" : [
{
- "name" : "node_52",
- "id" : 18,
+ "name" : "node_60",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 39,
@@ -6375,7 +6758,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out19"]
}
}
},
@@ -6385,12 +6768,12 @@
}
}
},
- "true_next" : "tbl_act_14",
- "false_next" : "node_54"
+ "true_next" : "tbl_act_20",
+ "false_next" : "node_62"
},
{
- "name" : "node_54",
- "id" : 19,
+ "name" : "node_62",
+ "id" : 22,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 43,
@@ -6411,15 +6794,15 @@
}
}
},
- "true_next" : "tbl_act_15",
- "false_next" : "node_56"
+ "true_next" : "tbl_act_21",
+ "false_next" : "node_64"
},
{
- "name" : "node_56",
- "id" : 20,
+ "name" : "node_64",
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 306,
+ "line" : 332,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -6438,7 +6821,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast18"]
}
}
},
@@ -6464,15 +6847,15 @@
}
}
},
- "true_next" : "tbl_act_16",
- "false_next" : "node_58"
+ "true_next" : "tbl_act_22",
+ "false_next" : "node_66"
},
{
- "name" : "node_58",
- "id" : 21,
+ "name" : "node_66",
+ "id" : 24,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 311,
+ "line" : 337,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -6482,7 +6865,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
"right" : {
"type" : "hexstr",
@@ -6490,15 +6873,15 @@
}
}
},
- "true_next" : "node_59",
+ "true_next" : "node_67",
"false_next" : "tbl_egress_next_set_mpls"
},
{
- "name" : "node_59",
- "id" : 22,
+ "name" : "node_67",
+ "id" : 25,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -6514,15 +6897,48 @@
}
},
"true_next" : "tbl_egress_next_pop_mpls_if_present",
- "false_next" : "FabricEgress.egress_next.egress_vlan"
+ "false_next" : "node_70"
},
{
- "name" : "node_65",
- "id" : 23,
+ "name" : "node_70",
+ "id" : 26,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 317,
+ "line" : 344,
"column" : 12,
+ "source_fragment" : "fabric_metadata.push_double_vlan == true"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "==",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._push_double_vlan8"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ },
+ "true_next" : "tbl_egress_next_push_vlan",
+ "false_next" : "tbl_act_23"
+ },
+ {
+ "name" : "node_77",
+ "id" : 27,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 354,
+ "column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
"expression" : {
@@ -6543,16 +6959,16 @@
}
}
},
- "true_next" : "node_66",
- "false_next" : "node_68"
+ "true_next" : "node_78",
+ "false_next" : "node_80"
},
{
- "name" : "node_66",
- "id" : 24,
+ "name" : "node_78",
+ "id" : 28,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 319,
- "column" : 16,
+ "line" : 356,
+ "column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
"expression" : {
@@ -6561,7 +6977,7 @@
"op" : "!=",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
"right" : {
"type" : "hexstr",
@@ -6569,15 +6985,15 @@
}
}
},
- "true_next" : "tbl_egress_next_push_vlan",
- "false_next" : "node_68"
+ "true_next" : "tbl_egress_next_push_vlan_0",
+ "false_next" : "node_80"
},
{
- "name" : "node_68",
- "id" : 25,
+ "name" : "node_80",
+ "id" : 29,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 325,
+ "line" : 365,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -6592,15 +7008,15 @@
}
}
},
- "true_next" : "tbl_act_19",
- "false_next" : "node_72"
+ "true_next" : "tbl_act_26",
+ "false_next" : "node_84"
},
{
- "name" : "node_70",
- "id" : 26,
+ "name" : "node_82",
+ "id" : 30,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -6618,15 +7034,15 @@
}
}
},
- "true_next" : "tbl_act_20",
- "false_next" : "node_76"
+ "true_next" : "tbl_act_27",
+ "false_next" : "node_88"
},
{
- "name" : "node_72",
- "id" : 27,
+ "name" : "node_84",
+ "id" : 31,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 329,
+ "line" : 369,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -6641,15 +7057,15 @@
}
}
},
- "true_next" : "tbl_act_21",
- "false_next" : "node_76"
+ "true_next" : "tbl_act_28",
+ "false_next" : "node_88"
},
{
- "name" : "node_74",
- "id" : 28,
+ "name" : "node_86",
+ "id" : 32,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},
@@ -6667,15 +7083,15 @@
}
}
},
- "true_next" : "tbl_act_22",
- "false_next" : "node_76"
+ "true_next" : "tbl_act_29",
+ "false_next" : "node_88"
},
{
- "name" : "node_76",
- "id" : 29,
+ "name" : "node_88",
+ "id" : 33,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 405,
+ "line" : 369,
"column" : 12,
"source_fragment" : "fmeta.bng.type == BNG_TYPE_DOWNSTREAM"
},
@@ -6685,7 +7101,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type16"]
+ "value" : ["scalars", "fabric_metadata_t._bng_type23"]
},
"right" : {
"type" : "hexstr",
@@ -6694,7 +7110,30 @@
}
},
"false_next" : null,
- "true_next" : "FabricEgress.bng_egress.downstream.t_session_encap"
+ "true_next" : "node_89"
+ },
+ {
+ "name" : "node_89",
+ "id" : 34,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 294,
+ "column" : 12,
+ "source_fragment" : "hdr.ipv4.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv4", "$valid$"]
+ }
+ }
+ },
+ "false_next" : null,
+ "true_next" : "tbl_bng_egress_downstream_encap_v4"
}
]
}
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
index e6f3866..98b6cac 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
@@ -3,35 +3,6 @@
}
tables {
preamble {
- id: 33584710
- name: "FabricIngress.bng_ingress.upstream.t_line_map"
- alias: "t_line_map"
- }
- match_fields {
- id: 1
- name: "s_tag"
- bitwidth: 12
- match_type: EXACT
- }
- match_fields {
- id: 2
- name: "c_tag"
- bitwidth: 12
- match_type: EXACT
- }
- action_refs {
- id: 16819938
- annotations: "@defaultonly"
- scope: DEFAULT_ONLY
- }
- action_refs {
- id: 16829434
- }
- const_default_action_id: 16819938
- size: 8192
-}
-tables {
- preamble {
id: 33603300
name: "FabricIngress.bng_ingress.upstream.t_pppoe_cp"
alias: "t_pppoe_cp"
@@ -96,13 +67,13 @@
}
tables {
preamble {
- id: 33555367
- name: "FabricIngress.bng_ingress.downstream.t_line_map_v4"
- alias: "t_line_map_v4"
+ id: 33594775
+ name: "FabricIngress.bng_ingress.downstream.t_line_session_map"
+ alias: "t_line_session_map"
}
match_fields {
id: 1
- name: "ipv4_dst"
+ name: "line_id"
bitwidth: 32
match_type: EXACT
}
@@ -112,13 +83,13 @@
scope: DEFAULT_ONLY
}
action_refs {
- id: 16798636
+ id: 16795395
}
action_refs {
- id: 16842299
+ id: 16822844
}
const_default_action_id: 16819938
- size: 32768
+ size: 8192
}
tables {
preamble {
@@ -161,6 +132,35 @@
}
tables {
preamble {
+ id: 33592041
+ name: "FabricIngress.bng_ingress.t_line_map"
+ alias: "t_line_map"
+ }
+ match_fields {
+ id: 1
+ name: "s_tag"
+ bitwidth: 12
+ match_type: EXACT
+ }
+ match_fields {
+ id: 2
+ name: "c_tag"
+ bitwidth: 12
+ match_type: EXACT
+ }
+ action_refs {
+ id: 16819938
+ annotations: "@defaultonly"
+ scope: DEFAULT_ONLY
+ }
+ action_refs {
+ id: 16829385
+ }
+ const_default_action_id: 16819938
+ size: 8192
+}
+tables {
+ preamble {
id: 33611649
name: "FabricIngress.filtering.ingress_port_vlan"
alias: "ingress_port_vlan"
@@ -183,6 +183,12 @@
bitwidth: 12
match_type: TERNARY
}
+ match_fields {
+ id: 4
+ name: "inner_vlan_id"
+ bitwidth: 12
+ match_type: TERNARY
+ }
action_refs {
id: 16836487
}
@@ -194,7 +200,7 @@
}
const_default_action_id: 16836487
direct_resource_ids: 318815501
- size: 1024
+ size: 8192
}
tables {
preamble {
@@ -216,8 +222,20 @@
}
match_fields {
id: 3
- name: "eth_type"
- bitwidth: 16
+ name: "is_ipv4"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 4
+ name: "is_ipv6"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 5
+ name: "is_mpls"
+ bitwidth: 1
match_type: EXACT
}
action_refs {
@@ -421,6 +439,9 @@
id: 16790685
}
action_refs {
+ id: 16803337
+ }
+ action_refs {
id: 16819938
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -431,39 +452,6 @@
}
tables {
preamble {
- id: 33596977
- name: "FabricIngress.next.xconnect"
- alias: "xconnect"
- }
- match_fields {
- id: 1
- name: "ig_port"
- bitwidth: 9
- match_type: EXACT
- }
- match_fields {
- id: 2
- name: "next_id"
- bitwidth: 32
- match_type: EXACT
- }
- action_refs {
- id: 16842190
- }
- action_refs {
- id: 16837052
- }
- action_refs {
- id: 16819938
- annotations: "@defaultonly"
- scope: DEFAULT_ONLY
- }
- const_default_action_id: 16819938
- direct_resource_ids: 318778156
- size: 1024
-}
-tables {
- preamble {
id: 33608588
name: "FabricIngress.next.hashed"
alias: "hashed"
@@ -519,29 +507,6 @@
}
tables {
preamble {
- id: 33576241
- name: "FabricEgress.bng_egress.downstream.t_session_encap"
- alias: "t_session_encap"
- }
- match_fields {
- id: 1
- name: "line_id"
- bitwidth: 32
- match_type: EXACT
- }
- action_refs {
- id: 16819938
- annotations: "@defaultonly"
- scope: DEFAULT_ONLY
- }
- action_refs {
- id: 16784000
- }
- const_default_action_id: 16819938
- size: 8192
-}
-tables {
- preamble {
id: 33599342
name: "FabricEgress.egress_next.egress_vlan"
alias: "egress_vlan"
@@ -579,18 +544,6 @@
}
actions {
preamble {
- id: 16829434
- name: "FabricIngress.bng_ingress.upstream.set_line"
- alias: "set_line"
- }
- params {
- id: 1
- name: "line_id"
- bitwidth: 32
- }
-}
-actions {
- preamble {
id: 16830893
name: "FabricIngress.bng_ingress.upstream.punt_to_cpu"
alias: "upstream.punt_to_cpu"
@@ -612,31 +565,21 @@
}
actions {
preamble {
- id: 16798636
- name: "FabricIngress.bng_ingress.downstream.set_line_next"
- alias: "set_line_next"
+ id: 16795395
+ name: "FabricIngress.bng_ingress.downstream.set_session"
+ alias: "set_session"
}
params {
id: 1
- name: "line_id"
- bitwidth: 32
- }
- params {
- id: 2
- name: "next_id"
- bitwidth: 32
+ name: "pppoe_session_id"
+ bitwidth: 16
}
}
actions {
preamble {
- id: 16842299
- name: "FabricIngress.bng_ingress.downstream.set_line_drop"
- alias: "set_line_drop"
- }
- params {
- id: 1
- name: "line_id"
- bitwidth: 32
+ id: 16822844
+ name: "FabricIngress.bng_ingress.downstream.drop"
+ alias: "downstream.drop"
}
}
actions {
@@ -655,6 +598,18 @@
}
actions {
preamble {
+ id: 16829385
+ name: "FabricIngress.bng_ingress.set_line"
+ alias: "set_line"
+ }
+ params {
+ id: 1
+ name: "line_id"
+ bitwidth: 32
+ }
+}
+actions {
+ preamble {
id: 16836487
name: "FabricIngress.filtering.deny"
alias: "deny"
@@ -769,7 +724,7 @@
preamble {
id: 16820765
name: "FabricIngress.acl.drop"
- alias: "drop"
+ alias: "acl.drop"
}
}
actions {
@@ -793,26 +748,19 @@
}
actions {
preamble {
- id: 16842190
- name: "FabricIngress.next.output_xconnect"
- alias: "output_xconnect"
+ id: 16803337
+ name: "FabricIngress.next.set_double_vlan"
+ alias: "set_double_vlan"
}
params {
id: 1
- name: "port_num"
- bitwidth: 9
- }
-}
-actions {
- preamble {
- id: 16837052
- name: "FabricIngress.next.set_next_id_xconnect"
- alias: "set_next_id_xconnect"
+ name: "outer_vlan_id"
+ bitwidth: 12
}
params {
- id: 1
- name: "next_id"
- bitwidth: 32
+ id: 2
+ name: "inner_vlan_id"
+ bitwidth: 12
}
}
actions {
@@ -894,16 +842,6 @@
name: "FabricEgress.bng_egress.downstream.encap_v4"
alias: "encap_v4"
}
- params {
- id: 1
- name: "c_tag"
- bitwidth: 12
- }
- params {
- id: 2
- name: "pppoe_session_id"
- bitwidth: 16
- }
}
actions {
preamble {
@@ -1079,17 +1017,6 @@
}
direct_counters {
preamble {
- id: 318778156
- name: "FabricIngress.next.xconnect_counter"
- alias: "xconnect_counter"
- }
- spec {
- unit: BOTH
- }
- direct_table_id: 33596977
-}
-direct_counters {
- preamble {
id: 318800532
name: "FabricIngress.next.hashed_counter"
alias: "hashed_counter"
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
index 37c1144..10538ac 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
@@ -12,50 +12,57 @@
["tmp_3", 32, false],
["spgw_ingress_tmp", 1, false],
["spgw_ingress_tmp_0", 1, false],
- ["bng_ingress_upstream_drop", 1, false],
+ ["bng_ingress_s_tag", 12, false],
+ ["bng_ingress_c_tag", 12, false],
["bng_ingress_upstream_tmp", 1, false],
- ["bng_ingress_downstream_prio", 1, false],
["bng_ingress_downstream_tmp", 1, false],
- ["bng_ingress_downstream_tmp_0", 1, false],
["spgw_normalizer_hasReturned", 1, false],
["spgw_ingress_hasReturned", 1, false],
["bng_ingress_upstream_hasReturned", 1, false],
["key_0", 64, false],
- ["key_1", 64, false],
["egress_next_tmp", 1, false],
["process_int_main_process_int_transit_hasReturned", 1, false],
- ["fabric_metadata_t._eth_type0", 16, false],
- ["fabric_metadata_t._ip_eth_type1", 16, false],
- ["fabric_metadata_t._vlan_id2", 12, false],
- ["fabric_metadata_t._vlan_pri3", 3, false],
- ["fabric_metadata_t._vlan_cfi4", 1, false],
- ["fabric_metadata_t._mpls_label5", 20, false],
- ["fabric_metadata_t._mpls_ttl6", 8, false],
- ["fabric_metadata_t._skip_forwarding7", 1, false],
- ["fabric_metadata_t._skip_next8", 1, false],
- ["fabric_metadata_t._fwd_type9", 3, false],
- ["fabric_metadata_t._next_id10", 32, false],
- ["fabric_metadata_t._is_multicast11", 1, false],
- ["fabric_metadata_t._is_controller_packet_out12", 1, false],
- ["fabric_metadata_t._ip_proto13", 8, false],
- ["fabric_metadata_t._l4_sport14", 16, false],
- ["fabric_metadata_t._l4_dport15", 16, false],
- ["fabric_metadata_t._spgw_direction16", 2, false],
- ["fabric_metadata_t._spgw_ipv4_len17", 16, false],
- ["fabric_metadata_t._spgw_teid18", 32, false],
- ["fabric_metadata_t._spgw_s1u_enb_addr19", 32, false],
- ["fabric_metadata_t._spgw_s1u_sgw_addr20", 32, false],
- ["fabric_metadata_t._bng_type21", 2, false],
- ["fabric_metadata_t._bng_line_id22", 32, false],
- ["fabric_metadata_t._bng_ds_meter_result23", 32, false],
- ["fabric_metadata_t._int_meta_source24", 1, false],
- ["fabric_metadata_t._int_meta_transit25", 1, false],
- ["fabric_metadata_t._int_meta_sink26", 1, false],
- ["fabric_metadata_t._int_meta_switch_id27", 32, false],
- ["fabric_metadata_t._int_meta_new_words28", 8, false],
- ["fabric_metadata_t._int_meta_new_bytes29", 16, false],
- ["fabric_metadata_t._int_meta_ig_tstamp30", 32, false],
- ["fabric_metadata_t._int_meta_eg_tstamp31", 32, false]
+ ["fabric_metadata_t._last_eth_type0", 16, false],
+ ["fabric_metadata_t._is_ipv41", 1, false],
+ ["fabric_metadata_t._is_ipv62", 1, false],
+ ["fabric_metadata_t._is_mpls3", 1, false],
+ ["fabric_metadata_t._ip_eth_type4", 16, false],
+ ["fabric_metadata_t._vlan_id5", 12, false],
+ ["fabric_metadata_t._vlan_pri6", 3, false],
+ ["fabric_metadata_t._vlan_cfi7", 1, false],
+ ["fabric_metadata_t._push_double_vlan8", 1, false],
+ ["fabric_metadata_t._inner_vlan_id9", 12, false],
+ ["fabric_metadata_t._inner_vlan_pri10", 3, false],
+ ["fabric_metadata_t._inner_vlan_cfi11", 1, false],
+ ["fabric_metadata_t._mpls_label12", 20, false],
+ ["fabric_metadata_t._mpls_ttl13", 8, false],
+ ["fabric_metadata_t._skip_forwarding14", 1, false],
+ ["fabric_metadata_t._skip_next15", 1, false],
+ ["fabric_metadata_t._fwd_type16", 3, false],
+ ["fabric_metadata_t._next_id17", 32, false],
+ ["fabric_metadata_t._is_multicast18", 1, false],
+ ["fabric_metadata_t._is_controller_packet_out19", 1, false],
+ ["fabric_metadata_t._ip_proto20", 8, false],
+ ["fabric_metadata_t._l4_sport21", 16, false],
+ ["fabric_metadata_t._l4_dport22", 16, false],
+ ["fabric_metadata_t._spgw_direction23", 2, false],
+ ["fabric_metadata_t._spgw_ipv4_len24", 16, false],
+ ["fabric_metadata_t._spgw_teid25", 32, false],
+ ["fabric_metadata_t._spgw_s1u_enb_addr26", 32, false],
+ ["fabric_metadata_t._spgw_s1u_sgw_addr27", 32, false],
+ ["fabric_metadata_t._bng_type28", 2, false],
+ ["fabric_metadata_t._bng_line_id29", 32, false],
+ ["fabric_metadata_t._bng_pppoe_session_id30", 16, false],
+ ["fabric_metadata_t._bng_ds_meter_result31", 32, false],
+ ["fabric_metadata_t._int_meta_source32", 1, false],
+ ["fabric_metadata_t._int_meta_transit33", 1, false],
+ ["fabric_metadata_t._int_meta_sink34", 1, false],
+ ["fabric_metadata_t._int_meta_switch_id35", 32, false],
+ ["fabric_metadata_t._int_meta_new_words36", 8, false],
+ ["fabric_metadata_t._int_meta_new_bytes37", 16, false],
+ ["fabric_metadata_t._int_meta_ig_tstamp38", 32, false],
+ ["fabric_metadata_t._int_meta_eg_tstamp39", 32, false],
+ ["_padding_0", 7, false]
]
},
{
@@ -721,7 +728,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
@@ -734,7 +741,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "hexstr",
@@ -761,13 +768,13 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
"value" : "0x86dd",
"mask" : null,
- "next_state" : "parse_ipv6"
+ "next_state" : "pre_parse_ipv6"
},
{
"value" : "default",
@@ -801,13 +808,13 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
"value" : "0x86dd",
"mask" : null,
- "next_state" : "parse_ipv6"
+ "next_state" : "pre_parse_ipv6"
},
{
"type" : "hexstr",
@@ -822,6 +829,18 @@
"next_state" : "parse_inner_vlan_tag"
},
{
+ "type" : "hexstr",
+ "value" : "0x88a8",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x9100",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
"value" : "default",
"mask" : null,
"next_state" : null
@@ -853,13 +872,13 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
"value" : "0x86dd",
"mask" : null,
- "next_state" : "parse_ipv6"
+ "next_state" : "pre_parse_ipv6"
},
{
"type" : "hexstr",
@@ -917,13 +936,13 @@
"type" : "hexstr",
"value" : "0x0021",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
"value" : "0x0057",
"mask" : null,
- "next_state" : "parse_ipv6"
+ "next_state" : "pre_parse_ipv6"
},
{
"value" : "default",
@@ -955,7 +974,30 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._is_mpls3"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ },
+ {
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
{
"type" : "field",
@@ -968,7 +1010,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl13"]
},
{
"type" : "field",
@@ -1018,12 +1060,49 @@
]
},
{
- "name" : "parse_ipv4",
+ "name" : "pre_parse_ipv4",
"id" : 7,
"parser_ops" : [
{
"parameters" : [
{
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._is_ipv41"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ }
+ ],
+ "transitions" : [
+ {
+ "value" : "default",
+ "mask" : null,
+ "next_state" : "parse_ipv4"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
+ "name" : "parse_ipv4",
+ "id" : 8,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
"type" : "regular",
"value" : "ipv4"
}
@@ -1034,7 +1113,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto20"]
},
{
"type" : "field",
@@ -1047,7 +1126,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
},
{
"type" : "hexstr",
@@ -1103,8 +1182,45 @@
]
},
{
+ "name" : "pre_parse_ipv6",
+ "id" : 9,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._is_ipv62"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ }
+ ],
+ "transitions" : [
+ {
+ "value" : "default",
+ "mask" : null,
+ "next_state" : "parse_ipv6"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
"name" : "parse_ipv6",
- "id" : 8,
+ "id" : 10,
"parser_ops" : [
{
"parameters" : [
@@ -1119,7 +1235,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto20"]
},
{
"type" : "field",
@@ -1132,7 +1248,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
},
{
"type" : "hexstr",
@@ -1176,7 +1292,7 @@
},
{
"name" : "parse_tcp",
- "id" : 9,
+ "id" : 11,
"parser_ops" : [
{
"parameters" : [
@@ -1191,7 +1307,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport21"]
},
{
"type" : "field",
@@ -1204,7 +1320,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
},
{
"type" : "field",
@@ -1225,7 +1341,7 @@
},
{
"name" : "parse_udp",
- "id" : 10,
+ "id" : 12,
"parser_ops" : [
{
"parameters" : [
@@ -1240,7 +1356,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport21"]
},
{
"type" : "field",
@@ -1253,7 +1369,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
},
{
"type" : "field",
@@ -1285,7 +1401,7 @@
},
{
"name" : "parse_icmp",
- "id" : 11,
+ "id" : 13,
"parser_ops" : [
{
"parameters" : [
@@ -1308,7 +1424,7 @@
},
{
"name" : "parse_gtpu",
- "id" : 12,
+ "id" : 14,
"parser_ops" : [
{
"parameters" : [
@@ -1379,7 +1495,7 @@
},
{
"name" : "do_parse_gtpu",
- "id" : 13,
+ "id" : 15,
"parser_ops" : [
{
"parameters" : [
@@ -1447,7 +1563,7 @@
},
{
"name" : "parse_inner_udp",
- "id" : 14,
+ "id" : 16,
"parser_ops" : [
{
"parameters" : [
@@ -1462,7 +1578,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport21"]
},
{
"type" : "field",
@@ -1475,7 +1591,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
},
{
"type" : "field",
@@ -1496,7 +1612,7 @@
},
{
"name" : "parse_int",
- "id" : 15,
+ "id" : 17,
"parser_ops" : [],
"transitions" : [
{
@@ -1520,7 +1636,7 @@
},
{
"name" : "parse_intl4_shim",
- "id" : 16,
+ "id" : 18,
"parser_ops" : [
{
"parameters" : [
@@ -1563,7 +1679,7 @@
},
{
"name" : "parse_int_data",
- "id" : 17,
+ "id" : 19,
"parser_ops" : [
{
"parameters" : [
@@ -1659,7 +1775,7 @@
},
{
"name" : "parse_intl4_tail",
- "id" : 18,
+ "id" : 20,
"parser_ops" : [
{
"parameters" : [
@@ -1690,7 +1806,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/parser.p4",
- "line" : 261,
+ "line" : 276,
"column" : 8,
"source_fragment" : "FabricDeparser"
},
@@ -1703,7 +1819,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 184,
+ "line" : 152,
"column" : 33,
"source_fragment" : "m_besteff"
},
@@ -1717,7 +1833,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 185,
+ "line" : 153,
"column" : 33,
"source_fragment" : "m_prio"
},
@@ -1741,56 +1857,8 @@
}
},
{
- "name" : "FabricIngress.bng_ingress.upstream.c_terminated",
- "id" : 1,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 40,
- "column" : 39,
- "source_fragment" : "c_terminated"
- },
- "size" : 8192,
- "is_direct" : false
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.c_dropped",
- "id" : 2,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 41,
- "column" : 39,
- "source_fragment" : "c_dropped"
- },
- "size" : 8192,
- "is_direct" : false
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.c_control",
- "id" : 3,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 42,
- "column" : 39,
- "source_fragment" : "c_control"
- },
- "size" : 8192,
- "is_direct" : false
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.c_line_rx",
- "id" : 4,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 182,
- "column" : 49,
- "source_fragment" : "c_line_rx"
- },
- "size" : 8192,
- "is_direct" : false
- },
- {
"name" : "FabricIngress.process_set_source_sink.counter_set_source",
- "id" : 5,
+ "id" : 1,
"is_direct" : true,
"binding" : "FabricIngress.process_set_source_sink.tb_set_source",
"source_info" : {
@@ -1802,7 +1870,7 @@
},
{
"name" : "FabricIngress.process_set_source_sink.counter_set_sink",
- "id" : 6,
+ "id" : 2,
"is_direct" : true,
"binding" : "FabricIngress.process_set_source_sink.tb_set_sink",
"source_info" : {
@@ -1813,6 +1881,54 @@
}
},
{
+ "name" : "FabricIngress.bng_ingress.upstream.c_terminated",
+ "id" : 3,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 36,
+ "column" : 39,
+ "source_fragment" : "c_terminated"
+ },
+ "size" : 8192,
+ "is_direct" : false
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.c_dropped",
+ "id" : 4,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 37,
+ "column" : 39,
+ "source_fragment" : "c_dropped"
+ },
+ "size" : 8192,
+ "is_direct" : false
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.c_control",
+ "id" : 5,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 38,
+ "column" : 39,
+ "source_fragment" : "c_control"
+ },
+ "size" : 8192,
+ "is_direct" : false
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.c_line_rx",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 150,
+ "column" : 49,
+ "source_fragment" : "c_line_rx"
+ },
+ "size" : 8192,
+ "is_direct" : false
+ },
+ {
"name" : "FabricIngress.filtering.ingress_port_vlan_counter",
"id" : 7,
"is_direct" : true,
@@ -1831,7 +1947,7 @@
"binding" : "FabricIngress.filtering.fwd_classifier",
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 80,
+ "line" : 83,
"column" : 50,
"source_fragment" : "fwd_classifier_counter"
}
@@ -1915,7 +2031,7 @@
"binding" : "FabricIngress.next.xconnect",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 92,
+ "line" : 103,
"column" : 50,
"source_fragment" : "xconnect_counter"
}
@@ -1927,7 +2043,7 @@
"binding" : "FabricIngress.next.simple",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 125,
+ "line" : 137,
"column" : 50,
"source_fragment" : "simple_counter"
}
@@ -1939,7 +2055,7 @@
"binding" : "FabricIngress.next.hashed",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 166,
+ "line" : 178,
"column" : 50,
"source_fragment" : "hashed_counter"
}
@@ -1951,7 +2067,7 @@
"binding" : "FabricIngress.next.multicast",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 210,
+ "line" : 222,
"column" : 50,
"source_fragment" : "multicast_counter"
}
@@ -1985,7 +2101,7 @@
"id" : 21,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 324,
+ "line" : 265,
"column" : 49,
"source_fragment" : "c_line_tx"
},
@@ -2011,7 +2127,7 @@
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 283,
+ "line" : 309,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -2302,14 +2418,8 @@
"primitives" : []
},
{
- "name" : "nop",
- "id" : 16,
- "runtime_data" : [],
- "primitives" : []
- },
- {
"name" : "FabricIngress.spgw_ingress.gtpu_decap",
- "id" : 17,
+ "id" : 16,
"runtime_data" : [],
"primitives" : [
{
@@ -2361,7 +2471,7 @@
},
{
"name" : "FabricIngress.spgw_ingress.set_dl_sess_info",
- "id" : 18,
+ "id" : 17,
"runtime_data" : [
{
"name" : "teid",
@@ -2382,7 +2492,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid25"]
},
{
"type" : "runtime_data",
@@ -2401,7 +2511,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr26"]
},
{
"type" : "runtime_data",
@@ -2420,7 +2530,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr27"]
},
{
"type" : "runtime_data",
@@ -2437,1226 +2547,8 @@
]
},
{
- "name" : "FabricIngress.bng_ingress.upstream.set_line",
- "id" : 19,
- "runtime_data" : [
- {
- "name" : "line_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 53,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.punt_to_cpu",
- "id" : 20,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["standard_metadata", "egress_spec"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00ff"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 73,
- "column" : 8,
- "source_fragment" : "smeta.egress_spec = 255"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 74,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 75,
- "column" : 24,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.upstream.c_control"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 76,
- "column" : 8,
- "source_fragment" : "c_control.count(fmeta.bng.line_id)"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.term_disabled",
- "id" : 21,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 155,
- "column" : 36,
- "source_fragment" : "2w0x0; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 108,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 109,
- "column" : 24,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "mark_to_drop",
- "parameters" : [
- {
- "type" : "header",
- "value" : "standard_metadata"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 110,
- "column" : 8,
- "source_fragment" : "mark_to_drop(smeta)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 111,
- "column" : 8,
- "source_fragment" : "drop=true"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.term_disabled",
- "id" : 22,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 155,
- "column" : 36,
- "source_fragment" : "2w0x0; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 108,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 109,
- "column" : 24,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "mark_to_drop",
- "parameters" : [
- {
- "type" : "header",
- "value" : "standard_metadata"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 110,
- "column" : 8,
- "source_fragment" : "mark_to_drop(smeta)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 111,
- "column" : 8,
- "source_fragment" : "drop=true"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.term_enabled_v4",
- "id" : 23,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["ethernet", "eth_type"]
- },
- {
- "type" : "hexstr",
- "value" : "0x0800"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 110,
- "column" : 31,
- "source_fragment" : "0x0800; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
- },
- {
- "type" : "hexstr",
- "value" : "0x0800"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 110,
- "column" : 31,
- "source_fragment" : "0x0800; ..."
- }
- },
- {
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "pppoe"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 100,
- "column" : 8,
- "source_fragment" : "hdr.pppoe.setInvalid()"
- }
- },
- {
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 101,
- "column" : 8,
- "source_fragment" : "hdr.vlan_tag.setInvalid()"
- }
- },
- {
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "inner_vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 102,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
- }
- },
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.upstream.c_terminated"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 103,
- "column" : 8,
- "source_fragment" : "c_terminated.count(fmeta.bng.line_id)"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.term_enabled_v6",
- "id" : 24,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["ethernet", "eth_type"]
- },
- {
- "type" : "hexstr",
- "value" : "0x86dd"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 111,
- "column" : 31,
- "source_fragment" : "0x86dd; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
- },
- {
- "type" : "hexstr",
- "value" : "0x86dd"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 111,
- "column" : 31,
- "source_fragment" : "0x86dd; ..."
- }
- },
- {
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "pppoe"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 100,
- "column" : 8,
- "source_fragment" : "hdr.pppoe.setInvalid()"
- }
- },
- {
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 101,
- "column" : 8,
- "source_fragment" : "hdr.vlan_tag.setInvalid()"
- }
- },
- {
- "op" : "remove_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "inner_vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 102,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
- }
- },
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.upstream.c_terminated"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 103,
- "column" : 8,
- "source_fragment" : "c_terminated.count(fmeta.bng.line_id)"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.set_line_next",
- "id" : 25,
- "runtime_data" : [
- {
- "name" : "line_id",
- "bitwidth" : 32
- },
- {
- "name" : "next_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
- },
- {
- "type" : "hexstr",
- "value" : "0x02"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 157,
- "column" : 39,
- "source_fragment" : "2w0x2;; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 195,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
- }
- },
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 196,
- "column" : 8,
- "source_fragment" : "c_line_rx.count(line_id)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
- },
- {
- "type" : "runtime_data",
- "value" : 1
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 201,
- "column" : 22,
- "source_fragment" : "= next_id; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 202,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.set_line_next",
- "id" : 26,
- "runtime_data" : [
- {
- "name" : "line_id",
- "bitwidth" : 32
- },
- {
- "name" : "next_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
- },
- {
- "type" : "hexstr",
- "value" : "0x02"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 157,
- "column" : 39,
- "source_fragment" : "2w0x2;; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 195,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
- }
- },
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 196,
- "column" : 8,
- "source_fragment" : "c_line_rx.count(line_id)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
- },
- {
- "type" : "runtime_data",
- "value" : 1
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 201,
- "column" : 22,
- "source_fragment" : "= next_id; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 202,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.set_line_drop",
- "id" : 27,
- "runtime_data" : [
- {
- "name" : "line_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
- },
- {
- "type" : "hexstr",
- "value" : "0x02"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 157,
- "column" : 39,
- "source_fragment" : "2w0x2;; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 195,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
- }
- },
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 196,
- "column" : 8,
- "source_fragment" : "c_line_rx.count(line_id)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 207,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 208,
- "column" : 24,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "mark_to_drop",
- "parameters" : [
- {
- "type" : "header",
- "value" : "standard_metadata"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 209,
- "column" : 8,
- "source_fragment" : "mark_to_drop(smeta)"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.set_line_drop",
- "id" : 28,
- "runtime_data" : [
- {
- "name" : "line_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
- },
- {
- "type" : "hexstr",
- "value" : "0x02"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 157,
- "column" : 39,
- "source_fragment" : "2w0x2;; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 195,
- "column" : 26,
- "source_fragment" : "= line_id; ..."
- }
- },
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 196,
- "column" : 8,
- "source_fragment" : "c_line_rx.count(line_id)"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 207,
- "column" : 30,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 208,
- "column" : 24,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "mark_to_drop",
- "parameters" : [
- {
- "type" : "header",
- "value" : "standard_metadata"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 209,
- "column" : 8,
- "source_fragment" : "mark_to_drop(smeta)"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.qos_prio",
- "id" : 29,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 245,
- "column" : 8,
- "source_fragment" : "prio=true"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.qos_prio",
- "id" : 30,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 245,
- "column" : 8,
- "source_fragment" : "prio=true"
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.qos_besteff",
- "id" : 31,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.qos_besteff",
- "id" : 32,
- "runtime_data" : [],
- "primitives" : []
- },
- {
"name" : "FabricIngress.process_set_source_sink.int_set_source",
- "id" : 33,
+ "id" : 18,
"runtime_data" : [],
"primitives" : [
{
@@ -3664,7 +2556,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_source24"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_source32"]
},
{
"type" : "expression",
@@ -3692,7 +2584,7 @@
},
{
"name" : "FabricIngress.process_set_source_sink.int_set_sink",
- "id" : 34,
+ "id" : 19,
"runtime_data" : [],
"primitives" : [
{
@@ -3700,7 +2592,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_sink26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_sink34"]
},
{
"type" : "expression",
@@ -3727,8 +2619,8 @@
]
},
{
- "name" : "FabricIngress.filtering.deny",
- "id" : 35,
+ "name" : "FabricIngress.bng_ingress.upstream.punt_to_cpu",
+ "id" : 20,
"runtime_data" : [],
"primitives" : [
{
@@ -3736,7 +2628,476 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["standard_metadata", "egress_spec"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00ff"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 44,
+ "column" : 8,
+ "source_fragment" : "smeta.egress_spec = 255"
+ }
+ },
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.upstream.c_control"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 45,
+ "column" : 8,
+ "source_fragment" : "c_control.count(fmeta.bng.line_id)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.term_disabled",
+ "id" : 21,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_type28"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../header.p4",
+ "line" : 155,
+ "column" : 36,
+ "source_fragment" : "2w0x0; ..."
+ }
+ },
+ {
+ "op" : "mark_to_drop",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "standard_metadata"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "mark_to_drop(smeta)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.term_disabled",
+ "id" : 22,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_type28"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../header.p4",
+ "line" : 155,
+ "column" : 36,
+ "source_fragment" : "2w0x0; ..."
+ }
+ },
+ {
+ "op" : "mark_to_drop",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "standard_metadata"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "mark_to_drop(smeta)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.term_enabled_v4",
+ "id" : 23,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x0800"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 110,
+ "column" : 31,
+ "source_fragment" : "0x0800; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x0800"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 110,
+ "column" : 31,
+ "source_fragment" : "0x0800; ..."
+ }
+ },
+ {
+ "op" : "remove_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "pppoe"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.pppoe.setInvalid()"
+ }
+ },
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.upstream.c_terminated"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 70,
+ "column" : 8,
+ "source_fragment" : "c_terminated.count(fmeta.bng.line_id)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.term_enabled_v6",
+ "id" : 24,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x86dd"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 111,
+ "column" : 31,
+ "source_fragment" : "0x86dd; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x86dd"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 111,
+ "column" : 31,
+ "source_fragment" : "0x86dd; ..."
+ }
+ },
+ {
+ "op" : "remove_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "pppoe"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.pppoe.setInvalid()"
+ }
+ },
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.upstream.c_terminated"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 70,
+ "column" : 8,
+ "source_fragment" : "c_terminated.count(fmeta.bng.line_id)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.set_session",
+ "id" : 25,
+ "runtime_data" : [
+ {
+ "name" : "pppoe_session_id",
+ "bitwidth" : 16
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_type28"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../header.p4",
+ "line" : 157,
+ "column" : 39,
+ "source_fragment" : "2w0x2;; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_pppoe_session_id30"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 157,
+ "column" : 35,
+ "source_fragment" : "= pppoe_session_id; ..."
+ }
+ },
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 158,
+ "column" : 8,
+ "source_fragment" : "c_line_rx.count(fmeta.bng.line_id)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.drop",
+ "id" : 26,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_type28"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../header.p4",
+ "line" : 157,
+ "column" : 39,
+ "source_fragment" : "2w0x2;; ..."
+ }
+ },
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.c_line_rx"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 163,
+ "column" : 8,
+ "source_fragment" : "c_line_rx.count(fmeta.bng.line_id)"
+ }
+ },
+ {
+ "op" : "mark_to_drop",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "standard_metadata"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 164,
+ "column" : 8,
+ "source_fragment" : "mark_to_drop(smeta)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.qos_prio",
+ "id" : 27,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.qos_prio",
+ "id" : 28,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.qos_besteff",
+ "id" : 29,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.qos_besteff",
+ "id" : 30,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.set_line",
+ "id" : 31,
+ "runtime_data" : [
+ {
+ "name" : "line_id",
+ "bitwidth" : 32
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 321,
+ "column" : 30,
+ "source_fragment" : "= line_id; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.filtering.deny",
+ "id" : 32,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding14"]
},
{
"type" : "expression",
@@ -3765,7 +3126,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
},
{
"type" : "expression",
@@ -3793,13 +3154,13 @@
},
{
"name" : "FabricIngress.filtering.permit",
- "id" : 36,
+ "id" : 33,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricIngress.filtering.permit_with_internal_vlan",
- "id" : 37,
+ "id" : 34,
"runtime_data" : [
{
"name" : "vlan_id",
@@ -3812,7 +3173,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -3830,7 +3191,7 @@
},
{
"name" : "FabricIngress.filtering.set_forwarding_type",
- "id" : 38,
+ "id" : 35,
"runtime_data" : [
{
"name" : "fwd_type",
@@ -3843,7 +3204,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
{
"type" : "runtime_data",
@@ -3852,7 +3213,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 83,
+ "line" : 86,
"column" : 33,
"source_fragment" : "= fwd_type; ..."
}
@@ -3861,7 +3222,7 @@
},
{
"name" : "FabricIngress.forwarding.set_next_id_bridging",
- "id" : 39,
+ "id" : 36,
"runtime_data" : [
{
"name" : "next_id",
@@ -3874,7 +3235,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -3892,7 +3253,7 @@
},
{
"name" : "FabricIngress.forwarding.pop_mpls_and_next",
- "id" : 40,
+ "id" : 37,
"runtime_data" : [
{
"name" : "next_id",
@@ -3905,7 +3266,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
{
"type" : "hexstr",
@@ -3924,7 +3285,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -3942,7 +3303,7 @@
},
{
"name" : "FabricIngress.forwarding.set_next_id_routing_v4",
- "id" : 41,
+ "id" : 38,
"runtime_data" : [
{
"name" : "next_id",
@@ -3955,7 +3316,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -3973,13 +3334,13 @@
},
{
"name" : "FabricIngress.forwarding.nop_routing_v4",
- "id" : 42,
+ "id" : 39,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricIngress.forwarding.set_next_id_routing_v6",
- "id" : 43,
+ "id" : 40,
"runtime_data" : [
{
"name" : "next_id",
@@ -3992,7 +3353,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -4010,7 +3371,7 @@
},
{
"name" : "FabricIngress.acl.set_next_id_acl",
- "id" : 44,
+ "id" : 41,
"runtime_data" : [
{
"name" : "next_id",
@@ -4023,7 +3384,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
},
{
"type" : "runtime_data",
@@ -4041,7 +3402,7 @@
},
{
"name" : "FabricIngress.acl.punt_to_cpu",
- "id" : 45,
+ "id" : 42,
"runtime_data" : [],
"primitives" : [
{
@@ -4068,7 +3429,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
},
{
"type" : "expression",
@@ -4096,7 +3457,7 @@
},
{
"name" : "FabricIngress.acl.set_clone_session_id",
- "id" : 46,
+ "id" : 43,
"runtime_data" : [
{
"name" : "clone_id",
@@ -4127,7 +3488,7 @@
},
{
"name" : "FabricIngress.acl.drop",
- "id" : 47,
+ "id" : 44,
"runtime_data" : [],
"primitives" : [
{
@@ -4150,7 +3511,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
},
{
"type" : "expression",
@@ -4178,13 +3539,13 @@
},
{
"name" : "FabricIngress.acl.nop_acl",
- "id" : 48,
+ "id" : 45,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricIngress.next.set_vlan",
- "id" : 49,
+ "id" : 46,
"runtime_data" : [
{
"name" : "vlan_id",
@@ -4197,7 +3558,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -4214,7 +3575,171 @@
]
},
{
+ "name" : "FabricIngress.next.set_double_vlan",
+ "id" : 47,
+ "runtime_data" : [
+ {
+ "name" : "outer_vlan_id",
+ "bitwidth" : 12
+ },
+ {
+ "name" : "inner_vlan_id",
+ "bitwidth" : 12
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 70,
+ "column" : 32,
+ "source_fragment" : "= vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._push_double_vlan8"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 77,
+ "column" : 41,
+ "source_fragment" : "= true; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 1
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 78,
+ "column" : 38,
+ "source_fragment" : "= inner_vlan_id; ..."
+ }
+ }
+ ]
+ },
+ {
"name" : "FabricIngress.next.output_xconnect",
+ "id" : 48,
+ "runtime_data" : [
+ {
+ "name" : "port_num",
+ "bitwidth" : 9
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_spec"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 31,
+ "column" : 5,
+ "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.next.set_next_id_xconnect",
+ "id" : 49,
+ "runtime_data" : [
+ {
+ "name" : "next_id",
+ "bitwidth" : 32
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._next_id17"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 112,
+ "column" : 32,
+ "source_fragment" : "= next_id; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.next.output_simple",
"id" : 50,
"runtime_data" : [
{
@@ -4245,70 +3770,8 @@
]
},
{
- "name" : "FabricIngress.next.set_next_id_xconnect",
- "id" : 51,
- "runtime_data" : [
- {
- "name" : "next_id",
- "bitwidth" : 32
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 100,
- "column" : 32,
- "source_fragment" : "= next_id; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricIngress.next.output_simple",
- "id" : 52,
- "runtime_data" : [
- {
- "name" : "port_num",
- "bitwidth" : 9
- }
- ],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["standard_metadata", "egress_spec"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 31,
- "column" : 5,
- "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
- }
- }
- ]
- },
- {
"name" : "FabricIngress.next.routing_simple",
- "id" : 53,
+ "id" : 51,
"runtime_data" : [
{
"name" : "port_num",
@@ -4385,7 +3848,7 @@
},
{
"name" : "FabricIngress.next.mpls_routing_simple",
- "id" : 54,
+ "id" : 52,
"runtime_data" : [
{
"name" : "port_num",
@@ -4410,7 +3873,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
{
"type" : "runtime_data",
@@ -4485,7 +3948,7 @@
},
{
"name" : "FabricIngress.next.output_hashed",
- "id" : 55,
+ "id" : 53,
"runtime_data" : [
{
"name" : "port_num",
@@ -4516,7 +3979,7 @@
},
{
"name" : "FabricIngress.next.routing_hashed",
- "id" : 56,
+ "id" : 54,
"runtime_data" : [
{
"name" : "port_num",
@@ -4593,7 +4056,7 @@
},
{
"name" : "FabricIngress.next.mpls_routing_hashed",
- "id" : 57,
+ "id" : 55,
"runtime_data" : [
{
"name" : "port_num",
@@ -4618,7 +4081,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
{
"type" : "runtime_data",
@@ -4693,7 +4156,7 @@
},
{
"name" : "FabricIngress.next.set_mcast_group_id",
- "id" : 58,
+ "id" : 56,
"runtime_data" : [
{
"name" : "group_id",
@@ -4715,7 +4178,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 213,
+ "line" : 225,
"column" : 8,
"source_fragment" : "standard_metadata.mcast_grp = group_id"
}
@@ -4725,7 +4188,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast18"]
},
{
"type" : "expression",
@@ -4744,7 +4207,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 214,
+ "line" : 226,
"column" : 37,
"source_fragment" : "= true; ..."
}
@@ -4753,7 +4216,7 @@
},
{
"name" : "act",
- "id" : 59,
+ "id" : 57,
"runtime_data" : [],
"primitives" : [
{
@@ -4789,7 +4252,7 @@
},
{
"name" : "act_0",
- "id" : 60,
+ "id" : 58,
"runtime_data" : [],
"primitives" : [
{
@@ -4849,7 +4312,7 @@
},
{
"name" : "act_1",
- "id" : 61,
+ "id" : 59,
"runtime_data" : [],
"primitives" : [
{
@@ -4875,7 +4338,7 @@
},
{
"name" : "act_2",
- "id" : 62,
+ "id" : 60,
"runtime_data" : [],
"primitives" : [
{
@@ -4897,7 +4360,7 @@
},
{
"name" : "act_3",
- "id" : 63,
+ "id" : 61,
"runtime_data" : [],
"primitives" : [
{
@@ -4961,7 +4424,7 @@
},
{
"name" : "act_4",
- "id" : 64,
+ "id" : 62,
"runtime_data" : [],
"primitives" : [
{
@@ -5003,7 +4466,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out19"]
},
{
"type" : "expression",
@@ -5041,7 +4504,7 @@
},
{
"name" : "act_5",
- "id" : 65,
+ "id" : 63,
"runtime_data" : [],
"primitives" : [
{
@@ -5049,26 +4512,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
- },
- {
- "type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- }
- ],
- "source_info" : {
- "filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "field",
@@ -5077,7 +4521,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 106,
+ "line" : 110,
"column" : 36,
"source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
}
@@ -5087,7 +4531,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
},
{
"type" : "field",
@@ -5096,7 +4540,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 107,
+ "line" : 111,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.pri; ..."
}
@@ -5106,7 +4550,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
},
{
"type" : "field",
@@ -5115,7 +4559,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 108,
+ "line" : 112,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.cfi; ..."
}
@@ -5124,7 +4568,7 @@
},
{
"name" : "act_6",
- "id" : 66,
+ "id" : 64,
"runtime_data" : [],
"primitives" : [
{
@@ -5132,7 +4576,71 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "vlan_id"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 116,
+ "column" : 42,
+ "source_fragment" : "= hdr.inner_vlan_tag.vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_pri10"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "pri"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 117,
+ "column" : 43,
+ "source_fragment" : "= hdr.inner_vlan_tag.pri; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_cfi11"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "cfi"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 118,
+ "column" : 43,
+ "source_fragment" : "= hdr.inner_vlan_tag.cfi; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_7",
+ "id" : 65,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl13"]
},
{
"type" : "hexstr",
@@ -5141,7 +4649,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
}
@@ -5149,7 +4657,33 @@
]
},
{
- "name" : "act_7",
+ "name" : "act_8",
+ "id" : 66,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8847"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 108,
+ "column" : 31,
+ "source_fragment" : "0x8847; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_9",
"id" : 67,
"runtime_data" : [],
"primitives" : [
@@ -5158,6 +4692,84 @@
"parameters" : [
{
"type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "= hdr.inner_vlan_tag.eth_type; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_10",
+ "id" : 68,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_11",
+ "id" : 69,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["ethernet", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "= hdr.ethernet.eth_type; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_12",
+ "id" : 70,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
"value" : ["scalars", "spgw_ingress_tmp"]
},
{
@@ -5179,8 +4791,8 @@
]
},
{
- "name" : "act_8",
- "id" : 68,
+ "name" : "act_13",
+ "id" : 71,
"runtime_data" : [],
"primitives" : [
{
@@ -5209,8 +4821,8 @@
]
},
{
- "name" : "act_9",
- "id" : 69,
+ "name" : "act_14",
+ "id" : 72,
"runtime_data" : [],
"primitives" : [
{
@@ -5231,8 +4843,8 @@
]
},
{
- "name" : "act_10",
- "id" : 70,
+ "name" : "act_15",
+ "id" : 73,
"runtime_data" : [],
"primitives" : [
{
@@ -5240,7 +4852,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction23"]
},
{
"type" : "hexstr",
@@ -5257,8 +4869,8 @@
]
},
{
- "name" : "act_11",
- "id" : 71,
+ "name" : "act_16",
+ "id" : 74,
"runtime_data" : [],
"primitives" : [
{
@@ -5287,8 +4899,8 @@
]
},
{
- "name" : "act_12",
- "id" : 72,
+ "name" : "act_17",
+ "id" : 75,
"runtime_data" : [],
"primitives" : [
{
@@ -5317,8 +4929,8 @@
]
},
{
- "name" : "act_13",
- "id" : 73,
+ "name" : "act_18",
+ "id" : 76,
"runtime_data" : [],
"primitives" : [
{
@@ -5326,7 +4938,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction23"]
},
{
"type" : "hexstr",
@@ -5343,8 +4955,8 @@
]
},
{
- "name" : "act_14",
- "id" : 74,
+ "name" : "act_19",
+ "id" : 77,
"runtime_data" : [],
"primitives" : [
{
@@ -5352,7 +4964,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction23"]
},
{
"type" : "hexstr",
@@ -5398,8 +5010,8 @@
]
},
{
- "name" : "act_15",
- "id" : 75,
+ "name" : "act_20",
+ "id" : 78,
"runtime_data" : [],
"primitives" : [
{
@@ -5428,8 +5040,8 @@
]
},
{
- "name" : "act_16",
- "id" : 76,
+ "name" : "act_21",
+ "id" : 79,
"runtime_data" : [],
"primitives" : [
{
@@ -5437,7 +5049,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len24"]
},
{
"type" : "field",
@@ -5454,628 +5066,8 @@
]
},
{
- "name" : "act_17",
- "id" : 77,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
- },
- {
- "type" : "hexstr",
- "value" : "0x01"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../header.p4",
- "line" : 156,
- "column" : 37,
- "source_fragment" : "2w0x1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ]
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 47,
- "column" : 4,
- "source_fragment" : "bool drop = false;"
- }
- }
- ]
- },
- {
- "name" : "act_18",
- "id" : 78,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_tmp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_19",
- "id" : 79,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_tmp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_20",
- "id" : 80,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 157,
- "column" : 12,
- "source_fragment" : "return"
- }
- }
- ]
- },
- {
- "name" : "act_21",
- "id" : 81,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.upstream.c_dropped"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 163,
- "column" : 16,
- "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
- }
- }
- ]
- },
- {
"name" : "act_22",
- "id" : 82,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "key_0"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : ">>",
- "left" : {
- "type" : "field",
- "value" : ["ipv6", "src_addr"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x40"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffffffffffffffffffffffffffff"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffffffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 140,
- "column" : 12,
- "source_fragment" : "hdr.ipv6.src_addr[127:64]"
- }
- }
- ]
- },
- {
- "name" : "act_23",
- "id" : 83,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "count",
- "parameters" : [
- {
- "type" : "counter_array",
- "value" : "FabricIngress.bng_ingress.upstream.c_dropped"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 170,
- "column" : 16,
- "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
- }
- }
- ]
- },
- {
- "name" : "act_24",
- "id" : 84,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_25",
- "id" : 85,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_26",
- "id" : 86,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "execute_meter",
- "parameters" : [
- {
- "type" : "meter_array",
- "value" : "FabricIngress.bng_ingress.downstream.m_prio"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result23"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 293,
- "column" : 20,
- "source_fragment" : "m_prio.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- }
- }
- ]
- },
- {
- "name" : "act_27",
- "id" : 87,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "execute_meter",
- "parameters" : [
- {
- "type" : "meter_array",
- "value" : "FabricIngress.bng_ingress.downstream.m_besteff"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result23"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 296,
- "column" : 20,
- "source_fragment" : "m_besteff.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- }
- }
- ]
- },
- {
- "name" : "act_28",
- "id" : 88,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp_0"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_29",
- "id" : 89,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp_0"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ]
- }
- ]
- },
- {
- "name" : "act_30",
- "id" : 90,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "key_1"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : ">>",
- "left" : {
- "type" : "field",
- "value" : ["ipv6", "dst_addr"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x40"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffffffffffffffffffffffffffff"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffffffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 228,
- "column" : 12,
- "source_fragment" : "hdr.ipv6.dst_addr[127:64]"
- }
- }
- ]
- },
- {
- "name" : "act_31",
- "id" : 91,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "execute_meter",
- "parameters" : [
- {
- "type" : "meter_array",
- "value" : "FabricIngress.bng_ingress.downstream.m_prio"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result23"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 307,
- "column" : 20,
- "source_fragment" : "m_prio.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- }
- }
- ]
- },
- {
- "name" : "act_32",
- "id" : 92,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "execute_meter",
- "parameters" : [
- {
- "type" : "meter_array",
- "value" : "FabricIngress.bng_ingress.downstream.m_besteff"
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result23"]
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 310,
- "column" : 20,
- "source_fragment" : "m_besteff.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- }
- }
- ]
- },
- {
- "name" : "act_33",
- "id" : 93,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 190,
- "column" : 4,
- "source_fragment" : "bool prio = false;"
- }
- }
- ]
- },
- {
- "name" : "act_34",
- "id" : 94,
+ "id" : 80,
"runtime_data" : [],
"primitives" : [
{
@@ -6132,8 +5124,8 @@
]
},
{
- "name" : "act_35",
- "id" : 95,
+ "name" : "act_23",
+ "id" : 81,
"runtime_data" : [],
"primitives" : [
{
@@ -6190,8 +5182,8 @@
]
},
{
- "name" : "act_36",
- "id" : 96,
+ "name" : "act_24",
+ "id" : 82,
"runtime_data" : [],
"primitives" : [
{
@@ -6216,10 +5208,530 @@
]
},
{
- "name" : "nop",
+ "name" : "act_25",
+ "id" : 83,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_s_tag"]
+ },
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "vlan_id"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 339,
+ "column" : 16,
+ "source_fragment" : "s_tag = hdr.vlan_tag.vlan_id"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_c_tag"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "vlan_id"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 340,
+ "column" : 16,
+ "source_fragment" : "c_tag = hdr.inner_vlan_tag.vlan_id"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_26",
+ "id" : 84,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_s_tag"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 344,
+ "column" : 16,
+ "source_fragment" : "s_tag = fmeta.vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_c_tag"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 345,
+ "column" : 16,
+ "source_fragment" : "c_tag = fmeta.inner_vlan_id; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_27",
+ "id" : 85,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_28",
+ "id" : 86,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_29",
+ "id" : 87,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_type28"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x01"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../header.p4",
+ "line" : 156,
+ "column" : 37,
+ "source_fragment" : "2w0x1; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_30",
+ "id" : 88,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 124,
+ "column" : 12,
+ "source_fragment" : "return"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_31",
+ "id" : 89,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.upstream.c_dropped"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 129,
+ "column" : 20,
+ "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_32",
+ "id" : 90,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "count",
+ "parameters" : [
+ {
+ "type" : "counter_array",
+ "value" : "FabricIngress.bng_ingress.upstream.c_dropped"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 137,
+ "column" : 19,
+ "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_33",
+ "id" : 91,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "key_0"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : ">>",
+ "left" : {
+ "type" : "field",
+ "value" : ["ipv6", "src_addr"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x40"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffffffffffffffffffffffffffff"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 110,
+ "column" : 12,
+ "source_fragment" : "hdr.ipv6.src_addr[127:64]"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_34",
+ "id" : 92,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_downstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_35",
+ "id" : 93,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_downstream_tmp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_36",
+ "id" : 94,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "execute_meter",
+ "parameters" : [
+ {
+ "type" : "meter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.m_prio"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result31"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 236,
+ "column" : 24,
+ "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_37",
+ "id" : 95,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "execute_meter",
+ "parameters" : [
+ {
+ "type" : "meter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.m_besteff"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result31"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 239,
+ "column" : 24,
+ "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_38",
+ "id" : 96,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "execute_meter",
+ "parameters" : [
+ {
+ "type" : "meter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.m_prio"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result31"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 248,
+ "column" : 24,
+ "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_39",
"id" : 97,
"runtime_data" : [],
- "primitives" : []
+ "primitives" : [
+ {
+ "op" : "execute_meter",
+ "parameters" : [
+ {
+ "type" : "meter_array",
+ "value" : "FabricIngress.bng_ingress.downstream.m_besteff"
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_ds_meter_result31"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 251,
+ "column" : 24,
+ "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ }
+ }
+ ]
},
{
"name" : "nop",
@@ -6499,7 +6011,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr26"]
}
],
"source_info" : {
@@ -6518,7 +6030,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr27"]
}
],
"source_info" : {
@@ -6619,7 +6131,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len24"]
},
"right" : {
"type" : "hexstr",
@@ -6818,7 +6330,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len24"]
}
],
"source_info" : {
@@ -6837,7 +6349,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid25"]
}
],
"source_info" : {
@@ -6852,75 +6364,13 @@
{
"name" : "FabricEgress.bng_egress.downstream.encap_v4",
"id" : 105,
- "runtime_data" : [
- {
- "name" : "c_tag",
- "bitwidth" : 12
- },
- {
- "name" : "pppoe_session_id",
- "bitwidth" : 16
- }
- ],
+ "runtime_data" : [],
"primitives" : [
{
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- },
- {
- "type" : "hexstr",
- "value" : "0x8100"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 107,
- "column" : 31,
- "source_fragment" : "0x8100; ..."
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "inner_vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 331,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["inner_vlan_tag", "vlan_id"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 332,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.vlan_id = c_tag; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
"value" : ["inner_vlan_tag", "eth_type"]
},
{
@@ -6945,7 +6395,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 334,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.pppoe.setValid()"
}
@@ -6964,7 +6414,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 335,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.pppoe.version = 4w1"
}
@@ -6983,7 +6433,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 336,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.pppoe.type_id = 4w1"
}
@@ -7002,7 +6452,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 337,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.pppoe.code = 8w0"
}
@@ -7015,15 +6465,15 @@
"value" : ["pppoe", "session_id"]
},
{
- "type" : "runtime_data",
- "value" : 1
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_pppoe_session_id30"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 338,
+ "line" : 275,
"column" : 8,
- "source_fragment" : "hdr.pppoe.session_id = pppoe_session_id; ..."
+ "source_fragment" : "hdr.pppoe.session_id = fmeta.bng.pppoe_session_id; ..."
}
},
{
@@ -7035,12 +6485,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 339,
+ "line" : 276,
"column" : 8,
"source_fragment" : "c_line_tx.count(fmeta.bng.line_id)"
}
@@ -7082,7 +6532,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 344,
+ "line" : 281,
"column" : 8,
"source_fragment" : "hdr.pppoe.length = hdr.ipv4.total_len + 16w2"
}
@@ -7111,75 +6561,13 @@
{
"name" : "FabricEgress.bng_egress.downstream.encap_v6",
"id" : 106,
- "runtime_data" : [
- {
- "name" : "c_tag",
- "bitwidth" : 12
- },
- {
- "name" : "pppoe_session_id",
- "bitwidth" : 16
- }
- ],
+ "runtime_data" : [],
"primitives" : [
{
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- },
- {
- "type" : "hexstr",
- "value" : "0x8100"
- }
- ],
- "source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 107,
- "column" : 31,
- "source_fragment" : "0x8100; ..."
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "inner_vlan_tag"
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 331,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["inner_vlan_tag", "vlan_id"]
- },
- {
- "type" : "runtime_data",
- "value" : 0
- }
- ],
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 332,
- "column" : 8,
- "source_fragment" : "hdr.inner_vlan_tag.vlan_id = c_tag; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
"value" : ["inner_vlan_tag", "eth_type"]
},
{
@@ -7204,7 +6592,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 334,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.pppoe.setValid()"
}
@@ -7223,7 +6611,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 335,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.pppoe.version = 4w1"
}
@@ -7242,7 +6630,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 336,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.pppoe.type_id = 4w1"
}
@@ -7261,7 +6649,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 337,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.pppoe.code = 8w0"
}
@@ -7274,15 +6662,15 @@
"value" : ["pppoe", "session_id"]
},
{
- "type" : "runtime_data",
- "value" : 1
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._bng_pppoe_session_id30"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 338,
+ "line" : 275,
"column" : 8,
- "source_fragment" : "hdr.pppoe.session_id = pppoe_session_id; ..."
+ "source_fragment" : "hdr.pppoe.session_id = fmeta.bng.pppoe_session_id; ..."
}
},
{
@@ -7294,12 +6682,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_line_id22"]
+ "value" : ["scalars", "fabric_metadata_t._bng_line_id29"]
}
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 339,
+ "line" : 276,
"column" : 8,
"source_fragment" : "c_line_tx.count(fmeta.bng.line_id)"
}
@@ -7341,7 +6729,7 @@
],
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 351,
+ "line" : 288,
"column" : 8,
"source_fragment" : "hdr.pppoe.length = hdr.ipv6.payload_len + 16w42"
}
@@ -7728,7 +7116,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
}
],
"source_info" : {
@@ -7877,7 +7265,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_transit25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_transit33"]
},
{
"type" : "expression",
@@ -7906,7 +7294,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
},
{
"type" : "runtime_data",
@@ -8004,7 +7392,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -8018,7 +7406,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -8046,7 +7434,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -8060,7 +7448,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -8129,7 +7517,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -8143,7 +7531,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -8171,7 +7559,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -8185,7 +7573,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -8320,7 +7708,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -8334,7 +7722,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -8362,7 +7750,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -8376,7 +7764,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -8490,7 +7878,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -8504,7 +7892,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -8532,7 +7920,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -8546,7 +7934,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -8726,7 +8114,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -8740,7 +8128,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -8768,7 +8156,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -8782,7 +8170,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -8930,7 +8318,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -8944,7 +8332,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -8972,7 +8360,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -8986,7 +8374,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -9200,7 +8588,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -9214,7 +8602,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -9242,7 +8630,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -9256,7 +8644,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -9310,7 +8698,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -9325,7 +8713,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -9339,7 +8727,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -9367,7 +8755,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -9381,7 +8769,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -9501,7 +8889,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -9516,7 +8904,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -9530,7 +8918,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -9558,7 +8946,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -9572,7 +8960,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -9660,7 +9048,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -9675,7 +9063,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -9689,7 +9077,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -9717,7 +9105,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -9731,7 +9119,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -9885,7 +9273,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -9900,7 +9288,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -9914,7 +9302,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -9942,7 +9330,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -9956,7 +9344,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -10089,7 +9477,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -10104,7 +9492,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -10118,7 +9506,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -10146,7 +9534,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -10160,7 +9548,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -10359,7 +9747,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -10374,7 +9762,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -10388,7 +9776,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -10416,7 +9804,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -10430,7 +9818,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -10597,7 +9985,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -10612,7 +10000,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -10626,7 +10014,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -10654,7 +10042,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -10668,7 +10056,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -10901,7 +10289,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id35"]
}
],
"source_info" : {
@@ -10916,7 +10304,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -10930,7 +10318,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -10958,7 +10346,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -10972,7 +10360,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -11047,7 +10435,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -11061,7 +10449,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -11089,7 +10477,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -11103,7 +10491,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -11191,7 +10579,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -11205,7 +10593,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -11233,7 +10621,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -11247,7 +10635,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -11369,7 +10757,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -11383,7 +10771,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -11411,7 +10799,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -11425,7 +10813,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -11517,7 +10905,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -11531,7 +10919,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -11559,7 +10947,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -11573,7 +10961,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -11699,7 +11087,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -11713,7 +11101,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -11741,7 +11129,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -11755,7 +11143,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -11900,7 +11288,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -11914,7 +11302,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -11942,7 +11330,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -11956,7 +11344,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -12135,7 +11523,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -12149,7 +11537,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -12177,7 +11565,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -12191,7 +11579,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -12260,7 +11648,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -12274,7 +11662,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -12302,7 +11690,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -12316,7 +11704,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -12419,7 +11807,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -12433,7 +11821,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -12461,7 +11849,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -12475,7 +11863,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -12597,7 +11985,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -12611,7 +11999,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -12639,7 +12027,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -12653,7 +12041,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -12809,7 +12197,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -12823,7 +12211,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -12851,7 +12239,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -12865,7 +12253,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -12991,7 +12379,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -13005,7 +12393,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -13033,7 +12421,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -13047,7 +12435,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -13207,7 +12595,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -13221,7 +12609,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -13249,7 +12637,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -13263,7 +12651,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -13442,7 +12830,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -13456,7 +12844,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -13484,7 +12872,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -13498,7 +12886,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -13711,7 +13099,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
{
"type" : "expression",
@@ -13725,7 +13113,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
},
"right" : {
"type" : "hexstr",
@@ -13753,7 +13141,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
{
"type" : "expression",
@@ -13767,7 +13155,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
},
"right" : {
"type" : "hexstr",
@@ -14830,7 +14218,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 252,
+ "line" : 264,
"column" : 8,
"source_fragment" : "hdr.mpls.setInvalid()"
}
@@ -14840,17 +14228,17 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 254,
- "column" : 33,
+ "line" : 266,
+ "column" : 38,
"source_fragment" : "= fabric_metadata.ip_eth_type; ..."
}
}
@@ -14871,7 +14259,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 259,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.mpls.setValid()"
}
@@ -14885,12 +14273,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 260,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
}
@@ -14909,7 +14297,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 261,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.mpls.tc = 3w0"
}
@@ -14928,7 +14316,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 262,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.mpls.bos = 1w1"
}
@@ -14942,12 +14330,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl13"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 263,
+ "line" : 275,
"column" : 8,
"source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
}
@@ -14957,7 +14345,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "hexstr",
@@ -14988,7 +14376,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 271,
+ "line" : 283,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setValid()"
}
@@ -15002,12 +14390,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 272,
+ "line" : 284,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
}
@@ -15021,12 +14409,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 273,
+ "line" : 285,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
}
@@ -15040,14 +14428,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 274,
+ "line" : 286,
"column" : 8,
- "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -15059,12 +14447,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 275,
+ "line" : 287,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
}
@@ -15091,11 +14479,245 @@
]
},
{
- "name" : "FabricEgress.egress_next.pop_vlan",
+ "name" : "FabricEgress.egress_next.push_vlan",
"id" : 147,
"runtime_data" : [],
"primitives" : [
{
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "vlan_tag"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 283,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "cfi"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 284,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "pri"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 285,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 286,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "vlan_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 287,
+ "column" : 8,
+ "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["ethernet", "eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.egress_next.push_inner_vlan",
+ "id" : 148,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "inner_vlan_tag"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 296,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "cfi"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_cfi11"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 297,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.cfi = fabric_metadata.inner_vlan_cfi; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "pri"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_pri10"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 298,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.pri = fabric_metadata.inner_vlan_pri; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "vlan_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._inner_vlan_id9"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 299,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.vlan_id = fabric_metadata.inner_vlan_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 300,
+ "column" : 8,
+ "source_fragment" : "hdr.inner_vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.egress_next.pop_vlan",
+ "id" : 149,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "assign",
"parameters" : [
{
@@ -15104,14 +14726,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 286,
+ "line" : 312,
"column" : 8,
- "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -15124,7 +14746,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 287,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -15132,8 +14754,8 @@
]
},
{
- "name" : "act_37",
- "id" : 148,
+ "name" : "act_40",
+ "id" : 150,
"runtime_data" : [],
"primitives" : [
{
@@ -15149,8 +14771,8 @@
]
},
{
- "name" : "act_38",
- "id" : 149,
+ "name" : "act_41",
+ "id" : 151,
"runtime_data" : [],
"primitives" : [
{
@@ -15200,8 +14822,8 @@
]
},
{
- "name" : "act_39",
- "id" : 150,
+ "name" : "act_42",
+ "id" : 152,
"runtime_data" : [],
"primitives" : [
{
@@ -15214,7 +14836,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -15222,8 +14844,8 @@
]
},
{
- "name" : "act_40",
- "id" : 151,
+ "name" : "act_43",
+ "id" : 153,
"runtime_data" : [],
"primitives" : [
{
@@ -15252,8 +14874,8 @@
]
},
{
- "name" : "act_41",
- "id" : 152,
+ "name" : "act_44",
+ "id" : 154,
"runtime_data" : [],
"primitives" : [
{
@@ -15282,8 +14904,30 @@
]
},
{
- "name" : "act_42",
- "id" : 153,
+ "name" : "act_45",
+ "id" : 155,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "remove_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "inner_vlan_tag"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 350,
+ "column" : 12,
+ "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_46",
+ "id" : 156,
"runtime_data" : [],
"primitives" : [
{
@@ -15296,7 +14940,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -15304,8 +14948,8 @@
]
},
{
- "name" : "act_43",
- "id" : 154,
+ "name" : "act_47",
+ "id" : 157,
"runtime_data" : [],
"primitives" : [
{
@@ -15345,7 +14989,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -15353,8 +14997,8 @@
]
},
{
- "name" : "act_44",
- "id" : 155,
+ "name" : "act_48",
+ "id" : 158,
"runtime_data" : [],
"primitives" : [
{
@@ -15367,7 +15011,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -15375,8 +15019,8 @@
]
},
{
- "name" : "act_45",
- "id" : 156,
+ "name" : "act_49",
+ "id" : 159,
"runtime_data" : [],
"primitives" : [
{
@@ -15416,7 +15060,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -15424,8 +15068,8 @@
]
},
{
- "name" : "act_46",
- "id" : 157,
+ "name" : "act_50",
+ "id" : 160,
"runtime_data" : [],
"primitives" : [
{
@@ -15438,7 +15082,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 336,
+ "line" : 376,
"column" : 45,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -15446,8 +15090,8 @@
]
},
{
- "name" : "act_47",
- "id" : 158,
+ "name" : "act_51",
+ "id" : 161,
"runtime_data" : [],
"primitives" : [
{
@@ -15487,7 +15131,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 335,
+ "line" : 375,
"column" : 16,
"source_fragment" : "hdr.ipv6.hop_limit = hdr.ipv6.hop_limit - 1"
}
@@ -15495,8 +15139,8 @@
]
},
{
- "name" : "act_48",
- "id" : 159,
+ "name" : "act_52",
+ "id" : 162,
"runtime_data" : [],
"primitives" : [
{
@@ -15525,8 +15169,8 @@
]
},
{
- "name" : "act_49",
- "id" : 160,
+ "name" : "act_53",
+ "id" : 163,
"runtime_data" : [],
"primitives" : [
{
@@ -15561,8 +15205,8 @@
]
},
{
- "name" : "act_50",
- "id" : 161,
+ "name" : "act_54",
+ "id" : 164,
"runtime_data" : [],
"primitives" : [
{
@@ -15588,7 +15232,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
}
}
},
@@ -15610,8 +15254,8 @@
]
},
{
- "name" : "act_51",
- "id" : 162,
+ "name" : "act_55",
+ "id" : 165,
"runtime_data" : [],
"primitives" : [
{
@@ -15659,8 +15303,8 @@
]
},
{
- "name" : "act_52",
- "id" : 163,
+ "name" : "act_56",
+ "id" : 166,
"runtime_data" : [],
"primitives" : [
{
@@ -15686,7 +15330,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes37"]
}
}
},
@@ -15708,8 +15352,8 @@
]
},
{
- "name" : "act_53",
- "id" : 164,
+ "name" : "act_57",
+ "id" : 167,
"runtime_data" : [],
"primitives" : [
{
@@ -15735,7 +15379,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words36"]
}
}
},
@@ -15785,14 +15429,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [60],
+ "action_ids" : [58],
"actions" : ["act_0"],
"base_default_next" : "node_3",
"next_tables" : {
"act_0" : "node_3"
},
"default_entry" : {
- "action_id" : 60,
+ "action_id" : 58,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15814,14 +15458,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [59],
+ "action_ids" : [57],
"actions" : ["act"],
"base_default_next" : "node_5",
"next_tables" : {
"act" : "node_5"
},
"default_entry" : {
- "action_id" : 59,
+ "action_id" : 57,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15843,14 +15487,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [63],
+ "action_ids" : [61],
"actions" : ["act_3"],
"base_default_next" : "node_7",
"next_tables" : {
"act_3" : "node_7"
},
"default_entry" : {
- "action_id" : 63,
+ "action_id" : 61,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15872,14 +15516,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [61],
+ "action_ids" : [59],
"actions" : ["act_1"],
"base_default_next" : "node_10",
"next_tables" : {
"act_1" : "node_10"
},
"default_entry" : {
- "action_id" : 61,
+ "action_id" : 59,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15901,14 +15545,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [62],
+ "action_ids" : [60],
"actions" : ["act_2"],
"base_default_next" : "node_10",
"next_tables" : {
"act_2" : "node_10"
},
"default_entry" : {
- "action_id" : 62,
+ "action_id" : 60,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15930,14 +15574,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [64],
+ "action_ids" : [62],
"actions" : ["act_4"],
"base_default_next" : "node_12",
"next_tables" : {
"act_4" : "node_12"
},
"default_entry" : {
- "action_id" : 64,
+ "action_id" : 62,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15948,9 +15592,9 @@
"id" : 6,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ "line" : 110,
+ "column" : 36,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
},
"key" : [],
"match_type" : "exact",
@@ -15959,14 +15603,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [65],
+ "action_ids" : [63],
"actions" : ["act_5"],
"base_default_next" : "node_14",
"next_tables" : {
"act_5" : "node_14"
},
"default_entry" : {
- "action_id" : 65,
+ "action_id" : 63,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15977,7 +15621,36 @@
"id" : 7,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 116,
+ "column" : 42,
+ "source_fragment" : "= hdr.inner_vlan_tag.vlan_id; ..."
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [64],
+ "actions" : ["act_6"],
+ "base_default_next" : "node_16",
+ "next_tables" : {
+ "act_6" : "node_16"
+ },
+ "default_entry" : {
+ "action_id" : 64,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_7",
+ "id" : 8,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 126,
"column" : 37,
"source_fragment" : "="
},
@@ -15988,11 +15661,40 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
+ "action_ids" : [65],
+ "actions" : ["act_7"],
+ "base_default_next" : "node_18",
+ "next_tables" : {
+ "act_7" : "node_18"
+ },
+ "default_entry" : {
+ "action_id" : 65,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_8",
+ "id" : 9,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 131,
+ "column" : 42,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
"action_ids" : [66],
- "actions" : ["act_6"],
+ "actions" : ["act_8"],
"base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
"next_tables" : {
- "act_6" : "FabricIngress.filtering.ingress_port_vlan"
+ "act_8" : "FabricIngress.filtering.ingress_port_vlan"
},
"default_entry" : {
"action_id" : 66,
@@ -16002,11 +15704,98 @@
}
},
{
- "name" : "FabricIngress.filtering.ingress_port_vlan",
- "id" : 8,
+ "name" : "tbl_act_9",
+ "id" : 10,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 51,
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [67],
+ "actions" : ["act_9"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_9" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 67,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_10",
+ "id" : 11,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [68],
+ "actions" : ["act_10"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_10" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 68,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_11",
+ "id" : 12,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [69],
+ "actions" : ["act_11"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_11" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 69,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "id" : 13,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 53,
"column" : 10,
"source_fragment" : "ingress_port_vlan"
},
@@ -16028,15 +15817,21 @@
"name" : "vlan_id",
"target" : ["vlan_tag", "vlan_id"],
"mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "inner_vlan_id",
+ "target" : ["inner_vlan_tag", "vlan_id"],
+ "mask" : null
}
],
"match_type" : "ternary",
"type" : "simple",
- "max_size" : 1024,
+ "max_size" : 8192,
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [35, 36, 37],
+ "action_ids" : [32, 33, 34],
"actions" : ["FabricIngress.filtering.deny", "FabricIngress.filtering.permit", "FabricIngress.filtering.permit_with_internal_vlan"],
"base_default_next" : "FabricIngress.filtering.fwd_classifier",
"next_tables" : {
@@ -16045,7 +15840,7 @@
"FabricIngress.filtering.permit_with_internal_vlan" : "FabricIngress.filtering.fwd_classifier"
},
"default_entry" : {
- "action_id" : 35,
+ "action_id" : 32,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16053,10 +15848,10 @@
},
{
"name" : "FabricIngress.filtering.fwd_classifier",
- "id" : 9,
+ "id" : 14,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 87,
+ "line" : 90,
"column" : 10,
"source_fragment" : "fwd_classifier"
},
@@ -16075,8 +15870,20 @@
},
{
"match_type" : "exact",
- "name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "name" : "is_ipv4",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv41"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_ipv6",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv62"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_mpls",
+ "target" : ["scalars", "fabric_metadata_t._is_mpls3"],
"mask" : null
}
],
@@ -16086,22 +15893,22 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [38],
+ "action_ids" : [35],
"actions" : ["FabricIngress.filtering.set_forwarding_type"],
- "base_default_next" : "tbl_act_7",
+ "base_default_next" : "tbl_act_12",
"next_tables" : {
- "FabricIngress.filtering.set_forwarding_type" : "tbl_act_7"
+ "FabricIngress.filtering.set_forwarding_type" : "tbl_act_12"
},
"default_entry" : {
- "action_id" : 38,
+ "action_id" : 35,
"action_const" : true,
"action_data" : ["0x0"],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_7",
- "id" : 10,
+ "name" : "tbl_act_12",
+ "id" : 15,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -16109,14 +15916,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [75],
- "actions" : ["act_15"],
- "base_default_next" : "node_19",
+ "action_ids" : [78],
+ "actions" : ["act_20"],
+ "base_default_next" : "node_28",
"next_tables" : {
- "act_15" : "node_19"
+ "act_20" : "node_28"
},
"default_entry" : {
- "action_id" : 75,
+ "action_id" : 78,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16124,7 +15931,7 @@
},
{
"name" : "FabricIngress.spgw_ingress.s1u_filter_table",
- "id" : 11,
+ "id" : 16,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 83,
@@ -16149,8 +15956,8 @@
"actions" : ["nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_8",
- "__MISS__" : "tbl_act_9"
+ "__HIT__" : "tbl_act_13",
+ "__MISS__" : "tbl_act_14"
},
"default_entry" : {
"action_id" : 1,
@@ -16160,8 +15967,8 @@
}
},
{
- "name" : "tbl_act_8",
- "id" : 12,
+ "name" : "tbl_act_13",
+ "id" : 17,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -16169,22 +15976,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [67],
- "actions" : ["act_7"],
- "base_default_next" : "node_23",
+ "action_ids" : [70],
+ "actions" : ["act_12"],
+ "base_default_next" : "node_32",
"next_tables" : {
- "act_7" : "node_23"
+ "act_12" : "node_32"
},
"default_entry" : {
- "action_id" : 67,
+ "action_id" : 70,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_9",
- "id" : 13,
+ "name" : "tbl_act_14",
+ "id" : 18,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -16192,22 +15999,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [68],
- "actions" : ["act_8"],
- "base_default_next" : "node_23",
+ "action_ids" : [71],
+ "actions" : ["act_13"],
+ "base_default_next" : "node_32",
"next_tables" : {
- "act_8" : "node_23"
+ "act_13" : "node_32"
},
"default_entry" : {
- "action_id" : 68,
+ "action_id" : 71,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_10",
- "id" : 14,
+ "name" : "tbl_act_15",
+ "id" : 19,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 149,
@@ -16221,22 +16028,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [69],
- "actions" : ["act_9"],
- "base_default_next" : "tbl_act_11",
+ "action_ids" : [72],
+ "actions" : ["act_14"],
+ "base_default_next" : "tbl_act_16",
"next_tables" : {
- "act_9" : "tbl_act_11"
+ "act_14" : "tbl_act_16"
},
"default_entry" : {
- "action_id" : 69,
+ "action_id" : 72,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_11",
- "id" : 15,
+ "name" : "tbl_act_16",
+ "id" : 20,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 151,
@@ -16250,14 +16057,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [70],
- "actions" : ["act_10"],
+ "action_ids" : [73],
+ "actions" : ["act_15"],
"base_default_next" : "tbl_spgw_ingress_gtpu_decap",
"next_tables" : {
- "act_10" : "tbl_spgw_ingress_gtpu_decap"
+ "act_15" : "tbl_spgw_ingress_gtpu_decap"
},
"default_entry" : {
- "action_id" : 70,
+ "action_id" : 73,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16265,7 +16072,7 @@
},
{
"name" : "tbl_spgw_ingress_gtpu_decap",
- "id" : 16,
+ "id" : 21,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 152,
@@ -16279,14 +16086,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [17],
+ "action_ids" : [16],
"actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
- "base_default_next" : "node_33",
+ "base_default_next" : "node_42",
"next_tables" : {
- "FabricIngress.spgw_ingress.gtpu_decap" : "node_33"
+ "FabricIngress.spgw_ingress.gtpu_decap" : "node_42"
},
"default_entry" : {
- "action_id" : 17,
+ "action_id" : 16,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16294,7 +16101,7 @@
},
{
"name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
- "id" : 17,
+ "id" : 22,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 70,
@@ -16315,12 +16122,12 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [18, 0],
+ "action_ids" : [17, 0],
"actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_12",
- "__MISS__" : "tbl_act_13"
+ "__HIT__" : "tbl_act_17",
+ "__MISS__" : "tbl_act_18"
},
"default_entry" : {
"action_id" : 0,
@@ -16330,8 +16137,8 @@
}
},
{
- "name" : "tbl_act_12",
- "id" : 18,
+ "name" : "tbl_act_17",
+ "id" : 23,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -16339,22 +16146,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [71],
- "actions" : ["act_11"],
- "base_default_next" : "node_30",
+ "action_ids" : [74],
+ "actions" : ["act_16"],
+ "base_default_next" : "node_39",
"next_tables" : {
- "act_11" : "node_30"
+ "act_16" : "node_39"
},
"default_entry" : {
- "action_id" : 71,
+ "action_id" : 74,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_13",
- "id" : 19,
+ "name" : "tbl_act_18",
+ "id" : 24,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -16362,22 +16169,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [72],
- "actions" : ["act_12"],
- "base_default_next" : "node_30",
+ "action_ids" : [75],
+ "actions" : ["act_17"],
+ "base_default_next" : "node_39",
"next_tables" : {
- "act_12" : "node_30"
+ "act_17" : "node_39"
},
"default_entry" : {
- "action_id" : 72,
+ "action_id" : 75,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_14",
- "id" : 20,
+ "name" : "tbl_act_19",
+ "id" : 25,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 154,
@@ -16391,22 +16198,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [73],
- "actions" : ["act_13"],
- "base_default_next" : "node_33",
+ "action_ids" : [76],
+ "actions" : ["act_18"],
+ "base_default_next" : "node_42",
"next_tables" : {
- "act_13" : "node_33"
+ "act_18" : "node_42"
},
"default_entry" : {
- "action_id" : 73,
+ "action_id" : 76,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_15",
- "id" : 21,
+ "name" : "tbl_act_20",
+ "id" : 26,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 156,
@@ -16420,22 +16227,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [74],
- "actions" : ["act_14"],
- "base_default_next" : "node_33",
+ "action_ids" : [77],
+ "actions" : ["act_19"],
+ "base_default_next" : "node_42",
"next_tables" : {
- "act_14" : "node_33"
+ "act_19" : "node_42"
},
"default_entry" : {
- "action_id" : 74,
+ "action_id" : 77,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_16",
- "id" : 22,
+ "name" : "tbl_act_21",
+ "id" : 27,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 175,
@@ -16449,172 +16256,11 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [76],
- "actions" : ["act_16"],
- "base_default_next" : "node_35",
- "next_tables" : {
- "act_16" : "node_35"
- },
- "default_entry" : {
- "action_id" : 76,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_17",
- "id" : 23,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 47,
- "column" : 4,
- "source_fragment" : "bool drop = false; ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [77],
- "actions" : ["act_17"],
- "base_default_next" : "FabricIngress.bng_ingress.upstream.t_line_map",
- "next_tables" : {
- "act_17" : "FabricIngress.bng_ingress.upstream.t_line_map"
- },
- "default_entry" : {
- "action_id" : 77,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.t_line_map",
- "id" : 24,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 56,
- "column" : 10,
- "source_fragment" : "t_line_map"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "s_tag",
- "target" : ["vlan_tag", "vlan_id"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "c_tag",
- "target" : ["inner_vlan_tag", "vlan_id"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 8192,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [2, 19],
- "actions" : ["nop", "FabricIngress.bng_ingress.upstream.set_line"],
- "base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
- "next_tables" : {
- "nop" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
- "FabricIngress.bng_ingress.upstream.set_line" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp"
- },
- "default_entry" : {
- "action_id" : 2,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
- "id" : 25,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 79,
- "column" : 10,
- "source_fragment" : "t_pppoe_cp"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "pppoe_code",
- "target" : ["pppoe", "code"],
- "mask" : null
- },
- {
- "match_type" : "ternary",
- "name" : "pppoe_protocol",
- "target" : ["pppoe", "protocol"],
- "mask" : null
- }
- ],
- "match_type" : "ternary",
- "type" : "simple",
- "max_size" : 16,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [20, 3],
- "actions" : ["FabricIngress.bng_ingress.upstream.punt_to_cpu", "nop"],
- "base_default_next" : null,
- "next_tables" : {
- "__HIT__" : "tbl_act_18",
- "__MISS__" : "tbl_act_19"
- },
- "default_entry" : {
- "action_id" : 3,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_18",
- "id" : 26,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [78],
- "actions" : ["act_18"],
- "base_default_next" : "node_41",
- "next_tables" : {
- "act_18" : "node_41"
- },
- "default_entry" : {
- "action_id" : 78,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_19",
- "id" : 27,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
"action_ids" : [79],
- "actions" : ["act_19"],
- "base_default_next" : "node_41",
+ "actions" : ["act_21"],
+ "base_default_next" : "node_44",
"next_tables" : {
- "act_19" : "node_41"
+ "act_21" : "node_44"
},
"default_entry" : {
"action_id" : 79,
@@ -16624,666 +16270,8 @@
}
},
{
- "name" : "tbl_act_20",
- "id" : 28,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 157,
- "column" : 12,
- "source_fragment" : "return"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [80],
- "actions" : ["act_20"],
- "base_default_next" : "node_43",
- "next_tables" : {
- "act_20" : "node_43"
- },
- "default_entry" : {
- "action_id" : 80,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
- "id" : 29,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 118,
- "column" : 10,
- "source_fragment" : "t_pppoe_term_v4"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id22"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "ipv4_src",
- "target" : ["ipv4", "src_addr"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "pppoe_session_id",
- "target" : ["pppoe", "session_id"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 32768,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [23, 21],
- "actions" : ["FabricIngress.bng_ingress.upstream.term_enabled_v4", "FabricIngress.bng_ingress.upstream.term_disabled"],
- "base_default_next" : "node_46",
- "next_tables" : {
- "FabricIngress.bng_ingress.upstream.term_enabled_v4" : "node_46",
- "FabricIngress.bng_ingress.upstream.term_disabled" : "node_46"
- },
- "default_entry" : {
- "action_id" : 21,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_21",
- "id" : 30,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 163,
- "column" : 16,
- "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [81],
- "actions" : ["act_21"],
- "base_default_next" : "node_73",
- "next_tables" : {
- "act_21" : "node_73"
- },
- "default_entry" : {
- "action_id" : 81,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_22",
- "id" : 31,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 140,
- "column" : 12,
- "source_fragment" : "hdr.ipv6.src_addr[127:64]"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [82],
- "actions" : ["act_22"],
- "base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6",
- "next_tables" : {
- "act_22" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6"
- },
- "default_entry" : {
- "action_id" : 82,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6",
- "id" : 32,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 137,
- "column" : 10,
- "source_fragment" : "t_pppoe_term_v6"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id22"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "ipv6_src_net_id",
- "target" : ["scalars", "key_0"],
- "mask" : null
- },
- {
- "match_type" : "exact",
- "name" : "pppoe_session_id",
- "target" : ["pppoe", "session_id"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 32768,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [24, 22],
- "actions" : ["FabricIngress.bng_ingress.upstream.term_enabled_v6", "FabricIngress.bng_ingress.upstream.term_disabled"],
- "base_default_next" : "node_51",
- "next_tables" : {
- "FabricIngress.bng_ingress.upstream.term_enabled_v6" : "node_51",
- "FabricIngress.bng_ingress.upstream.term_disabled" : "node_51"
- },
- "default_entry" : {
- "action_id" : 22,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_23",
- "id" : 33,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 170,
- "column" : 16,
- "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [83],
- "actions" : ["act_23"],
- "base_default_next" : "node_73",
- "next_tables" : {
- "act_23" : "node_73"
- },
- "default_entry" : {
- "action_id" : 83,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_24",
- "id" : 34,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 190,
- "column" : 4,
- "source_fragment" : "bool prio = false;"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [93],
- "actions" : ["act_33"],
- "base_default_next" : "node_54",
- "next_tables" : {
- "act_33" : "node_54"
- },
- "default_entry" : {
- "action_id" : 93,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.t_line_map_v4",
- "id" : 35,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 212,
- "column" : 10,
- "source_fragment" : "t_line_map_v4"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "ipv4_dst",
- "target" : ["ipv4", "dst_addr"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 32768,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [4, 25, 27],
- "actions" : ["nop", "FabricIngress.bng_ingress.downstream.set_line_next", "FabricIngress.bng_ingress.downstream.set_line_drop"],
- "base_default_next" : null,
- "next_tables" : {
- "__HIT__" : "tbl_act_25",
- "__MISS__" : "tbl_act_26"
- },
- "default_entry" : {
- "action_id" : 4,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_25",
- "id" : 36,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [84],
- "actions" : ["act_24"],
- "base_default_next" : "node_58",
- "next_tables" : {
- "act_24" : "node_58"
- },
- "default_entry" : {
- "action_id" : 84,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_26",
- "id" : 37,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [85],
- "actions" : ["act_25"],
- "base_default_next" : "node_58",
- "next_tables" : {
- "act_25" : "node_58"
- },
- "default_entry" : {
- "action_id" : 85,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
- "id" : 38,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 252,
- "column" : 10,
- "source_fragment" : "t_qos_v4"
- },
- "key" : [
- {
- "match_type" : "ternary",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id22"],
- "mask" : null
- },
- {
- "match_type" : "lpm",
- "name" : "ipv4_src",
- "target" : ["ipv4", "src_addr"],
- "mask" : null
- },
- {
- "match_type" : "ternary",
- "name" : "ipv4_dscp",
- "target" : ["ipv4", "dscp"],
- "mask" : null
- },
- {
- "match_type" : "ternary",
- "name" : "ipv4_ecn",
- "target" : ["ipv4", "ecn"],
- "mask" : null
- }
- ],
- "match_type" : "ternary",
- "type" : "simple",
- "max_size" : 256,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [29, 31],
- "actions" : ["FabricIngress.bng_ingress.downstream.qos_prio", "FabricIngress.bng_ingress.downstream.qos_besteff"],
- "base_default_next" : "node_60",
- "next_tables" : {
- "FabricIngress.bng_ingress.downstream.qos_prio" : "node_60",
- "FabricIngress.bng_ingress.downstream.qos_besteff" : "node_60"
- },
- "default_entry" : {
- "action_id" : 31,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_27",
- "id" : 39,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 293,
- "column" : 20,
- "source_fragment" : "m_prio.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [86],
- "actions" : ["act_26"],
- "base_default_next" : "node_73",
- "next_tables" : {
- "act_26" : "node_73"
- },
- "default_entry" : {
- "action_id" : 86,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_28",
- "id" : 40,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 296,
- "column" : 20,
- "source_fragment" : "m_besteff.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [87],
- "actions" : ["act_27"],
- "base_default_next" : "node_73",
- "next_tables" : {
- "act_27" : "node_73"
- },
- "default_entry" : {
- "action_id" : 87,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_29",
- "id" : 41,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 228,
- "column" : 12,
- "source_fragment" : "hdr.ipv6.dst_addr[127:64]"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [90],
- "actions" : ["act_30"],
- "base_default_next" : "FabricIngress.bng_ingress.downstream.t_line_map_v6",
- "next_tables" : {
- "act_30" : "FabricIngress.bng_ingress.downstream.t_line_map_v6"
- },
- "default_entry" : {
- "action_id" : 90,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.t_line_map_v6",
- "id" : 42,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 226,
- "column" : 10,
- "source_fragment" : "t_line_map_v6"
- },
- "key" : [
- {
- "match_type" : "exact",
- "name" : "ipv6_dst_net_id",
- "target" : ["scalars", "key_1"],
- "mask" : null
- }
- ],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 32768,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [5, 26, 28],
- "actions" : ["nop", "FabricIngress.bng_ingress.downstream.set_line_next", "FabricIngress.bng_ingress.downstream.set_line_drop"],
- "base_default_next" : null,
- "next_tables" : {
- "__HIT__" : "tbl_act_30",
- "__MISS__" : "tbl_act_31"
- },
- "default_entry" : {
- "action_id" : 5,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_30",
- "id" : 43,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [88],
- "actions" : ["act_28"],
- "base_default_next" : "node_68",
- "next_tables" : {
- "act_28" : "node_68"
- },
- "default_entry" : {
- "action_id" : 88,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_31",
- "id" : 44,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [89],
- "actions" : ["act_29"],
- "base_default_next" : "node_68",
- "next_tables" : {
- "act_29" : "node_68"
- },
- "default_entry" : {
- "action_id" : 89,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "FabricIngress.bng_ingress.downstream.t_qos_v6",
- "id" : 45,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 268,
- "column" : 10,
- "source_fragment" : "t_qos_v6"
- },
- "key" : [
- {
- "match_type" : "ternary",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id22"],
- "mask" : null
- },
- {
- "match_type" : "lpm",
- "name" : "ipv6_src",
- "target" : ["ipv6", "src_addr"],
- "mask" : null
- },
- {
- "match_type" : "ternary",
- "name" : "ipv6_traffic_class",
- "target" : ["ipv6", "traffic_class"],
- "mask" : null
- }
- ],
- "match_type" : "ternary",
- "type" : "simple",
- "max_size" : 256,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [30, 32],
- "actions" : ["FabricIngress.bng_ingress.downstream.qos_prio", "FabricIngress.bng_ingress.downstream.qos_besteff"],
- "base_default_next" : "node_70",
- "next_tables" : {
- "FabricIngress.bng_ingress.downstream.qos_prio" : "node_70",
- "FabricIngress.bng_ingress.downstream.qos_besteff" : "node_70"
- },
- "default_entry" : {
- "action_id" : 32,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_32",
- "id" : 46,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 307,
- "column" : 20,
- "source_fragment" : "m_prio.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [91],
- "actions" : ["act_31"],
- "base_default_next" : "node_73",
- "next_tables" : {
- "act_31" : "node_73"
- },
- "default_entry" : {
- "action_id" : 91,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_33",
- "id" : 47,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 310,
- "column" : 20,
- "source_fragment" : "m_besteff.execute_meter((bit<32>)fmeta.bng.line_id, ..."
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [92],
- "actions" : ["act_32"],
- "base_default_next" : "node_73",
- "next_tables" : {
- "act_32" : "node_73"
- },
- "default_entry" : {
- "action_id" : 92,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
"name" : "FabricIngress.forwarding.bridging",
- "id" : 48,
+ "id" : 28,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 46,
@@ -17294,7 +16282,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -17310,7 +16298,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [39, 8],
+ "action_ids" : [36, 7],
"actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
"base_default_next" : "FabricIngress.acl.acl",
"next_tables" : {
@@ -17318,7 +16306,7 @@
"nop" : "FabricIngress.acl.acl"
},
"default_entry" : {
- "action_id" : 8,
+ "action_id" : 7,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17326,7 +16314,7 @@
},
{
"name" : "FabricIngress.forwarding.mpls",
- "id" : 49,
+ "id" : 29,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 71,
@@ -17337,7 +16325,7 @@
{
"match_type" : "exact",
"name" : "mpls_label",
- "target" : ["scalars", "fabric_metadata_t._mpls_label5"],
+ "target" : ["scalars", "fabric_metadata_t._mpls_label12"],
"mask" : null
}
],
@@ -17347,7 +16335,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [40, 9],
+ "action_ids" : [37, 8],
"actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
"base_default_next" : "FabricIngress.acl.acl",
"next_tables" : {
@@ -17355,7 +16343,7 @@
"nop" : "FabricIngress.acl.acl"
},
"default_entry" : {
- "action_id" : 9,
+ "action_id" : 8,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17363,7 +16351,7 @@
},
{
"name" : "FabricIngress.forwarding.routing_v4",
- "id" : 50,
+ "id" : 30,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 101,
@@ -17384,7 +16372,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41, 42, 10],
+ "action_ids" : [38, 39, 9],
"actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
"base_default_next" : "FabricIngress.acl.acl",
"next_tables" : {
@@ -17393,7 +16381,7 @@
"nop" : "FabricIngress.acl.acl"
},
"default_entry" : {
- "action_id" : 10,
+ "action_id" : 9,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17401,7 +16389,7 @@
},
{
"name" : "FabricIngress.forwarding.routing_v6",
- "id" : 51,
+ "id" : 31,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 126,
@@ -17422,7 +16410,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [43, 11],
+ "action_ids" : [40, 10],
"actions" : ["FabricIngress.forwarding.set_next_id_routing_v6", "nop"],
"base_default_next" : "FabricIngress.acl.acl",
"next_tables" : {
@@ -17430,7 +16418,7 @@
"nop" : "FabricIngress.acl.acl"
},
"default_entry" : {
- "action_id" : 11,
+ "action_id" : 10,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17438,7 +16426,7 @@
},
{
"name" : "FabricIngress.acl.acl",
- "id" : 52,
+ "id" : 32,
"source_info" : {
"filename" : "include/control/acl.p4",
"line" : 60,
@@ -17455,19 +16443,19 @@
{
"match_type" : "ternary",
"name" : "ip_proto",
- "target" : ["scalars", "fabric_metadata_t._ip_proto13"],
+ "target" : ["scalars", "fabric_metadata_t._ip_proto20"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport21"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport22"],
"mask" : null
},
{
@@ -17491,7 +16479,7 @@
{
"match_type" : "ternary",
"name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "target" : ["scalars", "fabric_metadata_t._last_eth_type0"],
"mask" : null
},
{
@@ -17525,18 +16513,18 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [44, 45, 46, 47, 48],
+ "action_ids" : [41, 42, 43, 44, 45],
"actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
- "base_default_next" : "node_83",
+ "base_default_next" : "node_54",
"next_tables" : {
- "FabricIngress.acl.set_next_id_acl" : "node_83",
- "FabricIngress.acl.punt_to_cpu" : "node_83",
- "FabricIngress.acl.set_clone_session_id" : "node_83",
- "FabricIngress.acl.drop" : "node_83",
- "FabricIngress.acl.nop_acl" : "node_83"
+ "FabricIngress.acl.set_next_id_acl" : "node_54",
+ "FabricIngress.acl.punt_to_cpu" : "node_54",
+ "FabricIngress.acl.set_clone_session_id" : "node_54",
+ "FabricIngress.acl.drop" : "node_54",
+ "FabricIngress.acl.nop_acl" : "node_54"
},
"default_entry" : {
- "action_id" : 48,
+ "action_id" : 45,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17544,10 +16532,10 @@
},
{
"name" : "FabricIngress.next.xconnect",
- "id" : 53,
+ "id" : 33,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 104,
+ "line" : 116,
"column" : 10,
"source_fragment" : "xconnect"
},
@@ -17561,7 +16549,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -17571,7 +16559,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [50, 51, 13],
+ "action_ids" : [48, 49, 12],
"actions" : ["FabricIngress.next.output_xconnect", "FabricIngress.next.set_next_id_xconnect", "nop"],
"base_default_next" : "FabricIngress.next.simple",
"next_tables" : {
@@ -17580,7 +16568,7 @@
"nop" : "FabricIngress.next.simple"
},
"default_entry" : {
- "action_id" : 13,
+ "action_id" : 12,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17588,10 +16576,10 @@
},
{
"name" : "FabricIngress.next.simple",
- "id" : 54,
+ "id" : 34,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 143,
+ "line" : 155,
"column" : 10,
"source_fragment" : "simple"
},
@@ -17599,7 +16587,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -17609,7 +16597,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [52, 53, 54, 14],
+ "action_ids" : [50, 51, 52, 13],
"actions" : ["FabricIngress.next.output_simple", "FabricIngress.next.routing_simple", "FabricIngress.next.mpls_routing_simple", "nop"],
"base_default_next" : "FabricIngress.next.hashed",
"next_tables" : {
@@ -17619,7 +16607,7 @@
"nop" : "FabricIngress.next.hashed"
},
"default_entry" : {
- "action_id" : 14,
+ "action_id" : 13,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17627,10 +16615,10 @@
},
{
"name" : "FabricIngress.next.hashed",
- "id" : 55,
+ "id" : 35,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 184,
+ "line" : 196,
"column" : 10,
"source_fragment" : "hashed"
},
@@ -17638,7 +16626,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -17649,7 +16637,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [55, 56, 57, 15],
+ "action_ids" : [53, 54, 55, 14],
"actions" : ["FabricIngress.next.output_hashed", "FabricIngress.next.routing_hashed", "FabricIngress.next.mpls_routing_hashed", "nop"],
"base_default_next" : "FabricIngress.next.multicast",
"next_tables" : {
@@ -17661,10 +16649,10 @@
},
{
"name" : "FabricIngress.next.multicast",
- "id" : 56,
+ "id" : 36,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 218,
+ "line" : 230,
"column" : 10,
"source_fragment" : "multicast"
},
@@ -17672,7 +16660,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -17682,7 +16670,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [58, 16],
+ "action_ids" : [56, 15],
"actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
"base_default_next" : "FabricIngress.next.next_vlan",
"next_tables" : {
@@ -17690,7 +16678,7 @@
"nop" : "FabricIngress.next.next_vlan"
},
"default_entry" : {
- "action_id" : 16,
+ "action_id" : 15,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17698,10 +16686,10 @@
},
{
"name" : "FabricIngress.next.next_vlan",
- "id" : 57,
+ "id" : 37,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 74,
+ "line" : 82,
"column" : 10,
"source_fragment" : "next_vlan"
},
@@ -17709,7 +16697,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id17"],
"mask" : null
}
],
@@ -17719,23 +16707,24 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [49, 12],
- "actions" : ["FabricIngress.next.set_vlan", "nop"],
- "base_default_next" : "node_89",
+ "action_ids" : [46, 47, 11],
+ "actions" : ["FabricIngress.next.set_vlan", "FabricIngress.next.set_double_vlan", "nop"],
+ "base_default_next" : "node_60",
"next_tables" : {
- "FabricIngress.next.set_vlan" : "node_89",
- "nop" : "node_89"
+ "FabricIngress.next.set_vlan" : "node_60",
+ "FabricIngress.next.set_double_vlan" : "node_60",
+ "nop" : "node_60"
},
"default_entry" : {
- "action_id" : 12,
+ "action_id" : 11,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_34",
- "id" : 58,
+ "name" : "tbl_act_22",
+ "id" : 38,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 31,
@@ -17749,22 +16738,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [94],
- "actions" : ["act_34"],
- "base_default_next" : "node_91",
+ "action_ids" : [80],
+ "actions" : ["act_22"],
+ "base_default_next" : "node_62",
"next_tables" : {
- "act_34" : "node_91"
+ "act_22" : "node_62"
},
"default_entry" : {
- "action_id" : 94,
+ "action_id" : 80,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_35",
- "id" : 59,
+ "name" : "tbl_act_23",
+ "id" : 39,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 34,
@@ -17778,14 +16767,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [95],
- "actions" : ["act_35"],
+ "action_ids" : [81],
+ "actions" : ["act_23"],
"base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
"next_tables" : {
- "act_35" : "FabricIngress.process_set_source_sink.tb_set_source"
+ "act_23" : "FabricIngress.process_set_source_sink.tb_set_source"
},
"default_entry" : {
- "action_id" : 95,
+ "action_id" : 81,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17793,7 +16782,7 @@
},
{
"name" : "FabricIngress.process_set_source_sink.tb_set_source",
- "id" : 60,
+ "id" : 40,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 46,
@@ -17814,7 +16803,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [33, 6],
+ "action_ids" : [18, 2],
"actions" : ["FabricIngress.process_set_source_sink.int_set_source", "nop"],
"base_default_next" : "FabricIngress.process_set_source_sink.tb_set_sink",
"next_tables" : {
@@ -17822,7 +16811,7 @@
"nop" : "FabricIngress.process_set_source_sink.tb_set_sink"
},
"default_entry" : {
- "action_id" : 6,
+ "action_id" : 2,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17830,7 +16819,7 @@
},
{
"name" : "FabricIngress.process_set_source_sink.tb_set_sink",
- "id" : 61,
+ "id" : 41,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 67,
@@ -17851,23 +16840,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [34, 7],
+ "action_ids" : [19, 3],
"actions" : ["FabricIngress.process_set_source_sink.int_set_sink", "nop"],
- "base_default_next" : "node_95",
+ "base_default_next" : "node_66",
"next_tables" : {
- "FabricIngress.process_set_source_sink.int_set_sink" : "node_95",
- "nop" : "node_95"
+ "FabricIngress.process_set_source_sink.int_set_sink" : "node_66",
+ "nop" : "node_66"
},
"default_entry" : {
- "action_id" : 7,
+ "action_id" : 3,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_36",
- "id" : 62,
+ "name" : "tbl_act_24",
+ "id" : 42,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 89,
@@ -17881,18 +16870,754 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [96],
+ "action_ids" : [82],
+ "actions" : ["act_24"],
+ "base_default_next" : "node_68",
+ "next_tables" : {
+ "act_24" : "node_68"
+ },
+ "default_entry" : {
+ "action_id" : 82,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_25",
+ "id" : 43,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 339,
+ "column" : 22,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [83],
+ "actions" : ["act_25"],
+ "base_default_next" : "FabricIngress.bng_ingress.t_line_map",
+ "next_tables" : {
+ "act_25" : "FabricIngress.bng_ingress.t_line_map"
+ },
+ "default_entry" : {
+ "action_id" : 83,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_26",
+ "id" : 44,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 344,
+ "column" : 22,
+ "source_fragment" : "= fmeta.vlan_id; ..."
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [84],
+ "actions" : ["act_26"],
+ "base_default_next" : "FabricIngress.bng_ingress.t_line_map",
+ "next_tables" : {
+ "act_26" : "FabricIngress.bng_ingress.t_line_map"
+ },
+ "default_entry" : {
+ "action_id" : 84,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.t_line_map",
+ "id" : 45,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 324,
+ "column" : 14,
+ "source_fragment" : "t_line_map"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "s_tag",
+ "target" : ["scalars", "bng_ingress_s_tag"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "c_tag",
+ "target" : ["scalars", "bng_ingress_c_tag"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 8192,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [6, 31],
+ "actions" : ["nop", "FabricIngress.bng_ingress.set_line"],
+ "base_default_next" : "node_72",
+ "next_tables" : {
+ "nop" : "node_72",
+ "FabricIngress.bng_ingress.set_line" : "node_72"
+ },
+ "default_entry" : {
+ "action_id" : 6,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_27",
+ "id" : 46,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 353,
+ "column" : 31,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [87],
+ "actions" : ["act_29"],
+ "base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
+ "next_tables" : {
+ "act_29" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp"
+ },
+ "default_entry" : {
+ "action_id" : 87,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
+ "id" : 47,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 48,
+ "column" : 10,
+ "source_fragment" : "t_pppoe_cp"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "pppoe_code",
+ "target" : ["pppoe", "code"],
+ "mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "pppoe_protocol",
+ "target" : ["pppoe", "protocol"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "ternary",
+ "type" : "simple",
+ "max_size" : 16,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [20, 4],
+ "actions" : ["FabricIngress.bng_ingress.upstream.punt_to_cpu", "nop"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "__HIT__" : "tbl_act_28",
+ "__MISS__" : "tbl_act_29"
+ },
+ "default_entry" : {
+ "action_id" : 4,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_28",
+ "id" : 48,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [85],
+ "actions" : ["act_27"],
+ "base_default_next" : "node_77",
+ "next_tables" : {
+ "act_27" : "node_77"
+ },
+ "default_entry" : {
+ "action_id" : 85,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_29",
+ "id" : 49,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [86],
+ "actions" : ["act_28"],
+ "base_default_next" : "node_77",
+ "next_tables" : {
+ "act_28" : "node_77"
+ },
+ "default_entry" : {
+ "action_id" : 86,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_30",
+ "id" : 50,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 124,
+ "column" : 12,
+ "source_fragment" : "return"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [88],
+ "actions" : ["act_30"],
+ "base_default_next" : "node_79",
+ "next_tables" : {
+ "act_30" : "node_79"
+ },
+ "default_entry" : {
+ "action_id" : 88,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
+ "id" : 51,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 85,
+ "column" : 10,
+ "source_fragment" : "t_pppoe_term_v4"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id29"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "ipv4_src",
+ "target" : ["ipv4", "src_addr"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "pppoe_session_id",
+ "target" : ["pppoe", "session_id"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 32768,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [23, 21],
+ "actions" : ["FabricIngress.bng_ingress.upstream.term_enabled_v4", "FabricIngress.bng_ingress.upstream.term_disabled"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "FabricIngress.bng_ingress.upstream.term_disabled" : "tbl_act_31",
+ "FabricIngress.bng_ingress.upstream.term_enabled_v4" : null
+ },
+ "default_entry" : {
+ "action_id" : 21,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_31",
+ "id" : 52,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 129,
+ "column" : 20,
+ "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [89],
+ "actions" : ["act_31"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_31" : null
+ },
+ "default_entry" : {
+ "action_id" : 89,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_32",
+ "id" : 53,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 110,
+ "column" : 12,
+ "source_fragment" : "hdr.ipv6.src_addr[127:64]"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [91],
+ "actions" : ["act_33"],
+ "base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6",
+ "next_tables" : {
+ "act_33" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6"
+ },
+ "default_entry" : {
+ "action_id" : 91,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6",
+ "id" : 54,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 107,
+ "column" : 10,
+ "source_fragment" : "t_pppoe_term_v6"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id29"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "ipv6_src_net_id",
+ "target" : ["scalars", "key_0"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "pppoe_session_id",
+ "target" : ["pppoe", "session_id"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 32768,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [24, 22],
+ "actions" : ["FabricIngress.bng_ingress.upstream.term_enabled_v6", "FabricIngress.bng_ingress.upstream.term_disabled"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "FabricIngress.bng_ingress.upstream.term_disabled" : "tbl_act_33",
+ "FabricIngress.bng_ingress.upstream.term_enabled_v6" : null
+ },
+ "default_entry" : {
+ "action_id" : 22,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_33",
+ "id" : 55,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 137,
+ "column" : 19,
+ "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [90],
+ "actions" : ["act_32"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_32" : null
+ },
+ "default_entry" : {
+ "action_id" : 90,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.t_line_session_map",
+ "id" : 56,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 167,
+ "column" : 10,
+ "source_fragment" : "t_line_session_map"
+ },
+ "key" : [
+ {
+ "match_type" : "exact",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id29"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 8192,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [5, 25, 26],
+ "actions" : ["nop", "FabricIngress.bng_ingress.downstream.set_session", "FabricIngress.bng_ingress.downstream.drop"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "__HIT__" : "tbl_act_34",
+ "__MISS__" : "tbl_act_35"
+ },
+ "default_entry" : {
+ "action_id" : 5,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_34",
+ "id" : 57,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [92],
+ "actions" : ["act_34"],
+ "base_default_next" : "node_90",
+ "next_tables" : {
+ "act_34" : "node_90"
+ },
+ "default_entry" : {
+ "action_id" : 92,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_35",
+ "id" : 58,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [93],
+ "actions" : ["act_35"],
+ "base_default_next" : "node_90",
+ "next_tables" : {
+ "act_35" : "node_90"
+ },
+ "default_entry" : {
+ "action_id" : 93,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
+ "id" : 59,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 192,
+ "column" : 10,
+ "source_fragment" : "t_qos_v4"
+ },
+ "key" : [
+ {
+ "match_type" : "ternary",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id29"],
+ "mask" : null
+ },
+ {
+ "match_type" : "lpm",
+ "name" : "ipv4_src",
+ "target" : ["ipv4", "src_addr"],
+ "mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "ipv4_dscp",
+ "target" : ["ipv4", "dscp"],
+ "mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "ipv4_ecn",
+ "target" : ["ipv4", "ecn"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "ternary",
+ "type" : "simple",
+ "max_size" : 256,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [27, 29],
+ "actions" : ["FabricIngress.bng_ingress.downstream.qos_prio", "FabricIngress.bng_ingress.downstream.qos_besteff"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "FabricIngress.bng_ingress.downstream.qos_prio" : "tbl_act_36",
+ "FabricIngress.bng_ingress.downstream.qos_besteff" : "tbl_act_37"
+ },
+ "default_entry" : {
+ "action_id" : 29,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_36",
+ "id" : 60,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 236,
+ "column" : 24,
+ "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [94],
"actions" : ["act_36"],
"base_default_next" : null,
"next_tables" : {
"act_36" : null
},
"default_entry" : {
+ "action_id" : 94,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_37",
+ "id" : 61,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 239,
+ "column" : 24,
+ "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [95],
+ "actions" : ["act_37"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_37" : null
+ },
+ "default_entry" : {
+ "action_id" : 95,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.bng_ingress.downstream.t_qos_v6",
+ "id" : 62,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 208,
+ "column" : 10,
+ "source_fragment" : "t_qos_v6"
+ },
+ "key" : [
+ {
+ "match_type" : "ternary",
+ "name" : "line_id",
+ "target" : ["scalars", "fabric_metadata_t._bng_line_id29"],
+ "mask" : null
+ },
+ {
+ "match_type" : "lpm",
+ "name" : "ipv6_src",
+ "target" : ["ipv6", "src_addr"],
+ "mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "ipv6_traffic_class",
+ "target" : ["ipv6", "traffic_class"],
+ "mask" : null
+ }
+ ],
+ "match_type" : "ternary",
+ "type" : "simple",
+ "max_size" : 256,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [28, 30],
+ "actions" : ["FabricIngress.bng_ingress.downstream.qos_prio", "FabricIngress.bng_ingress.downstream.qos_besteff"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "FabricIngress.bng_ingress.downstream.qos_prio" : "tbl_act_38",
+ "FabricIngress.bng_ingress.downstream.qos_besteff" : "tbl_act_39"
+ },
+ "default_entry" : {
+ "action_id" : 30,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_38",
+ "id" : 63,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 248,
+ "column" : 24,
+ "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [96],
+ "actions" : ["act_38"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_38" : null
+ },
+ "default_entry" : {
"action_id" : 96,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
+ },
+ {
+ "name" : "tbl_act_39",
+ "id" : 64,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 251,
+ "column" : 24,
+ "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [97],
+ "actions" : ["act_39"],
+ "base_default_next" : null,
+ "next_tables" : {
+ "act_39" : null
+ },
+ "default_entry" : {
+ "action_id" : 97,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
}
],
"action_profiles" : [
@@ -17901,7 +17626,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 165,
+ "line" : 177,
"column" : 57,
"source_fragment" : "hashed_selector"
},
@@ -17919,15 +17644,15 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto20"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport21"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport22"]
}
]
}
@@ -18039,7 +17764,7 @@
"id" : 4,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 104,
+ "line" : 109,
"column" : 12,
"source_fragment" : "hdr.vlan_tag.isValid()"
},
@@ -18062,7 +17787,30 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 115,
+ "column" : 12,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_6",
+ "false_next" : "node_16"
+ },
+ {
+ "name" : "node_16",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 121,
"column" : 12,
"source_fragment" : "!hdr.mpls.isValid()"
},
@@ -18084,12 +17832,81 @@
}
}
},
- "true_next" : "tbl_act_6",
- "false_next" : "FabricIngress.filtering.ingress_port_vlan"
+ "true_next" : "tbl_act_7",
+ "false_next" : "node_18"
},
{
- "name" : "node_19",
- "id" : 6,
+ "name" : "node_18",
+ "id" : 7,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 130,
+ "column" : 12,
+ "source_fragment" : "hdr.mpls.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["mpls", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_8",
+ "false_next" : "node_20"
+ },
+ {
+ "name" : "node_20",
+ "id" : 8,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 133,
+ "column" : 16,
+ "source_fragment" : "hdr.vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "node_21",
+ "false_next" : "tbl_act_11"
+ },
+ {
+ "name" : "node_21",
+ "id" : 9,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 135,
+ "column" : 19,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_9",
+ "false_next" : "tbl_act_10"
+ },
+ {
+ "name" : "node_28",
+ "id" : 10,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 144,
@@ -18111,8 +17928,8 @@
"false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
},
{
- "name" : "node_23",
- "id" : 7,
+ "name" : "node_32",
+ "id" : 11,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 148,
@@ -18137,12 +17954,12 @@
}
}
},
- "true_next" : "tbl_act_10",
- "false_next" : "tbl_act_11"
+ "true_next" : "tbl_act_15",
+ "false_next" : "tbl_act_16"
},
{
- "name" : "node_30",
- "id" : 8,
+ "name" : "node_39",
+ "id" : 12,
"expression" : {
"type" : "expression",
"value" : {
@@ -18154,12 +17971,12 @@
}
}
},
- "true_next" : "tbl_act_14",
- "false_next" : "tbl_act_15"
+ "true_next" : "tbl_act_19",
+ "false_next" : "tbl_act_20"
},
{
- "name" : "node_33",
- "id" : 9,
+ "name" : "node_42",
+ "id" : 13,
"expression" : {
"type" : "expression",
"value" : {
@@ -18178,337 +17995,15 @@
}
}
},
- "true_next" : "tbl_act_16",
- "false_next" : "node_35"
- },
- {
- "name" : "node_35",
- "id" : 10,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 385,
- "column" : 12,
- "source_fragment" : "hdr.pppoe.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["pppoe", "$valid$"]
- }
- }
- },
- "true_next" : "tbl_act_17",
- "false_next" : "tbl_act_24"
- },
- {
- "name" : "node_41",
- "id" : 11,
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_tmp"]
- }
- }
- },
- "true_next" : "tbl_act_20",
- "false_next" : "node_43"
- },
- {
- "name" : "node_43",
- "id" : 12,
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "not",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
- }
- }
- }
- }
- },
- "true_next" : "node_44",
- "false_next" : "node_73"
+ "true_next" : "tbl_act_21",
+ "false_next" : "node_44"
},
{
"name" : "node_44",
- "id" : 13,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 160,
- "column" : 12,
- "source_fragment" : "hdr.ipv4.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["ipv4", "$valid$"]
- }
- }
- },
- "true_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
- "false_next" : "node_48"
- },
- {
- "name" : "node_46",
"id" : 14,
"source_info" : {
- "filename" : "include/bng.p4",
- "line" : 162,
- "column" : 15,
- "source_fragment" : "drop == true"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "==",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- }
- }
- },
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- },
- "true_next" : "tbl_act_21",
- "false_next" : "node_73"
- },
- {
- "name" : "node_48",
- "id" : 15,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 167,
- "column" : 17,
- "source_fragment" : "hdr.ipv6.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["ipv6", "$valid$"]
- }
- }
- },
- "true_next" : "tbl_act_22",
- "false_next" : "node_73"
- },
- {
- "name" : "node_51",
- "id" : 16,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 169,
- "column" : 15,
- "source_fragment" : "drop == true"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "==",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_upstream_drop"]
- }
- }
- },
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- },
- "true_next" : "tbl_act_23",
- "false_next" : "node_73"
- },
- {
- "name" : "node_54",
- "id" : 17,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 285,
- "column" : 12,
- "source_fragment" : "hdr.ipv4.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["ipv4", "$valid$"]
- }
- }
- },
- "true_next" : "FabricIngress.bng_ingress.downstream.t_line_map_v4",
- "false_next" : "node_63"
- },
- {
- "name" : "node_58",
- "id" : 18,
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp"]
- }
- }
- },
- "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
- "false_next" : "node_73"
- },
- {
- "name" : "node_60",
- "id" : 19,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 292,
- "column" : 20,
- "source_fragment" : "prio==true"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "==",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
- }
- }
- },
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- },
- "true_next" : "tbl_act_27",
- "false_next" : "tbl_act_28"
- },
- {
- "name" : "node_63",
- "id" : 20,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 303,
- "column" : 17,
- "source_fragment" : "hdr.ipv6.isValid()"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["ipv6", "$valid$"]
- }
- }
- },
- "true_next" : "tbl_act_29",
- "false_next" : "node_73"
- },
- {
- "name" : "node_68",
- "id" : 21,
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_tmp_0"]
- }
- }
- },
- "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v6",
- "false_next" : "node_73"
- },
- {
- "name" : "node_70",
- "id" : 22,
- "source_info" : {
- "filename" : "include/bng.p4",
- "line" : 306,
- "column" : 20,
- "source_fragment" : "prio==true"
- },
- "expression" : {
- "type" : "expression",
- "value" : {
- "op" : "==",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "d2b",
- "left" : null,
- "right" : {
- "type" : "field",
- "value" : ["scalars", "bng_ingress_downstream_prio"]
- }
- }
- },
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- },
- "true_next" : "tbl_act_32",
- "false_next" : "tbl_act_33"
- },
- {
- "name" : "node_73",
- "id" : 23,
- "source_info" : {
"filename" : "fabric.p4",
- "line" : 74,
+ "line" : 71,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_forwarding == false"
},
@@ -18523,7 +18018,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding14"]
}
}
},
@@ -18533,12 +18028,12 @@
}
}
},
- "true_next" : "node_74",
+ "true_next" : "node_45",
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_74",
- "id" : 24,
+ "name" : "node_45",
+ "id" : 15,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 141,
@@ -18551,7 +18046,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
"right" : {
"type" : "hexstr",
@@ -18560,11 +18055,11 @@
}
},
"true_next" : "FabricIngress.forwarding.bridging",
- "false_next" : "node_76"
+ "false_next" : "node_47"
},
{
- "name" : "node_76",
- "id" : 25,
+ "name" : "node_47",
+ "id" : 16,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 142,
@@ -18577,7 +18072,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
"right" : {
"type" : "hexstr",
@@ -18586,11 +18081,11 @@
}
},
"true_next" : "FabricIngress.forwarding.mpls",
- "false_next" : "node_78"
+ "false_next" : "node_49"
},
{
- "name" : "node_78",
- "id" : 26,
+ "name" : "node_49",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 143,
@@ -18603,7 +18098,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
"right" : {
"type" : "hexstr",
@@ -18612,11 +18107,11 @@
}
},
"true_next" : "FabricIngress.forwarding.routing_v4",
- "false_next" : "node_80"
+ "false_next" : "node_51"
},
{
- "name" : "node_80",
- "id" : 27,
+ "name" : "node_51",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 145,
@@ -18629,7 +18124,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type16"]
},
"right" : {
"type" : "hexstr",
@@ -18641,11 +18136,11 @@
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_83",
- "id" : 28,
+ "name" : "node_54",
+ "id" : 19,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 78,
+ "line" : 75,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_next == false"
},
@@ -18660,7 +18155,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next15"]
}
}
},
@@ -18670,12 +18165,12 @@
}
}
},
- "false_next" : null,
- "true_next" : "FabricIngress.next.xconnect"
+ "true_next" : "FabricIngress.next.xconnect",
+ "false_next" : "node_68"
},
{
- "name" : "node_89",
- "id" : 29,
+ "name" : "node_60",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 30,
@@ -18696,12 +18191,12 @@
}
}
},
- "true_next" : "tbl_act_34",
- "false_next" : "node_91"
+ "true_next" : "tbl_act_22",
+ "false_next" : "node_62"
},
{
- "name" : "node_91",
- "id" : 30,
+ "name" : "node_62",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 33,
@@ -18722,12 +18217,12 @@
}
}
},
- "true_next" : "tbl_act_35",
+ "true_next" : "tbl_act_23",
"false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
},
{
- "name" : "node_95",
- "id" : 31,
+ "name" : "node_66",
+ "id" : 22,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 86,
@@ -18745,7 +18240,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_sink26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_sink34"]
}
}
},
@@ -18755,8 +18250,204 @@
}
}
},
+ "true_next" : "tbl_act_24",
+ "false_next" : "node_68"
+ },
+ {
+ "name" : "node_68",
+ "id" : 23,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 338,
+ "column" : 15,
+ "source_fragment" : "hdr.pppoe.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["pppoe", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_25",
+ "false_next" : "tbl_act_26"
+ },
+ {
+ "name" : "node_72",
+ "id" : 24,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 352,
+ "column" : 16,
+ "source_fragment" : "hdr.pppoe.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["pppoe", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_27",
+ "false_next" : "FabricIngress.bng_ingress.downstream.t_line_session_map"
+ },
+ {
+ "name" : "node_77",
+ "id" : 25,
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_tmp"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_30",
+ "false_next" : "node_79"
+ },
+ {
+ "name" : "node_79",
+ "id" : 26,
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "not",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_upstream_hasReturned"]
+ }
+ }
+ }
+ }
+ },
"false_next" : null,
- "true_next" : "tbl_act_36"
+ "true_next" : "node_80"
+ },
+ {
+ "name" : "node_80",
+ "id" : 27,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 126,
+ "column" : 12,
+ "source_fragment" : "hdr.ipv4.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv4", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
+ "false_next" : "node_83"
+ },
+ {
+ "name" : "node_83",
+ "id" : 28,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 134,
+ "column" : 17,
+ "source_fragment" : "hdr.ipv6.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv6", "$valid$"]
+ }
+ }
+ },
+ "false_next" : null,
+ "true_next" : "tbl_act_32"
+ },
+ {
+ "name" : "node_90",
+ "id" : 29,
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "bng_ingress_downstream_tmp"]
+ }
+ }
+ },
+ "false_next" : null,
+ "true_next" : "node_91"
+ },
+ {
+ "name" : "node_91",
+ "id" : 30,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 233,
+ "column" : 16,
+ "source_fragment" : "hdr.ipv4.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv4", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
+ "false_next" : "node_95"
+ },
+ {
+ "name" : "node_95",
+ "id" : 31,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 245,
+ "column" : 21,
+ "source_fragment" : "hdr.ipv6.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv6", "$valid$"]
+ }
+ }
+ },
+ "false_next" : null,
+ "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v6"
}
]
},
@@ -18765,15 +18456,15 @@
"id" : 1,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 92,
+ "line" : 93,
"column" : 8,
"source_fragment" : "FabricEgress"
},
- "init_table" : "node_99",
+ "init_table" : "node_101",
"tables" : [
{
- "name" : "tbl_act_37",
- "id" : 63,
+ "name" : "tbl_act_40",
+ "id" : 65,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 41,
@@ -18787,22 +18478,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [148],
- "actions" : ["act_37"],
- "base_default_next" : "node_101",
+ "action_ids" : [150],
+ "actions" : ["act_40"],
+ "base_default_next" : "node_103",
"next_tables" : {
- "act_37" : "node_101"
+ "act_40" : "node_103"
},
"default_entry" : {
- "action_id" : 148,
+ "action_id" : 150,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_38",
- "id" : 64,
+ "name" : "tbl_act_41",
+ "id" : 66,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 44,
@@ -18816,25 +18507,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [149],
- "actions" : ["act_38"],
- "base_default_next" : "node_103",
+ "action_ids" : [151],
+ "actions" : ["act_41"],
+ "base_default_next" : "node_105",
"next_tables" : {
- "act_38" : "node_103"
+ "act_41" : "node_105"
},
"default_entry" : {
- "action_id" : 149,
+ "action_id" : 151,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_39",
- "id" : 65,
+ "name" : "tbl_act_42",
+ "id" : 67,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -18845,14 +18536,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [150],
- "actions" : ["act_39"],
- "base_default_next" : "node_105",
+ "action_ids" : [152],
+ "actions" : ["act_42"],
+ "base_default_next" : "node_107",
"next_tables" : {
- "act_39" : "node_105"
+ "act_42" : "node_107"
},
"default_entry" : {
- "action_id" : 150,
+ "action_id" : 152,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18860,10 +18551,10 @@
},
{
"name" : "tbl_egress_next_pop_mpls_if_present",
- "id" : 66,
+ "id" : 68,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -18876,9 +18567,9 @@
"direct_meters" : null,
"action_ids" : [144],
"actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
- "base_default_next" : "FabricEgress.egress_next.egress_vlan",
+ "base_default_next" : "node_111",
"next_tables" : {
- "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
+ "FabricEgress.egress_next.pop_mpls_if_present" : "node_111"
},
"default_entry" : {
"action_id" : 144,
@@ -18889,10 +18580,10 @@
},
{
"name" : "tbl_egress_next_set_mpls",
- "id" : 67,
+ "id" : 69,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 314,
+ "line" : 340,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -18905,9 +18596,9 @@
"direct_meters" : null,
"action_ids" : [145],
"actions" : ["FabricEgress.egress_next.set_mpls"],
- "base_default_next" : "FabricEgress.egress_next.egress_vlan",
+ "base_default_next" : "node_111",
"next_tables" : {
- "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
+ "FabricEgress.egress_next.set_mpls" : "node_111"
},
"default_entry" : {
"action_id" : 145,
@@ -18917,11 +18608,98 @@
}
},
{
- "name" : "FabricEgress.egress_next.egress_vlan",
- "id" : 68,
+ "name" : "tbl_egress_next_push_vlan",
+ "id" : 70,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 291,
+ "line" : 346,
+ "column" : 12,
+ "source_fragment" : "push_vlan()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [146],
+ "actions" : ["FabricEgress.egress_next.push_vlan"],
+ "base_default_next" : "tbl_egress_next_push_inner_vlan",
+ "next_tables" : {
+ "FabricEgress.egress_next.push_vlan" : "tbl_egress_next_push_inner_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 146,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_egress_next_push_inner_vlan",
+ "id" : 71,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 347,
+ "column" : 12,
+ "source_fragment" : "push_inner_vlan()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [148],
+ "actions" : ["FabricEgress.egress_next.push_inner_vlan"],
+ "base_default_next" : "node_121",
+ "next_tables" : {
+ "FabricEgress.egress_next.push_inner_vlan" : "node_121"
+ },
+ "default_entry" : {
+ "action_id" : 148,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_43",
+ "id" : 72,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 350,
+ "column" : 12,
+ "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [155],
+ "actions" : ["act_45"],
+ "base_default_next" : "FabricEgress.egress_next.egress_vlan",
+ "next_tables" : {
+ "act_45" : "FabricEgress.egress_next.egress_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 155,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricEgress.egress_next.egress_vlan",
+ "id" : 73,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 317,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -18929,7 +18707,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -18945,12 +18723,12 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [147, 101],
+ "action_ids" : [149, 101],
"actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_40",
- "__MISS__" : "tbl_act_41"
+ "__HIT__" : "tbl_act_44",
+ "__MISS__" : "tbl_act_45"
},
"default_entry" : {
"action_id" : 101,
@@ -18960,8 +18738,8 @@
}
},
{
- "name" : "tbl_act_40",
- "id" : 69,
+ "name" : "tbl_act_44",
+ "id" : 74,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -18969,22 +18747,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [151],
- "actions" : ["act_40"],
- "base_default_next" : "node_112",
+ "action_ids" : [153],
+ "actions" : ["act_43"],
+ "base_default_next" : "node_118",
"next_tables" : {
- "act_40" : "node_112"
+ "act_43" : "node_118"
},
"default_entry" : {
- "action_id" : 151,
+ "action_id" : 153,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_41",
- "id" : 70,
+ "name" : "tbl_act_45",
+ "id" : 75,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -18992,26 +18770,26 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [152],
- "actions" : ["act_41"],
- "base_default_next" : "node_112",
+ "action_ids" : [154],
+ "actions" : ["act_44"],
+ "base_default_next" : "node_118",
"next_tables" : {
- "act_41" : "node_112"
+ "act_44" : "node_118"
},
"default_entry" : {
- "action_id" : 152,
+ "action_id" : 154,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_egress_next_push_vlan",
- "id" : 71,
+ "name" : "tbl_egress_next_push_vlan_0",
+ "id" : 76,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 320,
- "column" : 16,
+ "line" : 357,
+ "column" : 20,
"source_fragment" : "push_vlan()"
},
"key" : [],
@@ -19021,25 +18799,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [146],
+ "action_ids" : [147],
"actions" : ["FabricEgress.egress_next.push_vlan"],
- "base_default_next" : "node_115",
+ "base_default_next" : "node_121",
"next_tables" : {
- "FabricEgress.egress_next.push_vlan" : "node_115"
+ "FabricEgress.egress_next.push_vlan" : "node_121"
},
"default_entry" : {
- "action_id" : 146,
+ "action_id" : 147,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_42",
- "id" : 72,
+ "name" : "tbl_act_46",
+ "id" : 77,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 25,
"source_fragment" : "="
},
@@ -19050,25 +18828,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [154],
- "actions" : ["act_43"],
- "base_default_next" : "node_117",
+ "action_ids" : [157],
+ "actions" : ["act_47"],
+ "base_default_next" : "node_123",
"next_tables" : {
- "act_43" : "node_117"
+ "act_47" : "node_123"
},
"default_entry" : {
- "action_id" : 154,
+ "action_id" : 157,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_43",
- "id" : 73,
+ "name" : "tbl_act_47",
+ "id" : 78,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -19079,25 +18857,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [153],
- "actions" : ["act_42"],
- "base_default_next" : "node_127",
+ "action_ids" : [156],
+ "actions" : ["act_46"],
+ "base_default_next" : "node_133",
"next_tables" : {
- "act_42" : "node_127"
+ "act_46" : "node_133"
},
"default_entry" : {
- "action_id" : 153,
+ "action_id" : 156,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_44",
- "id" : 74,
+ "name" : "tbl_act_48",
+ "id" : 79,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 29,
"source_fragment" : "="
},
@@ -19108,25 +18886,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [156],
- "actions" : ["act_45"],
- "base_default_next" : "node_121",
+ "action_ids" : [159],
+ "actions" : ["act_49"],
+ "base_default_next" : "node_127",
"next_tables" : {
- "act_45" : "node_121"
+ "act_49" : "node_127"
},
"default_entry" : {
- "action_id" : 156,
+ "action_id" : 159,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_45",
- "id" : 75,
+ "name" : "tbl_act_49",
+ "id" : 80,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -19137,25 +18915,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [155],
- "actions" : ["act_44"],
- "base_default_next" : "node_127",
+ "action_ids" : [158],
+ "actions" : ["act_48"],
+ "base_default_next" : "node_133",
"next_tables" : {
- "act_44" : "node_127"
+ "act_48" : "node_133"
},
"default_entry" : {
- "action_id" : 155,
+ "action_id" : 158,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_46",
- "id" : 76,
+ "name" : "tbl_act_50",
+ "id" : 81,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 335,
+ "line" : 375,
"column" : 35,
"source_fragment" : "="
},
@@ -19166,25 +18944,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [158],
- "actions" : ["act_47"],
- "base_default_next" : "node_125",
+ "action_ids" : [161],
+ "actions" : ["act_51"],
+ "base_default_next" : "node_131",
"next_tables" : {
- "act_47" : "node_125"
+ "act_51" : "node_131"
},
"default_entry" : {
- "action_id" : 158,
+ "action_id" : 161,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_47",
- "id" : 77,
+ "name" : "tbl_act_51",
+ "id" : 82,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 336,
+ "line" : 376,
"column" : 45,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -19195,14 +18973,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [157],
- "actions" : ["act_46"],
- "base_default_next" : "node_127",
+ "action_ids" : [160],
+ "actions" : ["act_50"],
+ "base_default_next" : "node_133",
"next_tables" : {
- "act_46" : "node_127"
+ "act_50" : "node_133"
},
"default_entry" : {
- "action_id" : 157,
+ "action_id" : 160,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19210,7 +18988,7 @@
},
{
"name" : "tbl_spgw_egress_gtpu_encap",
- "id" : 78,
+ "id" : 83,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 228,
@@ -19226,9 +19004,9 @@
"direct_meters" : null,
"action_ids" : [104],
"actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
- "base_default_next" : "node_129",
+ "base_default_next" : "node_135",
"next_tables" : {
- "FabricEgress.spgw_egress.gtpu_encap" : "node_129"
+ "FabricEgress.spgw_egress.gtpu_encap" : "node_135"
},
"default_entry" : {
"action_id" : 104,
@@ -19238,38 +19016,58 @@
}
},
{
- "name" : "FabricEgress.bng_egress.downstream.t_session_encap",
- "id" : 79,
+ "name" : "tbl_bng_egress_downstream_encap_v4",
+ "id" : 84,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 356,
- "column" : 10,
- "source_fragment" : "t_session_encap"
+ "line" : 295,
+ "column" : 12,
+ "source_fragment" : "encap_v4()"
},
- "key" : [
- {
- "match_type" : "exact",
- "name" : "line_id",
- "target" : ["scalars", "fabric_metadata_t._bng_line_id22"],
- "mask" : null
- }
- ],
+ "key" : [],
"match_type" : "exact",
"type" : "simple",
- "max_size" : 8192,
+ "max_size" : 1024,
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [97, 105, 106],
- "actions" : ["nop", "FabricEgress.bng_egress.downstream.encap_v4", "FabricEgress.bng_egress.downstream.encap_v6"],
- "base_default_next" : "node_131",
+ "action_ids" : [105],
+ "actions" : ["FabricEgress.bng_egress.downstream.encap_v4"],
+ "base_default_next" : "node_140",
"next_tables" : {
- "nop" : "node_131",
- "FabricEgress.bng_egress.downstream.encap_v4" : "node_131",
- "FabricEgress.bng_egress.downstream.encap_v6" : "node_131"
+ "FabricEgress.bng_egress.downstream.encap_v4" : "node_140"
},
"default_entry" : {
- "action_id" : 97,
+ "action_id" : 105,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_bng_egress_downstream_encap_v6",
+ "id" : 85,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 300,
+ "column" : 12,
+ "source_fragment" : "encap_v6()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [106],
+ "actions" : ["FabricEgress.bng_egress.downstream.encap_v6"],
+ "base_default_next" : "node_140",
+ "next_tables" : {
+ "FabricEgress.bng_egress.downstream.encap_v6" : "node_140"
+ },
+ "default_entry" : {
+ "action_id" : 106,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19277,7 +19075,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
- "id" : 80,
+ "id" : 86,
"source_info" : {
"filename" : "include/int/int_source.p4",
"line" : 66,
@@ -19300,13 +19098,13 @@
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport21"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport22"],
"mask" : null
}
],
@@ -19318,10 +19116,10 @@
"direct_meters" : null,
"action_ids" : [107, 98],
"actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
- "base_default_next" : "node_134",
+ "base_default_next" : "node_143",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_134",
- "nop" : "node_134"
+ "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_143",
+ "nop" : "node_143"
},
"default_entry" : {
"action_id" : 98,
@@ -19331,8 +19129,8 @@
}
},
{
- "name" : "tbl_act_48",
- "id" : 81,
+ "name" : "tbl_act_52",
+ "id" : 87,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -19340,14 +19138,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [159],
- "actions" : ["act_48"],
+ "action_ids" : [162],
+ "actions" : ["act_52"],
"base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
"next_tables" : {
- "act_48" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+ "act_52" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
},
"default_entry" : {
- "action_id" : 159,
+ "action_id" : 162,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19355,7 +19153,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
- "id" : 82,
+ "id" : 88,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 315,
@@ -19378,10 +19176,10 @@
"direct_meters" : null,
"action_ids" : [108, 99],
"actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
- "base_default_next" : "node_137",
+ "base_default_next" : "node_146",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_137",
- "nop" : "node_137"
+ "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_146",
+ "nop" : "node_146"
},
"default_entry" : {
"action_id" : 99,
@@ -19391,8 +19189,8 @@
}
},
{
- "name" : "tbl_act_49",
- "id" : 83,
+ "name" : "tbl_act_53",
+ "id" : 89,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 420,
@@ -19406,14 +19204,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [160],
- "actions" : ["act_49"],
- "base_default_next" : "node_139",
+ "action_ids" : [163],
+ "actions" : ["act_53"],
+ "base_default_next" : "node_148",
"next_tables" : {
- "act_49" : "node_139"
+ "act_53" : "node_148"
},
"default_entry" : {
- "action_id" : 160,
+ "action_id" : 163,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19421,7 +19219,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
- "id" : 84,
+ "id" : 90,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 331,
@@ -19779,7 +19577,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
- "id" : 85,
+ "id" : 91,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 375,
@@ -19802,25 +19600,25 @@
"direct_meters" : null,
"action_ids" : [125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 103],
"actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15", "NoAction"],
- "base_default_next" : "tbl_act_50",
+ "base_default_next" : "tbl_act_54",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_50",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_50",
- "NoAction" : "tbl_act_50"
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_54",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_54",
+ "NoAction" : "tbl_act_54"
},
"default_entry" : {
"action_id" : 103,
@@ -20136,8 +19934,8 @@
]
},
{
- "name" : "tbl_act_50",
- "id" : 86,
+ "name" : "tbl_act_54",
+ "id" : 92,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 425,
@@ -20151,22 +19949,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [162],
- "actions" : ["act_51"],
- "base_default_next" : "node_143",
+ "action_ids" : [165],
+ "actions" : ["act_55"],
+ "base_default_next" : "node_152",
"next_tables" : {
- "act_51" : "node_143"
+ "act_55" : "node_152"
},
"default_entry" : {
- "action_id" : 162,
+ "action_id" : 165,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_51",
- "id" : 87,
+ "name" : "tbl_act_55",
+ "id" : 93,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 428,
@@ -20180,22 +19978,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [161],
- "actions" : ["act_50"],
- "base_default_next" : "node_145",
+ "action_ids" : [164],
+ "actions" : ["act_54"],
+ "base_default_next" : "node_154",
"next_tables" : {
- "act_50" : "node_145"
+ "act_54" : "node_154"
},
"default_entry" : {
- "action_id" : 161,
+ "action_id" : 164,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_52",
- "id" : 88,
+ "name" : "tbl_act_56",
+ "id" : 94,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 431,
@@ -20209,22 +20007,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [163],
- "actions" : ["act_52"],
- "base_default_next" : "node_147",
+ "action_ids" : [166],
+ "actions" : ["act_56"],
+ "base_default_next" : "node_156",
"next_tables" : {
- "act_52" : "node_147"
+ "act_56" : "node_156"
},
"default_entry" : {
- "action_id" : 163,
+ "action_id" : 166,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_53",
- "id" : 89,
+ "name" : "tbl_act_57",
+ "id" : 95,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 434,
@@ -20238,14 +20036,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [164],
- "actions" : ["act_53"],
- "base_default_next" : "node_149",
+ "action_ids" : [167],
+ "actions" : ["act_57"],
+ "base_default_next" : "node_158",
"next_tables" : {
- "act_53" : "node_149"
+ "act_57" : "node_158"
},
"default_entry" : {
- "action_id" : 164,
+ "action_id" : 167,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20253,7 +20051,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
- "id" : 90,
+ "id" : 96,
"source_info" : {
"filename" : "include/int/int_report.p4",
"line" : 86,
@@ -20269,10 +20067,10 @@
"direct_meters" : null,
"action_ids" : [141, 100],
"actions" : ["FabricEgress.process_int_main.process_int_report.do_report_encapsulation", "nop"],
- "base_default_next" : "node_151",
+ "base_default_next" : "node_160",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_report.do_report_encapsulation" : "node_151",
- "nop" : "node_151"
+ "FabricEgress.process_int_main.process_int_report.do_report_encapsulation" : "node_160",
+ "nop" : "node_160"
},
"default_entry" : {
"action_id" : 100,
@@ -20283,7 +20081,7 @@
},
{
"name" : "tbl_process_int_main_process_int_sink_restore_header",
- "id" : 91,
+ "id" : 97,
"source_info" : {
"filename" : "include/int/int_sink.p4",
"line" : 53,
@@ -20312,7 +20110,7 @@
},
{
"name" : "tbl_process_int_main_process_int_sink_int_sink",
- "id" : 92,
+ "id" : 98,
"source_info" : {
"filename" : "include/int/int_sink.p4",
"line" : 54,
@@ -20343,7 +20141,7 @@
"action_profiles" : [],
"conditionals" : [
{
- "name" : "node_99",
+ "name" : "node_101",
"id" : 32,
"source_info" : {
"filename" : "include/control/packetio.p4",
@@ -20362,7 +20160,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out19"]
}
}
},
@@ -20372,11 +20170,11 @@
}
}
},
- "true_next" : "tbl_act_37",
- "false_next" : "node_101"
+ "true_next" : "tbl_act_40",
+ "false_next" : "node_103"
},
{
- "name" : "node_101",
+ "name" : "node_103",
"id" : 33,
"source_info" : {
"filename" : "include/control/packetio.p4",
@@ -20398,15 +20196,15 @@
}
}
},
- "true_next" : "tbl_act_38",
- "false_next" : "node_103"
+ "true_next" : "tbl_act_41",
+ "false_next" : "node_105"
},
{
- "name" : "node_103",
+ "name" : "node_105",
"id" : 34,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 306,
+ "line" : 332,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -20425,7 +20223,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast18"]
}
}
},
@@ -20451,15 +20249,15 @@
}
}
},
- "true_next" : "tbl_act_39",
- "false_next" : "node_105"
+ "true_next" : "tbl_act_42",
+ "false_next" : "node_107"
},
{
- "name" : "node_105",
+ "name" : "node_107",
"id" : 35,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 311,
+ "line" : 337,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -20469,7 +20267,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label12"]
},
"right" : {
"type" : "hexstr",
@@ -20477,15 +20275,15 @@
}
}
},
- "true_next" : "node_106",
+ "true_next" : "node_108",
"false_next" : "tbl_egress_next_set_mpls"
},
{
- "name" : "node_106",
+ "name" : "node_108",
"id" : 36,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -20501,15 +20299,48 @@
}
},
"true_next" : "tbl_egress_next_pop_mpls_if_present",
- "false_next" : "FabricEgress.egress_next.egress_vlan"
+ "false_next" : "node_111"
},
{
- "name" : "node_112",
+ "name" : "node_111",
"id" : 37,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 317,
+ "line" : 344,
"column" : 12,
+ "source_fragment" : "fabric_metadata.push_double_vlan == true"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "==",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._push_double_vlan8"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ },
+ "true_next" : "tbl_egress_next_push_vlan",
+ "false_next" : "tbl_act_43"
+ },
+ {
+ "name" : "node_118",
+ "id" : 38,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 354,
+ "column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
"expression" : {
@@ -20530,16 +20361,16 @@
}
}
},
- "true_next" : "node_113",
- "false_next" : "node_115"
+ "true_next" : "node_119",
+ "false_next" : "node_121"
},
{
- "name" : "node_113",
- "id" : 38,
+ "name" : "node_119",
+ "id" : 39,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 319,
- "column" : 16,
+ "line" : 356,
+ "column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
"expression" : {
@@ -20548,7 +20379,7 @@
"op" : "!=",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
"right" : {
"type" : "hexstr",
@@ -20556,15 +20387,15 @@
}
}
},
- "true_next" : "tbl_egress_next_push_vlan",
- "false_next" : "node_115"
+ "true_next" : "tbl_egress_next_push_vlan_0",
+ "false_next" : "node_121"
},
{
- "name" : "node_115",
- "id" : 39,
+ "name" : "node_121",
+ "id" : 40,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 325,
+ "line" : 365,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -20579,15 +20410,15 @@
}
}
},
- "true_next" : "tbl_act_42",
- "false_next" : "node_119"
+ "true_next" : "tbl_act_46",
+ "false_next" : "node_125"
},
{
- "name" : "node_117",
- "id" : 40,
+ "name" : "node_123",
+ "id" : 41,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -20605,15 +20436,15 @@
}
}
},
- "true_next" : "tbl_act_43",
- "false_next" : "node_127"
+ "true_next" : "tbl_act_47",
+ "false_next" : "node_133"
},
{
- "name" : "node_119",
- "id" : 41,
+ "name" : "node_125",
+ "id" : 42,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 329,
+ "line" : 369,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -20628,15 +20459,15 @@
}
}
},
- "true_next" : "tbl_act_44",
- "false_next" : "node_123"
+ "true_next" : "tbl_act_48",
+ "false_next" : "node_129"
},
{
- "name" : "node_121",
- "id" : 42,
+ "name" : "node_127",
+ "id" : 43,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},
@@ -20654,15 +20485,15 @@
}
}
},
- "true_next" : "tbl_act_45",
- "false_next" : "node_127"
+ "true_next" : "tbl_act_49",
+ "false_next" : "node_133"
},
{
- "name" : "node_123",
- "id" : 43,
+ "name" : "node_129",
+ "id" : 44,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 334,
+ "line" : 374,
"column" : 21,
"source_fragment" : "hdr.ipv6.isValid()"
},
@@ -20677,15 +20508,15 @@
}
}
},
- "true_next" : "tbl_act_46",
- "false_next" : "node_127"
+ "true_next" : "tbl_act_50",
+ "false_next" : "node_133"
},
{
- "name" : "node_125",
- "id" : 44,
+ "name" : "node_131",
+ "id" : 45,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 336,
+ "line" : 376,
"column" : 20,
"source_fragment" : "hdr.ipv6.hop_limit == 0"
},
@@ -20703,12 +20534,12 @@
}
}
},
- "true_next" : "tbl_act_47",
- "false_next" : "node_127"
+ "true_next" : "tbl_act_51",
+ "false_next" : "node_133"
},
{
- "name" : "node_127",
- "id" : 45,
+ "name" : "node_133",
+ "id" : 46,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 227,
@@ -20721,7 +20552,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction23"]
},
"right" : {
"type" : "hexstr",
@@ -20730,14 +20561,14 @@
}
},
"true_next" : "tbl_spgw_egress_gtpu_encap",
- "false_next" : "node_129"
+ "false_next" : "node_135"
},
{
- "name" : "node_129",
- "id" : 46,
+ "name" : "node_135",
+ "id" : 47,
"source_info" : {
"filename" : "include/bng.p4",
- "line" : 405,
+ "line" : 369,
"column" : 12,
"source_fragment" : "fmeta.bng.type == BNG_TYPE_DOWNSTREAM"
},
@@ -20747,7 +20578,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._bng_type21"]
+ "value" : ["scalars", "fabric_metadata_t._bng_type28"]
},
"right" : {
"type" : "hexstr",
@@ -20755,12 +20586,58 @@
}
}
},
- "true_next" : "FabricEgress.bng_egress.downstream.t_session_encap",
- "false_next" : "node_131"
+ "true_next" : "node_136",
+ "false_next" : "node_140"
},
{
- "name" : "node_131",
- "id" : 47,
+ "name" : "node_136",
+ "id" : 48,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 294,
+ "column" : 12,
+ "source_fragment" : "hdr.ipv4.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv4", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_bng_egress_downstream_encap_v4",
+ "false_next" : "node_138"
+ },
+ {
+ "name" : "node_138",
+ "id" : 49,
+ "source_info" : {
+ "filename" : "include/bng.p4",
+ "line" : 299,
+ "column" : 17,
+ "source_fragment" : "hdr.ipv6.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["ipv6", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_bng_egress_downstream_encap_v6",
+ "false_next" : "node_140"
+ },
+ {
+ "name" : "node_140",
+ "id" : 50,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 102,
@@ -20836,11 +20713,11 @@
}
},
"false_next" : null,
- "true_next" : "node_132"
+ "true_next" : "node_141"
},
{
- "name" : "node_132",
- "id" : 48,
+ "name" : "node_141",
+ "id" : 51,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 106,
@@ -20858,7 +20735,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_source24"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_source32"]
}
}
},
@@ -20869,11 +20746,11 @@
}
},
"true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
- "false_next" : "node_134"
+ "false_next" : "node_143"
},
{
- "name" : "node_134",
- "id" : 49,
+ "name" : "node_143",
+ "id" : 52,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 110,
@@ -20892,11 +20769,11 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_48"
+ "true_next" : "tbl_act_52"
},
{
- "name" : "node_137",
- "id" : 50,
+ "name" : "node_146",
+ "id" : 53,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 419,
@@ -20914,7 +20791,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_transit25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_transit33"]
}
}
},
@@ -20924,12 +20801,12 @@
}
}
},
- "true_next" : "tbl_act_49",
- "false_next" : "node_139"
+ "true_next" : "tbl_act_53",
+ "false_next" : "node_148"
},
{
- "name" : "node_139",
- "id" : 51,
+ "name" : "node_148",
+ "id" : 54,
"expression" : {
"type" : "expression",
"value" : {
@@ -20949,11 +20826,11 @@
}
},
"true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
- "false_next" : "node_149"
+ "false_next" : "node_158"
},
{
- "name" : "node_143",
- "id" : 52,
+ "name" : "node_152",
+ "id" : 55,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 427,
@@ -20971,12 +20848,12 @@
}
}
},
- "true_next" : "tbl_act_51",
- "false_next" : "node_145"
+ "true_next" : "tbl_act_55",
+ "false_next" : "node_154"
},
{
- "name" : "node_145",
- "id" : 53,
+ "name" : "node_154",
+ "id" : 56,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 430,
@@ -20994,12 +20871,12 @@
}
}
},
- "true_next" : "tbl_act_52",
- "false_next" : "node_147"
+ "true_next" : "tbl_act_56",
+ "false_next" : "node_156"
},
{
- "name" : "node_147",
- "id" : 54,
+ "name" : "node_156",
+ "id" : 57,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 433,
@@ -21017,12 +20894,12 @@
}
}
},
- "true_next" : "tbl_act_53",
- "false_next" : "node_149"
+ "true_next" : "tbl_act_57",
+ "false_next" : "node_158"
},
{
- "name" : "node_149",
- "id" : 55,
+ "name" : "node_158",
+ "id" : 58,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 115,
@@ -21044,11 +20921,11 @@
}
},
"true_next" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
- "false_next" : "node_151"
+ "false_next" : "node_160"
},
{
- "name" : "node_151",
- "id" : 56,
+ "name" : "node_160",
+ "id" : 59,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 119,
@@ -21066,7 +20943,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_sink26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_sink34"]
}
}
},
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
index c3e7b90..2a1ca9e 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
@@ -45,32 +45,51 @@
}
tables {
preamble {
- id: 33584710
- name: "FabricIngress.bng_ingress.upstream.t_line_map"
- alias: "t_line_map"
+ id: 33581620
+ name: "FabricIngress.process_set_source_sink.tb_set_source"
+ alias: "tb_set_source"
}
match_fields {
id: 1
- name: "s_tag"
- bitwidth: 12
+ name: "ig_port"
+ bitwidth: 9
match_type: EXACT
}
- match_fields {
- id: 2
- name: "c_tag"
- bitwidth: 12
- match_type: EXACT
+ action_refs {
+ id: 16778827
}
action_refs {
id: 16819938
annotations: "@defaultonly"
scope: DEFAULT_ONLY
}
+ const_default_action_id: 16819938
+ direct_resource_ids: 318787614
+ size: 511
+}
+tables {
+ preamble {
+ id: 33561619
+ name: "FabricIngress.process_set_source_sink.tb_set_sink"
+ alias: "tb_set_sink"
+ }
+ match_fields {
+ id: 1
+ name: "eg_spec"
+ bitwidth: 9
+ match_type: EXACT
+ }
action_refs {
- id: 16829434
+ id: 16788951
+ }
+ action_refs {
+ id: 16819938
+ annotations: "@defaultonly"
+ scope: DEFAULT_ONLY
}
const_default_action_id: 16819938
- size: 8192
+ direct_resource_ids: 318770551
+ size: 511
}
tables {
preamble {
@@ -173,13 +192,13 @@
}
tables {
preamble {
- id: 33555367
- name: "FabricIngress.bng_ingress.downstream.t_line_map_v4"
- alias: "t_line_map_v4"
+ id: 33594775
+ name: "FabricIngress.bng_ingress.downstream.t_line_session_map"
+ alias: "t_line_session_map"
}
match_fields {
id: 1
- name: "ipv4_dst"
+ name: "line_id"
bitwidth: 32
match_type: EXACT
}
@@ -189,39 +208,13 @@
scope: DEFAULT_ONLY
}
action_refs {
- id: 16798636
+ id: 16795395
}
action_refs {
- id: 16842299
+ id: 16822844
}
const_default_action_id: 16819938
- size: 32768
-}
-tables {
- preamble {
- id: 33572185
- name: "FabricIngress.bng_ingress.downstream.t_line_map_v6"
- alias: "t_line_map_v6"
- }
- match_fields {
- id: 1
- name: "ipv6_dst_net_id"
- bitwidth: 64
- match_type: EXACT
- }
- action_refs {
- id: 16819938
- annotations: "@defaultonly"
- scope: DEFAULT_ONLY
- }
- action_refs {
- id: 16798636
- }
- action_refs {
- id: 16842299
- }
- const_default_action_id: 16819938
- size: 32768
+ size: 8192
}
tables {
preamble {
@@ -297,51 +290,32 @@
}
tables {
preamble {
- id: 33581620
- name: "FabricIngress.process_set_source_sink.tb_set_source"
- alias: "tb_set_source"
+ id: 33592041
+ name: "FabricIngress.bng_ingress.t_line_map"
+ alias: "t_line_map"
}
match_fields {
id: 1
- name: "ig_port"
- bitwidth: 9
+ name: "s_tag"
+ bitwidth: 12
match_type: EXACT
}
- action_refs {
- id: 16778827
+ match_fields {
+ id: 2
+ name: "c_tag"
+ bitwidth: 12
+ match_type: EXACT
}
action_refs {
id: 16819938
annotations: "@defaultonly"
scope: DEFAULT_ONLY
}
- const_default_action_id: 16819938
- direct_resource_ids: 318787614
- size: 511
-}
-tables {
- preamble {
- id: 33561619
- name: "FabricIngress.process_set_source_sink.tb_set_sink"
- alias: "tb_set_sink"
- }
- match_fields {
- id: 1
- name: "eg_spec"
- bitwidth: 9
- match_type: EXACT
- }
action_refs {
- id: 16788951
- }
- action_refs {
- id: 16819938
- annotations: "@defaultonly"
- scope: DEFAULT_ONLY
+ id: 16829385
}
const_default_action_id: 16819938
- direct_resource_ids: 318770551
- size: 511
+ size: 8192
}
tables {
preamble {
@@ -367,6 +341,12 @@
bitwidth: 12
match_type: TERNARY
}
+ match_fields {
+ id: 4
+ name: "inner_vlan_id"
+ bitwidth: 12
+ match_type: TERNARY
+ }
action_refs {
id: 16836487
}
@@ -378,7 +358,7 @@
}
const_default_action_id: 16836487
direct_resource_ids: 318815501
- size: 1024
+ size: 8192
}
tables {
preamble {
@@ -400,8 +380,20 @@
}
match_fields {
id: 3
- name: "eth_type"
- bitwidth: 16
+ name: "is_ipv4"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 4
+ name: "is_ipv6"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 5
+ name: "is_mpls"
+ bitwidth: 1
match_type: EXACT
}
action_refs {
@@ -629,6 +621,9 @@
id: 16790685
}
action_refs {
+ id: 16803337
+ }
+ action_refs {
id: 16819938
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -757,32 +752,6 @@
}
tables {
preamble {
- id: 33576241
- name: "FabricEgress.bng_egress.downstream.t_session_encap"
- alias: "t_session_encap"
- }
- match_fields {
- id: 1
- name: "line_id"
- bitwidth: 32
- match_type: EXACT
- }
- action_refs {
- id: 16819938
- annotations: "@defaultonly"
- scope: DEFAULT_ONLY
- }
- action_refs {
- id: 16784000
- }
- action_refs {
- id: 16801306
- }
- const_default_action_id: 16819938
- size: 8192
-}
-tables {
- preamble {
id: 33612258
name: "FabricEgress.process_int_main.process_int_source.tb_int_source"
alias: "tb_int_source"
@@ -923,14 +892,16 @@
}
actions {
preamble {
- id: 16829434
- name: "FabricIngress.bng_ingress.upstream.set_line"
- alias: "set_line"
+ id: 16778827
+ name: "FabricIngress.process_set_source_sink.int_set_source"
+ alias: "int_set_source"
}
- params {
- id: 1
- name: "line_id"
- bitwidth: 32
+}
+actions {
+ preamble {
+ id: 16788951
+ name: "FabricIngress.process_set_source_sink.int_set_sink"
+ alias: "int_set_sink"
}
}
actions {
@@ -963,31 +934,21 @@
}
actions {
preamble {
- id: 16798636
- name: "FabricIngress.bng_ingress.downstream.set_line_next"
- alias: "set_line_next"
+ id: 16795395
+ name: "FabricIngress.bng_ingress.downstream.set_session"
+ alias: "set_session"
}
params {
id: 1
- name: "line_id"
- bitwidth: 32
- }
- params {
- id: 2
- name: "next_id"
- bitwidth: 32
+ name: "pppoe_session_id"
+ bitwidth: 16
}
}
actions {
preamble {
- id: 16842299
- name: "FabricIngress.bng_ingress.downstream.set_line_drop"
- alias: "set_line_drop"
- }
- params {
- id: 1
- name: "line_id"
- bitwidth: 32
+ id: 16822844
+ name: "FabricIngress.bng_ingress.downstream.drop"
+ alias: "downstream.drop"
}
}
actions {
@@ -1006,16 +967,14 @@
}
actions {
preamble {
- id: 16778827
- name: "FabricIngress.process_set_source_sink.int_set_source"
- alias: "int_set_source"
+ id: 16829385
+ name: "FabricIngress.bng_ingress.set_line"
+ alias: "set_line"
}
-}
-actions {
- preamble {
- id: 16788951
- name: "FabricIngress.process_set_source_sink.int_set_sink"
- alias: "int_set_sink"
+ params {
+ id: 1
+ name: "line_id"
+ bitwidth: 32
}
}
actions {
@@ -1146,7 +1105,7 @@
preamble {
id: 16820765
name: "FabricIngress.acl.drop"
- alias: "drop"
+ alias: "acl.drop"
}
}
actions {
@@ -1170,6 +1129,23 @@
}
actions {
preamble {
+ id: 16803337
+ name: "FabricIngress.next.set_double_vlan"
+ alias: "set_double_vlan"
+ }
+ params {
+ id: 1
+ name: "outer_vlan_id"
+ bitwidth: 12
+ }
+ params {
+ id: 2
+ name: "inner_vlan_id"
+ bitwidth: 12
+ }
+}
+actions {
+ preamble {
id: 16842190
name: "FabricIngress.next.output_xconnect"
alias: "output_xconnect"
@@ -1339,16 +1315,6 @@
name: "FabricEgress.bng_egress.downstream.encap_v4"
alias: "encap_v4"
}
- params {
- id: 1
- name: "c_tag"
- bitwidth: 12
- }
- params {
- id: 2
- name: "pppoe_session_id"
- bitwidth: 16
- }
}
actions {
preamble {
@@ -1356,16 +1322,6 @@
name: "FabricEgress.bng_egress.downstream.encap_v6"
alias: "encap_v6"
}
- params {
- id: 1
- name: "c_tag"
- bitwidth: 12
- }
- params {
- id: 2
- name: "pppoe_session_id"
- bitwidth: 16
- }
}
actions {
preamble {
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
index 7daaa2c..f8bab98 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
@@ -10,31 +10,34 @@
["tmp_1", 32, false],
["egress_next_tmp", 1, false],
["process_int_main_process_int_transit_hasReturned", 1, false],
- ["fabric_metadata_t._eth_type0", 16, false],
- ["fabric_metadata_t._ip_eth_type1", 16, false],
- ["fabric_metadata_t._vlan_id2", 12, false],
- ["fabric_metadata_t._vlan_pri3", 3, false],
- ["fabric_metadata_t._vlan_cfi4", 1, false],
- ["fabric_metadata_t._mpls_label5", 20, false],
- ["fabric_metadata_t._mpls_ttl6", 8, false],
- ["fabric_metadata_t._skip_forwarding7", 1, false],
- ["fabric_metadata_t._skip_next8", 1, false],
- ["fabric_metadata_t._fwd_type9", 3, false],
- ["fabric_metadata_t._next_id10", 32, false],
- ["fabric_metadata_t._is_multicast11", 1, false],
- ["fabric_metadata_t._is_controller_packet_out12", 1, false],
- ["fabric_metadata_t._ip_proto13", 8, false],
- ["fabric_metadata_t._l4_sport14", 16, false],
- ["fabric_metadata_t._l4_dport15", 16, false],
- ["fabric_metadata_t._int_meta_source16", 1, false],
- ["fabric_metadata_t._int_meta_transit17", 1, false],
- ["fabric_metadata_t._int_meta_sink18", 1, false],
- ["fabric_metadata_t._int_meta_switch_id19", 32, false],
- ["fabric_metadata_t._int_meta_new_words20", 8, false],
- ["fabric_metadata_t._int_meta_new_bytes21", 16, false],
- ["fabric_metadata_t._int_meta_ig_tstamp22", 32, false],
- ["fabric_metadata_t._int_meta_eg_tstamp23", 32, false],
- ["_padding_0", 6, false]
+ ["fabric_metadata_t._last_eth_type0", 16, false],
+ ["fabric_metadata_t._is_ipv41", 1, false],
+ ["fabric_metadata_t._is_ipv62", 1, false],
+ ["fabric_metadata_t._is_mpls3", 1, false],
+ ["fabric_metadata_t._ip_eth_type4", 16, false],
+ ["fabric_metadata_t._vlan_id5", 12, false],
+ ["fabric_metadata_t._vlan_pri6", 3, false],
+ ["fabric_metadata_t._vlan_cfi7", 1, false],
+ ["fabric_metadata_t._mpls_label8", 20, false],
+ ["fabric_metadata_t._mpls_ttl9", 8, false],
+ ["fabric_metadata_t._skip_forwarding10", 1, false],
+ ["fabric_metadata_t._skip_next11", 1, false],
+ ["fabric_metadata_t._fwd_type12", 3, false],
+ ["fabric_metadata_t._next_id13", 32, false],
+ ["fabric_metadata_t._is_multicast14", 1, false],
+ ["fabric_metadata_t._is_controller_packet_out15", 1, false],
+ ["fabric_metadata_t._ip_proto16", 8, false],
+ ["fabric_metadata_t._l4_sport17", 16, false],
+ ["fabric_metadata_t._l4_dport18", 16, false],
+ ["fabric_metadata_t._int_meta_source19", 1, false],
+ ["fabric_metadata_t._int_meta_transit20", 1, false],
+ ["fabric_metadata_t._int_meta_sink21", 1, false],
+ ["fabric_metadata_t._int_meta_switch_id22", 32, false],
+ ["fabric_metadata_t._int_meta_new_words23", 8, false],
+ ["fabric_metadata_t._int_meta_new_bytes24", 16, false],
+ ["fabric_metadata_t._int_meta_ig_tstamp25", 32, false],
+ ["fabric_metadata_t._int_meta_eg_tstamp26", 32, false],
+ ["_padding_0", 3, false]
]
},
{
@@ -533,7 +536,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
@@ -546,7 +549,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "hexstr",
@@ -573,7 +576,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"value" : "default",
@@ -607,7 +610,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -622,6 +625,18 @@
"next_state" : "parse_inner_vlan_tag"
},
{
+ "type" : "hexstr",
+ "value" : "0x88a8",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x9100",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
"value" : "default",
"mask" : null,
"next_state" : null
@@ -653,7 +668,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -691,7 +706,30 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._is_mpls3"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ },
+ {
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "field",
@@ -704,7 +742,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
},
{
"type" : "field",
@@ -748,12 +786,49 @@
]
},
{
- "name" : "parse_ipv4",
+ "name" : "pre_parse_ipv4",
"id" : 6,
"parser_ops" : [
{
"parameters" : [
{
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._is_ipv41"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ }
+ ],
+ "transitions" : [
+ {
+ "value" : "default",
+ "mask" : null,
+ "next_state" : "parse_ipv4"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
+ "name" : "parse_ipv4",
+ "id" : 7,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
"type" : "regular",
"value" : "ipv4"
}
@@ -764,7 +839,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
},
{
"type" : "field",
@@ -777,7 +852,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
},
{
"type" : "hexstr",
@@ -834,7 +909,7 @@
},
{
"name" : "parse_tcp",
- "id" : 7,
+ "id" : 8,
"parser_ops" : [
{
"parameters" : [
@@ -849,7 +924,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -862,7 +937,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -883,7 +958,7 @@
},
{
"name" : "parse_udp",
- "id" : 8,
+ "id" : 9,
"parser_ops" : [
{
"parameters" : [
@@ -898,7 +973,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -911,7 +986,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -937,7 +1012,7 @@
},
{
"name" : "parse_icmp",
- "id" : 9,
+ "id" : 10,
"parser_ops" : [
{
"parameters" : [
@@ -960,7 +1035,7 @@
},
{
"name" : "parse_int",
- "id" : 10,
+ "id" : 11,
"parser_ops" : [],
"transitions" : [
{
@@ -984,7 +1059,7 @@
},
{
"name" : "parse_intl4_shim",
- "id" : 11,
+ "id" : 12,
"parser_ops" : [
{
"parameters" : [
@@ -1027,7 +1102,7 @@
},
{
"name" : "parse_int_data",
- "id" : 12,
+ "id" : 13,
"parser_ops" : [],
"transitions" : [
{
@@ -1040,7 +1115,7 @@
},
{
"name" : "parse_intl4_tail",
- "id" : 13,
+ "id" : 14,
"parser_ops" : [
{
"parameters" : [
@@ -1071,7 +1146,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/parser.p4",
- "line" : 261,
+ "line" : 276,
"column" : 8,
"source_fragment" : "FabricDeparser"
},
@@ -1111,7 +1186,7 @@
"binding" : "FabricIngress.filtering.fwd_classifier",
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 80,
+ "line" : 83,
"column" : 50,
"source_fragment" : "fwd_classifier_counter"
}
@@ -1183,7 +1258,7 @@
"binding" : "FabricIngress.next.xconnect",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 92,
+ "line" : 103,
"column" : 50,
"source_fragment" : "xconnect_counter"
}
@@ -1195,7 +1270,7 @@
"binding" : "FabricIngress.next.hashed",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 166,
+ "line" : 178,
"column" : 50,
"source_fragment" : "hashed_counter"
}
@@ -1207,7 +1282,7 @@
"binding" : "FabricIngress.next.multicast",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 210,
+ "line" : 222,
"column" : 50,
"source_fragment" : "multicast_counter"
}
@@ -1255,7 +1330,7 @@
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 283,
+ "line" : 309,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -1446,7 +1521,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_source16"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_source19"]
},
{
"type" : "expression",
@@ -1482,7 +1557,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
},
{
"type" : "expression",
@@ -1511,7 +1586,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -1558,7 +1633,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -1589,7 +1664,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
{
"type" : "runtime_data",
@@ -1598,7 +1673,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 83,
+ "line" : 86,
"column" : 33,
"source_fragment" : "= fwd_type; ..."
}
@@ -1620,7 +1695,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1651,7 +1726,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "hexstr",
@@ -1670,7 +1745,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1701,7 +1776,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1738,7 +1813,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1783,7 +1858,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -1865,7 +1940,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -1912,7 +1987,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -1956,6 +2031,25 @@
"column" : 5,
"source_fragment" : "standard_metadata.egress_spec = port_num; ..."
}
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
}
]
},
@@ -1974,7 +2068,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1983,7 +2077,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 100,
+ "line" : 112,
"column" : 32,
"source_fragment" : "= next_id; ..."
}
@@ -2125,7 +2219,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "runtime_data",
@@ -2222,7 +2316,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 213,
+ "line" : 225,
"column" : 8,
"source_fragment" : "standard_metadata.mcast_grp = group_id"
}
@@ -2232,7 +2326,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
},
{
"type" : "expression",
@@ -2251,7 +2345,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 214,
+ "line" : 226,
"column" : 37,
"source_fragment" : "= true; ..."
}
@@ -2302,7 +2396,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
},
{
"type" : "expression",
@@ -2348,26 +2442,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
- },
- {
- "type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- }
- ],
- "source_info" : {
- "filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "field",
@@ -2376,7 +2451,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 106,
+ "line" : 110,
"column" : 36,
"source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
}
@@ -2386,7 +2461,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
},
{
"type" : "field",
@@ -2395,7 +2470,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 107,
+ "line" : 111,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.pri; ..."
}
@@ -2405,7 +2480,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
},
{
"type" : "field",
@@ -2414,7 +2489,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 108,
+ "line" : 112,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.cfi; ..."
}
@@ -2431,7 +2506,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
},
{
"type" : "hexstr",
@@ -2440,7 +2515,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
}
@@ -2457,6 +2532,110 @@
"parameters" : [
{
"type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8847"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 108,
+ "column" : 31,
+ "source_fragment" : "0x8847; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_3",
+ "id" : 33,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "= hdr.inner_vlan_tag.eth_type; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_4",
+ "id" : 34,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_5",
+ "id" : 35,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["ethernet", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "= hdr.ethernet.eth_type; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_6",
+ "id" : 36,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
"value" : ["scalars", "tmp"]
},
{
@@ -2506,8 +2685,8 @@
]
},
{
- "name" : "act_3",
- "id" : 33,
+ "name" : "act_7",
+ "id" : 37,
"runtime_data" : [],
"primitives" : [
{
@@ -2565,37 +2744,37 @@
},
{
"name" : "nop",
- "id" : 34,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
- "id" : 35,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
- "id" : 36,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "NoAction",
- "id" : 37,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "NoAction",
"id" : 38,
"runtime_data" : [],
"primitives" : []
},
{
- "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+ "name" : "nop",
"id" : 39,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "nop",
+ "id" : 40,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "NoAction",
+ "id" : 41,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "NoAction",
+ "id" : 42,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+ "id" : 43,
"runtime_data" : [
{
"name" : "max_hop",
@@ -2954,7 +3133,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
}
],
"source_info" : {
@@ -3090,7 +3269,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
- "id" : 40,
+ "id" : 44,
"runtime_data" : [
{
"name" : "switch_id",
@@ -3103,7 +3282,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_transit17"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_transit20"]
},
{
"type" : "expression",
@@ -3132,7 +3311,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
},
{
"type" : "runtime_data",
@@ -3150,655 +3329,12 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
- "id" : 41,
+ "id" : 45,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
- "id" : 42,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_occupancy"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 60,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 62,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_occupancy"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_qdepth"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 63,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
- "id" : 43,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_hop_latency"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 54,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_hop_latency", "hop_latency"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 55,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
- "id" : 44,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_occupancy"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 60,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 62,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_occupancy"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_qdepth"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 63,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_hop_latency"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 54,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_hop_latency", "hop_latency"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 55,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x02"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 103,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0008"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 104,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
- "id" : 45,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
"id" : 46,
"runtime_data" : [],
"primitives" : [
@@ -3869,90 +3405,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -3966,11 +3423,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -3984,9 +3441,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -3994,7 +3451,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -4008,11 +3465,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -4026,15 +3483,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
"id" : 47,
"runtime_data" : [],
"primitives" : [
@@ -4073,90 +3530,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -4170,11 +3548,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -4188,9 +3566,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -4198,7 +3576,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -4212,11 +3590,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -4230,15 +3608,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
"id" : 48,
"runtime_data" : [],
"primitives" : [
@@ -4343,6 +3721,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 103,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0008"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 104,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+ "id" : 49,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -4426,7 +3895,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -4440,132 +3909,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
- "id" : 49,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_switch_id"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 41,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_switch_id", "switch_id"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 42,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -4593,7 +3937,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -4607,7 +3951,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -4633,7 +3977,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
"id" : 50,
"runtime_data" : [],
"primitives" : [
@@ -4708,14 +4052,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_switch_id"
+ "value" : "int_port_ids"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 41,
+ "line" : 47,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
+ "source_fragment" : "hdr.int_port_ids.setValid()"
}
},
{
@@ -4723,18 +4067,31 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_switch_id", "switch_id"]
+ "value" : ["int_port_ids", "ingress_port_id"]
},
{
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 42,
+ "line" : 48,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
}
},
{
@@ -4742,7 +4099,39 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -4756,7 +4145,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -4784,7 +4173,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -4798,7 +4187,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -4824,7 +4213,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
"id" : 51,
"runtime_data" : [],
"primitives" : [
@@ -4867,14 +4256,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_switch_id"
+ "value" : "int_port_ids"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 41,
+ "line" : 47,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
+ "source_fragment" : "hdr.int_port_ids.setValid()"
}
},
{
@@ -4882,18 +4271,31 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_switch_id", "switch_id"]
+ "value" : ["int_port_ids", "ingress_port_id"]
},
{
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 42,
+ "line" : 48,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
}
},
{
@@ -4901,7 +4303,39 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -4915,7 +4349,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -4943,7 +4377,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -4957,7 +4391,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -4983,7 +4417,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
"id" : 52,
"runtime_data" : [],
"primitives" : [
@@ -5092,131 +4526,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_switch_id"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 41,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_switch_id", "switch_id"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 42,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
- "id" : 53,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_port_ids"
}
],
@@ -5292,6 +4601,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+ "id" : 53,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -5315,7 +4715,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
}
],
"source_info" : {
@@ -5330,7 +4730,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -5344,11 +4744,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -5362,9 +4762,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -5372,7 +4772,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -5386,11 +4786,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -5404,15 +4804,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
"id" : 54,
"runtime_data" : [],
"primitives" : [
@@ -5487,85 +4887,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_switch_id"
}
],
@@ -5585,7 +4906,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
}
],
"source_info" : {
@@ -5600,7 +4921,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -5614,11 +4935,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -5632,9 +4953,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -5642,7 +4963,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -5656,11 +4977,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -5674,15 +4995,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
"id" : 55,
"runtime_data" : [],
"primitives" : [
@@ -5725,85 +5046,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_switch_id"
}
],
@@ -5823,7 +5065,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
}
],
"source_info" : {
@@ -5838,7 +5080,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -5852,11 +5094,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -5870,9 +5112,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -5880,7 +5122,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -5894,11 +5136,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -5912,15 +5154,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
"id" : 56,
"runtime_data" : [],
"primitives" : [
@@ -6029,6 +5271,131 @@
"parameters" : [
{
"type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+ "id" : 57,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
"value" : "int_port_ids"
}
],
@@ -6127,7 +5494,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
}
],
"source_info" : {
@@ -6142,7 +5509,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -6156,460 +5523,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x04"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 115,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0010"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 116,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
- "id" : 57,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
- "id" : 58,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tx_util"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 88,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tx_util", "egress_port_tx_util"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 90,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
- "id" : 59,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_congestion"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 80,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 82,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_congestion"]
- },
- {
- "type" : "hexstr",
- "value" : "0x000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 83,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
- "id" : 60,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tx_util"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 88,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tx_util", "egress_port_tx_util"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 90,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_congestion"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 80,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 82,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_congestion"]
- },
- {
- "type" : "hexstr",
- "value" : "0x000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 83,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -6637,7 +5551,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -6651,7 +5565,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -6677,8 +5591,8 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
- "id" : 61,
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+ "id" : 58,
"runtime_data" : [],
"primitives" : [
{
@@ -6686,14 +5600,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_egress_tstamp"
+ "value" : "int_q_occupancy"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 74,
+ "line" : 60,
"column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ "source_fragment" : "hdr.int_q_occupancy.setValid()"
}
},
{
@@ -6701,7 +5615,26 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
+ "value" : ["int_q_occupancy", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 62,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_occupancy", "q_occupancy"]
},
{
"type" : "expression",
@@ -6710,22 +5643,12 @@
"value" : {
"op" : "&",
"left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_qdepth"]
},
"right" : {
"type" : "hexstr",
- "value" : "0xffffffff"
+ "value" : "0xffffff"
}
}
}
@@ -6733,9 +5656,24 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 75,
+ "line" : 63,
"column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_port_ids"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 47,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.setValid()"
}
},
{
@@ -6743,7 +5681,105 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["int_port_ids", "ingress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 48,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -6757,11 +5793,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x01"
+ "value" : "0x03"
}
}
},
@@ -6775,9 +5811,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 97,
+ "line" : 109,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
}
},
{
@@ -6785,7 +5821,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -6799,11 +5835,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0004"
+ "value" : "0x000c"
}
}
},
@@ -6817,15 +5853,563 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 98,
+ "line" : 110,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+ "id" : 59,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_hop_latency"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 54,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_hop_latency", "hop_latency"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 55,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_port_ids"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 47,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "ingress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 48,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+ "id" : 60,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_q_occupancy"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 60,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_occupancy", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 62,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_occupancy", "q_occupancy"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_qdepth"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 63,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_hop_latency"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 54,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_hop_latency", "hop_latency"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 55,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_port_ids"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 47,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "ingress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 48,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x04"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 115,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0010"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 116,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+ "id" : 61,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
"id" : 62,
"runtime_data" : [],
"primitives" : [
@@ -6864,26 +6448,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -6897,53 +6466,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -6957,9 +6484,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -6967,7 +6494,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -6981,11 +6508,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -6999,15 +6526,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
"id" : 63,
"runtime_data" : [],
"primitives" : [
@@ -7065,26 +6592,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -7098,53 +6610,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -7158,9 +6628,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -7168,7 +6638,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -7182,11 +6652,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -7200,15 +6670,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
"id" : 64,
"runtime_data" : [],
"primitives" : [
@@ -7300,6 +6770,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 103,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0008"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 104,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+ "id" : 65,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -7361,7 +6922,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -7375,132 +6936,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
- "id" : 65,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_ingress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 68,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -7528,7 +6964,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -7542,7 +6978,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -7568,7 +7004,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
"id" : 66,
"runtime_data" : [],
"primitives" : [
@@ -7611,14 +7047,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_ingress_tstamp"
+ "value" : "int_egress_tstamp"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 68,
+ "line" : 74,
"column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
}
},
{
@@ -7626,26 +7062,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
},
{
"type" : "expression",
@@ -7659,7 +7076,49 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -7687,7 +7146,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -7701,7 +7160,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -7727,7 +7186,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
"id" : 67,
"runtime_data" : [],
"primitives" : [
@@ -7789,14 +7248,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_ingress_tstamp"
+ "value" : "int_egress_tstamp"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 68,
+ "line" : 74,
"column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
}
},
{
@@ -7804,26 +7263,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
},
{
"type" : "expression",
@@ -7837,7 +7277,49 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -7865,7 +7347,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -7879,7 +7361,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -7905,7 +7387,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
"id" : 68,
"runtime_data" : [],
"primitives" : [
@@ -8001,131 +7483,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_ingress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 68,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
- "id" : 69,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_egress_tstamp"
}
],
@@ -8179,6 +7536,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+ "id" : 69,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -8217,7 +7665,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -8231,11 +7679,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -8249,9 +7697,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -8259,7 +7707,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -8273,11 +7721,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -8291,15 +7739,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
"id" : 70,
"runtime_data" : [],
"primitives" : [
@@ -8342,63 +7790,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_ingress_tstamp"
}
],
@@ -8433,7 +7824,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -8447,11 +7838,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -8465,9 +7856,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -8475,7 +7866,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -8489,11 +7880,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -8507,15 +7898,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
"id" : 71,
"runtime_data" : [],
"primitives" : [
@@ -8577,63 +7968,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_ingress_tstamp"
}
],
@@ -8668,7 +8002,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -8682,11 +8016,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -8700,9 +8034,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -8710,7 +8044,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -8724,11 +8058,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -8742,15 +8076,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
"id" : 72,
"runtime_data" : [],
"primitives" : [
@@ -8846,6 +8180,131 @@
"parameters" : [
{
"type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+ "id" : 73,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
"value" : "int_egress_tstamp"
}
],
@@ -8937,7 +8396,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
{
"type" : "expression",
@@ -8951,7 +8410,727 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 103,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0008"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 104,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+ "id" : 74,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tx_util"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 88,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 90,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 74,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+ "id" : 75,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_q_congestion"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 80,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 82,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_congestion"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 83,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 74,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+ "id" : 76,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tx_util"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 88,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 90,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_q_congestion"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 80,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 82,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_congestion"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 83,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 74,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
},
"right" : {
"type" : "hexstr",
@@ -8979,7 +9158,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
{
"type" : "expression",
@@ -8993,7 +9172,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
},
"right" : {
"type" : "hexstr",
@@ -9020,7 +9199,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 73,
+ "id" : 77,
"runtime_data" : [],
"primitives" : [
{
@@ -9033,7 +9212,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 252,
+ "line" : 264,
"column" : 8,
"source_fragment" : "hdr.mpls.setInvalid()"
}
@@ -9043,17 +9222,17 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 254,
- "column" : 33,
+ "line" : 266,
+ "column" : 38,
"source_fragment" : "= fabric_metadata.ip_eth_type; ..."
}
}
@@ -9061,7 +9240,7 @@
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 74,
+ "id" : 78,
"runtime_data" : [],
"primitives" : [
{
@@ -9074,7 +9253,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 259,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.mpls.setValid()"
}
@@ -9088,12 +9267,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 260,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
}
@@ -9112,7 +9291,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 261,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.mpls.tc = 3w0"
}
@@ -9131,7 +9310,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 262,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.mpls.bos = 1w1"
}
@@ -9145,12 +9324,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 263,
+ "line" : 275,
"column" : 8,
"source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
}
@@ -9160,7 +9339,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "hexstr",
@@ -9178,7 +9357,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 75,
+ "id" : 79,
"runtime_data" : [],
"primitives" : [
{
@@ -9191,7 +9370,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 271,
+ "line" : 283,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setValid()"
}
@@ -9205,12 +9384,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 272,
+ "line" : 284,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
}
@@ -9224,12 +9403,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 273,
+ "line" : 285,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
}
@@ -9243,14 +9422,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 274,
+ "line" : 286,
"column" : 8,
- "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -9262,12 +9441,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 275,
+ "line" : 287,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
}
@@ -9295,7 +9474,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 76,
+ "id" : 80,
"runtime_data" : [],
"primitives" : [
{
@@ -9307,14 +9486,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 286,
+ "line" : 312,
"column" : 8,
- "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -9327,7 +9506,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 287,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -9335,8 +9514,8 @@
]
},
{
- "name" : "act_4",
- "id" : 77,
+ "name" : "act_8",
+ "id" : 81,
"runtime_data" : [],
"primitives" : [
{
@@ -9352,8 +9531,8 @@
]
},
{
- "name" : "act_5",
- "id" : 78,
+ "name" : "act_9",
+ "id" : 82,
"runtime_data" : [],
"primitives" : [
{
@@ -9403,8 +9582,8 @@
]
},
{
- "name" : "act_6",
- "id" : 79,
+ "name" : "act_10",
+ "id" : 83,
"runtime_data" : [],
"primitives" : [
{
@@ -9417,7 +9596,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -9425,8 +9604,8 @@
]
},
{
- "name" : "act_7",
- "id" : 80,
+ "name" : "act_11",
+ "id" : 84,
"runtime_data" : [],
"primitives" : [
{
@@ -9455,8 +9634,8 @@
]
},
{
- "name" : "act_8",
- "id" : 81,
+ "name" : "act_12",
+ "id" : 85,
"runtime_data" : [],
"primitives" : [
{
@@ -9485,8 +9664,8 @@
]
},
{
- "name" : "act_9",
- "id" : 82,
+ "name" : "act_13",
+ "id" : 86,
"runtime_data" : [],
"primitives" : [
{
@@ -9499,7 +9678,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -9507,8 +9686,8 @@
]
},
{
- "name" : "act_10",
- "id" : 83,
+ "name" : "act_14",
+ "id" : 87,
"runtime_data" : [],
"primitives" : [
{
@@ -9548,7 +9727,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -9556,8 +9735,8 @@
]
},
{
- "name" : "act_11",
- "id" : 84,
+ "name" : "act_15",
+ "id" : 88,
"runtime_data" : [],
"primitives" : [
{
@@ -9570,7 +9749,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -9578,8 +9757,8 @@
]
},
{
- "name" : "act_12",
- "id" : 85,
+ "name" : "act_16",
+ "id" : 89,
"runtime_data" : [],
"primitives" : [
{
@@ -9619,7 +9798,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -9627,8 +9806,8 @@
]
},
{
- "name" : "act_13",
- "id" : 86,
+ "name" : "act_17",
+ "id" : 90,
"runtime_data" : [],
"primitives" : [
{
@@ -9657,8 +9836,8 @@
]
},
{
- "name" : "act_14",
- "id" : 87,
+ "name" : "act_18",
+ "id" : 91,
"runtime_data" : [],
"primitives" : [
{
@@ -9693,8 +9872,8 @@
]
},
{
- "name" : "act_15",
- "id" : 88,
+ "name" : "act_19",
+ "id" : 92,
"runtime_data" : [],
"primitives" : [
{
@@ -9720,7 +9899,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
}
}
},
@@ -9742,8 +9921,8 @@
]
},
{
- "name" : "act_16",
- "id" : 89,
+ "name" : "act_20",
+ "id" : 93,
"runtime_data" : [],
"primitives" : [
{
@@ -9791,8 +9970,8 @@
]
},
{
- "name" : "act_17",
- "id" : 90,
+ "name" : "act_21",
+ "id" : 94,
"runtime_data" : [],
"primitives" : [
{
@@ -9818,7 +9997,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
}
}
},
@@ -9840,8 +10019,8 @@
]
},
{
- "name" : "act_18",
- "id" : 91,
+ "name" : "act_22",
+ "id" : 95,
"runtime_data" : [],
"primitives" : [
{
@@ -9867,7 +10046,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
}
}
},
@@ -9935,9 +10114,9 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ "line" : 110,
+ "column" : 36,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
},
"key" : [],
"match_type" : "exact",
@@ -9964,7 +10143,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "="
},
@@ -9977,9 +10156,9 @@
"direct_meters" : null,
"action_ids" : [31],
"actions" : ["act_1"],
- "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "base_default_next" : "node_8",
"next_tables" : {
- "act_1" : "FabricIngress.filtering.ingress_port_vlan"
+ "act_1" : "node_8"
},
"default_entry" : {
"action_id" : 31,
@@ -9989,11 +10168,127 @@
}
},
{
- "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "name" : "tbl_act_2",
"id" : 3,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 51,
+ "line" : 131,
+ "column" : 42,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [32],
+ "actions" : ["act_2"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_2" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 32,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_3",
+ "id" : 4,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [33],
+ "actions" : ["act_3"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_3" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 33,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_4",
+ "id" : 5,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [34],
+ "actions" : ["act_4"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_4" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 34,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_5",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [35],
+ "actions" : ["act_5"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_5" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 35,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "id" : 7,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 53,
"column" : 10,
"source_fragment" : "ingress_port_vlan"
},
@@ -10015,6 +10310,12 @@
"name" : "vlan_id",
"target" : ["vlan_tag", "vlan_id"],
"mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "inner_vlan_id",
+ "target" : ["inner_vlan_tag", "vlan_id"],
+ "mask" : null
}
],
"match_type" : "ternary",
@@ -10040,10 +10341,10 @@
},
{
"name" : "FabricIngress.filtering.fwd_classifier",
- "id" : 4,
+ "id" : 8,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 87,
+ "line" : 90,
"column" : 10,
"source_fragment" : "fwd_classifier"
},
@@ -10062,8 +10363,20 @@
},
{
"match_type" : "exact",
- "name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "name" : "is_ipv4",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv41"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_ipv6",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv62"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_mpls",
+ "target" : ["scalars", "fabric_metadata_t._is_mpls3"],
"mask" : null
}
],
@@ -10075,9 +10388,9 @@
"direct_meters" : null,
"action_ids" : [12],
"actions" : ["FabricIngress.filtering.set_forwarding_type"],
- "base_default_next" : "node_10",
+ "base_default_next" : "node_17",
"next_tables" : {
- "FabricIngress.filtering.set_forwarding_type" : "node_10"
+ "FabricIngress.filtering.set_forwarding_type" : "node_17"
},
"default_entry" : {
"action_id" : 12,
@@ -10088,7 +10401,7 @@
},
{
"name" : "FabricIngress.forwarding.bridging",
- "id" : 5,
+ "id" : 9,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 46,
@@ -10099,7 +10412,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -10131,7 +10444,7 @@
},
{
"name" : "FabricIngress.forwarding.mpls",
- "id" : 6,
+ "id" : 10,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 71,
@@ -10142,7 +10455,7 @@
{
"match_type" : "exact",
"name" : "mpls_label",
- "target" : ["scalars", "fabric_metadata_t._mpls_label5"],
+ "target" : ["scalars", "fabric_metadata_t._mpls_label8"],
"mask" : null
}
],
@@ -10168,7 +10481,7 @@
},
{
"name" : "FabricIngress.forwarding.routing_v4",
- "id" : 7,
+ "id" : 11,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 101,
@@ -10206,7 +10519,7 @@
},
{
"name" : "FabricIngress.acl.acl",
- "id" : 8,
+ "id" : 12,
"source_info" : {
"filename" : "include/control/acl.p4",
"line" : 60,
@@ -10223,19 +10536,19 @@
{
"match_type" : "ternary",
"name" : "ip_proto",
- "target" : ["scalars", "fabric_metadata_t._ip_proto13"],
+ "target" : ["scalars", "fabric_metadata_t._ip_proto16"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
"mask" : null
},
{
@@ -10259,7 +10572,7 @@
{
"match_type" : "ternary",
"name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "target" : ["scalars", "fabric_metadata_t._last_eth_type0"],
"mask" : null
},
{
@@ -10295,13 +10608,13 @@
"direct_meters" : null,
"action_ids" : [17, 18, 19, 20, 21],
"actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
- "base_default_next" : "node_18",
+ "base_default_next" : "node_25",
"next_tables" : {
- "FabricIngress.acl.set_next_id_acl" : "node_18",
- "FabricIngress.acl.punt_to_cpu" : "node_18",
- "FabricIngress.acl.set_clone_session_id" : "node_18",
- "FabricIngress.acl.drop" : "node_18",
- "FabricIngress.acl.nop_acl" : "node_18"
+ "FabricIngress.acl.set_next_id_acl" : "node_25",
+ "FabricIngress.acl.punt_to_cpu" : "node_25",
+ "FabricIngress.acl.set_clone_session_id" : "node_25",
+ "FabricIngress.acl.drop" : "node_25",
+ "FabricIngress.acl.nop_acl" : "node_25"
},
"default_entry" : {
"action_id" : 21,
@@ -10312,10 +10625,10 @@
},
{
"name" : "FabricIngress.next.xconnect",
- "id" : 9,
+ "id" : 13,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 104,
+ "line" : 116,
"column" : 10,
"source_fragment" : "xconnect"
},
@@ -10329,7 +10642,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -10356,10 +10669,10 @@
},
{
"name" : "FabricIngress.next.hashed",
- "id" : 10,
+ "id" : 14,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 184,
+ "line" : 196,
"column" : 10,
"source_fragment" : "hashed"
},
@@ -10367,7 +10680,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -10390,10 +10703,10 @@
},
{
"name" : "FabricIngress.next.multicast",
- "id" : 11,
+ "id" : 15,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 218,
+ "line" : 230,
"column" : 10,
"source_fragment" : "multicast"
},
@@ -10401,7 +10714,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -10427,10 +10740,10 @@
},
{
"name" : "FabricIngress.next.next_vlan",
- "id" : 12,
+ "id" : 16,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 74,
+ "line" : 82,
"column" : 10,
"source_fragment" : "next_vlan"
},
@@ -10438,7 +10751,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -10450,10 +10763,10 @@
"direct_meters" : null,
"action_ids" : [22, 4],
"actions" : ["FabricIngress.next.set_vlan", "nop"],
- "base_default_next" : "node_23",
+ "base_default_next" : "node_30",
"next_tables" : {
- "FabricIngress.next.set_vlan" : "node_23",
- "nop" : "node_23"
+ "FabricIngress.next.set_vlan" : "node_30",
+ "nop" : "node_30"
},
"default_entry" : {
"action_id" : 4,
@@ -10463,8 +10776,8 @@
}
},
{
- "name" : "tbl_act_2",
- "id" : 13,
+ "name" : "tbl_act_6",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 31,
@@ -10478,22 +10791,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [32],
- "actions" : ["act_2"],
- "base_default_next" : "node_25",
+ "action_ids" : [36],
+ "actions" : ["act_6"],
+ "base_default_next" : "node_32",
"next_tables" : {
- "act_2" : "node_25"
+ "act_6" : "node_32"
},
"default_entry" : {
- "action_id" : 32,
+ "action_id" : 36,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_3",
- "id" : 14,
+ "name" : "tbl_act_7",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 34,
@@ -10507,14 +10820,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [33],
- "actions" : ["act_3"],
+ "action_ids" : [37],
+ "actions" : ["act_7"],
"base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
"next_tables" : {
- "act_3" : "FabricIngress.process_set_source_sink.tb_set_source"
+ "act_7" : "FabricIngress.process_set_source_sink.tb_set_source"
},
"default_entry" : {
- "action_id" : 33,
+ "action_id" : 37,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -10522,7 +10835,7 @@
},
{
"name" : "FabricIngress.process_set_source_sink.tb_set_source",
- "id" : 15,
+ "id" : 19,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 46,
@@ -10564,7 +10877,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 165,
+ "line" : 177,
"column" : 57,
"source_fragment" : "hashed_selector"
},
@@ -10582,15 +10895,15 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
}
]
}
@@ -10625,7 +10938,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 104,
+ "line" : 109,
"column" : 12,
"source_fragment" : "hdr.vlan_tag.isValid()"
},
@@ -10648,7 +10961,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 121,
"column" : 12,
"source_fragment" : "!hdr.mpls.isValid()"
},
@@ -10671,14 +10984,83 @@
}
},
"true_next" : "tbl_act_1",
- "false_next" : "FabricIngress.filtering.ingress_port_vlan"
+ "false_next" : "node_8"
+ },
+ {
+ "name" : "node_8",
+ "id" : 3,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 130,
+ "column" : 12,
+ "source_fragment" : "hdr.mpls.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["mpls", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_2",
+ "false_next" : "node_10"
},
{
"name" : "node_10",
- "id" : 3,
+ "id" : 4,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 133,
+ "column" : 16,
+ "source_fragment" : "hdr.vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "node_11",
+ "false_next" : "tbl_act_5"
+ },
+ {
+ "name" : "node_11",
+ "id" : 5,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 135,
+ "column" : 19,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_3",
+ "false_next" : "tbl_act_4"
+ },
+ {
+ "name" : "node_17",
+ "id" : 6,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 74,
+ "line" : 71,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_forwarding == false"
},
@@ -10693,7 +11075,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
}
}
},
@@ -10703,12 +11085,12 @@
}
}
},
- "true_next" : "node_11",
+ "true_next" : "node_18",
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_11",
- "id" : 4,
+ "name" : "node_18",
+ "id" : 7,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 141,
@@ -10721,7 +11103,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -10730,11 +11112,11 @@
}
},
"true_next" : "FabricIngress.forwarding.bridging",
- "false_next" : "node_13"
+ "false_next" : "node_20"
},
{
- "name" : "node_13",
- "id" : 5,
+ "name" : "node_20",
+ "id" : 8,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 142,
@@ -10747,7 +11129,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -10756,11 +11138,11 @@
}
},
"true_next" : "FabricIngress.forwarding.mpls",
- "false_next" : "node_15"
+ "false_next" : "node_22"
},
{
- "name" : "node_15",
- "id" : 6,
+ "name" : "node_22",
+ "id" : 9,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 143,
@@ -10773,7 +11155,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -10785,11 +11167,11 @@
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_18",
- "id" : 7,
+ "name" : "node_25",
+ "id" : 10,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 78,
+ "line" : 75,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_next == false"
},
@@ -10804,7 +11186,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
}
}
},
@@ -10818,8 +11200,8 @@
"true_next" : "FabricIngress.next.xconnect"
},
{
- "name" : "node_23",
- "id" : 8,
+ "name" : "node_30",
+ "id" : 11,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 30,
@@ -10840,12 +11222,12 @@
}
}
},
- "true_next" : "tbl_act_2",
- "false_next" : "node_25"
+ "true_next" : "tbl_act_6",
+ "false_next" : "node_32"
},
{
- "name" : "node_25",
- "id" : 9,
+ "name" : "node_32",
+ "id" : 12,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 33,
@@ -10866,7 +11248,7 @@
}
}
},
- "true_next" : "tbl_act_3",
+ "true_next" : "tbl_act_7",
"false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
}
]
@@ -10876,15 +11258,15 @@
"id" : 1,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 92,
+ "line" : 93,
"column" : 8,
"source_fragment" : "FabricEgress"
},
- "init_table" : "node_30",
+ "init_table" : "node_37",
"tables" : [
{
- "name" : "tbl_act_4",
- "id" : 16,
+ "name" : "tbl_act_8",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 41,
@@ -10898,22 +11280,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [77],
- "actions" : ["act_4"],
- "base_default_next" : "node_32",
+ "action_ids" : [81],
+ "actions" : ["act_8"],
+ "base_default_next" : "node_39",
"next_tables" : {
- "act_4" : "node_32"
+ "act_8" : "node_39"
},
"default_entry" : {
- "action_id" : 77,
+ "action_id" : 81,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_5",
- "id" : 17,
+ "name" : "tbl_act_9",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 44,
@@ -10927,25 +11309,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [78],
- "actions" : ["act_5"],
- "base_default_next" : "node_34",
+ "action_ids" : [82],
+ "actions" : ["act_9"],
+ "base_default_next" : "node_41",
"next_tables" : {
- "act_5" : "node_34"
+ "act_9" : "node_41"
},
"default_entry" : {
- "action_id" : 78,
+ "action_id" : 82,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_6",
- "id" : 18,
+ "name" : "tbl_act_10",
+ "id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -10956,14 +11338,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [79],
- "actions" : ["act_6"],
- "base_default_next" : "node_36",
+ "action_ids" : [83],
+ "actions" : ["act_10"],
+ "base_default_next" : "node_43",
"next_tables" : {
- "act_6" : "node_36"
+ "act_10" : "node_43"
},
"default_entry" : {
- "action_id" : 79,
+ "action_id" : 83,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -10971,10 +11353,10 @@
},
{
"name" : "tbl_egress_next_pop_mpls_if_present",
- "id" : 19,
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -10985,14 +11367,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [73],
+ "action_ids" : [77],
"actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 73,
+ "action_id" : 77,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11000,10 +11382,10 @@
},
{
"name" : "tbl_egress_next_set_mpls",
- "id" : 20,
+ "id" : 24,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 314,
+ "line" : 340,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -11014,14 +11396,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [74],
+ "action_ids" : [78],
"actions" : ["FabricEgress.egress_next.set_mpls"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 74,
+ "action_id" : 78,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11029,10 +11411,10 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan",
- "id" : 21,
+ "id" : 25,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 291,
+ "line" : 317,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -11040,7 +11422,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -11056,23 +11438,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [76, 36],
+ "action_ids" : [80, 40],
"actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_7",
- "__MISS__" : "tbl_act_8"
+ "__HIT__" : "tbl_act_11",
+ "__MISS__" : "tbl_act_12"
},
"default_entry" : {
- "action_id" : 36,
+ "action_id" : 40,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_7",
- "id" : 22,
+ "name" : "tbl_act_11",
+ "id" : 26,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -11080,22 +11462,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [80],
- "actions" : ["act_7"],
- "base_default_next" : "node_43",
+ "action_ids" : [84],
+ "actions" : ["act_11"],
+ "base_default_next" : "node_50",
"next_tables" : {
- "act_7" : "node_43"
+ "act_11" : "node_50"
},
"default_entry" : {
- "action_id" : 80,
+ "action_id" : 84,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_8",
- "id" : 23,
+ "name" : "tbl_act_12",
+ "id" : 27,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -11103,14 +11485,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [81],
- "actions" : ["act_8"],
- "base_default_next" : "node_43",
+ "action_ids" : [85],
+ "actions" : ["act_12"],
+ "base_default_next" : "node_50",
"next_tables" : {
- "act_8" : "node_43"
+ "act_12" : "node_50"
},
"default_entry" : {
- "action_id" : 81,
+ "action_id" : 85,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11118,11 +11500,11 @@
},
{
"name" : "tbl_egress_next_push_vlan",
- "id" : 24,
+ "id" : 28,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 320,
- "column" : 16,
+ "line" : 357,
+ "column" : 20,
"source_fragment" : "push_vlan()"
},
"key" : [],
@@ -11132,25 +11514,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [75],
+ "action_ids" : [79],
"actions" : ["FabricEgress.egress_next.push_vlan"],
- "base_default_next" : "node_46",
+ "base_default_next" : "node_53",
"next_tables" : {
- "FabricEgress.egress_next.push_vlan" : "node_46"
+ "FabricEgress.egress_next.push_vlan" : "node_53"
},
"default_entry" : {
- "action_id" : 75,
+ "action_id" : 79,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_9",
- "id" : 25,
+ "name" : "tbl_act_13",
+ "id" : 29,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 25,
"source_fragment" : "="
},
@@ -11161,25 +11543,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [83],
- "actions" : ["act_10"],
- "base_default_next" : "node_48",
+ "action_ids" : [87],
+ "actions" : ["act_14"],
+ "base_default_next" : "node_55",
"next_tables" : {
- "act_10" : "node_48"
+ "act_14" : "node_55"
},
"default_entry" : {
- "action_id" : 83,
+ "action_id" : 87,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_10",
- "id" : 26,
+ "name" : "tbl_act_14",
+ "id" : 30,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -11190,25 +11572,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [82],
- "actions" : ["act_9"],
- "base_default_next" : "node_54",
+ "action_ids" : [86],
+ "actions" : ["act_13"],
+ "base_default_next" : "node_61",
"next_tables" : {
- "act_9" : "node_54"
+ "act_13" : "node_61"
},
"default_entry" : {
- "action_id" : 82,
+ "action_id" : 86,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_11",
- "id" : 27,
+ "name" : "tbl_act_15",
+ "id" : 31,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 29,
"source_fragment" : "="
},
@@ -11219,25 +11601,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [85],
- "actions" : ["act_12"],
- "base_default_next" : "node_52",
+ "action_ids" : [89],
+ "actions" : ["act_16"],
+ "base_default_next" : "node_59",
"next_tables" : {
- "act_12" : "node_52"
+ "act_16" : "node_59"
},
"default_entry" : {
- "action_id" : 85,
+ "action_id" : 89,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_12",
- "id" : 28,
+ "name" : "tbl_act_16",
+ "id" : 32,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -11248,14 +11630,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [84],
- "actions" : ["act_11"],
- "base_default_next" : "node_54",
+ "action_ids" : [88],
+ "actions" : ["act_15"],
+ "base_default_next" : "node_61",
"next_tables" : {
- "act_11" : "node_54"
+ "act_15" : "node_61"
},
"default_entry" : {
- "action_id" : 84,
+ "action_id" : 88,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11263,7 +11645,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
- "id" : 29,
+ "id" : 33,
"source_info" : {
"filename" : "include/int/int_source.p4",
"line" : 66,
@@ -11286,13 +11668,13 @@
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
"mask" : null
}
],
@@ -11302,23 +11684,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [39, 34],
+ "action_ids" : [43, 38],
"actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
- "base_default_next" : "node_57",
+ "base_default_next" : "node_64",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_57",
- "nop" : "node_57"
+ "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_64",
+ "nop" : "node_64"
},
"default_entry" : {
- "action_id" : 34,
+ "action_id" : 38,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_13",
- "id" : 30,
+ "name" : "tbl_act_17",
+ "id" : 34,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -11326,14 +11708,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [86],
- "actions" : ["act_13"],
+ "action_ids" : [90],
+ "actions" : ["act_17"],
"base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
"next_tables" : {
- "act_13" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+ "act_17" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
},
"default_entry" : {
- "action_id" : 86,
+ "action_id" : 90,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11341,7 +11723,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
- "id" : 31,
+ "id" : 35,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 315,
@@ -11362,23 +11744,23 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [40, 35],
+ "action_ids" : [44, 39],
"actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
- "base_default_next" : "node_60",
+ "base_default_next" : "node_67",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_60",
- "nop" : "node_60"
+ "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_67",
+ "nop" : "node_67"
},
"default_entry" : {
- "action_id" : 35,
+ "action_id" : 39,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_14",
- "id" : 32,
+ "name" : "tbl_act_18",
+ "id" : 36,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 420,
@@ -11392,14 +11774,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [87],
- "actions" : ["act_14"],
- "base_default_next" : "node_62",
+ "action_ids" : [91],
+ "actions" : ["act_18"],
+ "base_default_next" : "node_69",
"next_tables" : {
- "act_14" : "node_62"
+ "act_18" : "node_69"
},
"default_entry" : {
- "action_id" : 87,
+ "action_id" : 91,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11407,7 +11789,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
- "id" : 33,
+ "id" : 37,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 331,
@@ -11428,7 +11810,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 37],
+ "action_ids" : [45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 41],
"actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15", "NoAction"],
"base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
"next_tables" : {
@@ -11451,7 +11833,7 @@
"NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
},
"default_entry" : {
- "action_id" : 37,
+ "action_id" : 41,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -11471,7 +11853,7 @@
}
],
"action_entry" : {
- "action_id" : 41,
+ "action_id" : 45,
"action_data" : []
},
"priority" : 1
@@ -11490,7 +11872,7 @@
}
],
"action_entry" : {
- "action_id" : 42,
+ "action_id" : 46,
"action_data" : []
},
"priority" : 2
@@ -11509,7 +11891,7 @@
}
],
"action_entry" : {
- "action_id" : 43,
+ "action_id" : 47,
"action_data" : []
},
"priority" : 3
@@ -11528,7 +11910,7 @@
}
],
"action_entry" : {
- "action_id" : 44,
+ "action_id" : 48,
"action_data" : []
},
"priority" : 4
@@ -11547,7 +11929,7 @@
}
],
"action_entry" : {
- "action_id" : 45,
+ "action_id" : 49,
"action_data" : []
},
"priority" : 5
@@ -11566,7 +11948,7 @@
}
],
"action_entry" : {
- "action_id" : 46,
+ "action_id" : 50,
"action_data" : []
},
"priority" : 6
@@ -11585,7 +11967,7 @@
}
],
"action_entry" : {
- "action_id" : 47,
+ "action_id" : 51,
"action_data" : []
},
"priority" : 7
@@ -11604,7 +11986,7 @@
}
],
"action_entry" : {
- "action_id" : 48,
+ "action_id" : 52,
"action_data" : []
},
"priority" : 8
@@ -11623,7 +12005,7 @@
}
],
"action_entry" : {
- "action_id" : 49,
+ "action_id" : 53,
"action_data" : []
},
"priority" : 9
@@ -11642,7 +12024,7 @@
}
],
"action_entry" : {
- "action_id" : 50,
+ "action_id" : 54,
"action_data" : []
},
"priority" : 10
@@ -11661,7 +12043,7 @@
}
],
"action_entry" : {
- "action_id" : 51,
+ "action_id" : 55,
"action_data" : []
},
"priority" : 11
@@ -11680,7 +12062,7 @@
}
],
"action_entry" : {
- "action_id" : 52,
+ "action_id" : 56,
"action_data" : []
},
"priority" : 12
@@ -11699,7 +12081,7 @@
}
],
"action_entry" : {
- "action_id" : 53,
+ "action_id" : 57,
"action_data" : []
},
"priority" : 13
@@ -11718,7 +12100,7 @@
}
],
"action_entry" : {
- "action_id" : 54,
+ "action_id" : 58,
"action_data" : []
},
"priority" : 14
@@ -11737,7 +12119,7 @@
}
],
"action_entry" : {
- "action_id" : 55,
+ "action_id" : 59,
"action_data" : []
},
"priority" : 15
@@ -11756,7 +12138,7 @@
}
],
"action_entry" : {
- "action_id" : 56,
+ "action_id" : 60,
"action_data" : []
},
"priority" : 16
@@ -11765,7 +12147,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
- "id" : 34,
+ "id" : 38,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 375,
@@ -11786,30 +12168,30 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 38],
+ "action_ids" : [61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 42],
"actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15", "NoAction"],
- "base_default_next" : "tbl_act_15",
+ "base_default_next" : "tbl_act_19",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_15",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_15",
- "NoAction" : "tbl_act_15"
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_19",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_19",
+ "NoAction" : "tbl_act_19"
},
"default_entry" : {
- "action_id" : 38,
+ "action_id" : 42,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -11829,7 +12211,7 @@
}
],
"action_entry" : {
- "action_id" : 57,
+ "action_id" : 61,
"action_data" : []
},
"priority" : 1
@@ -11848,7 +12230,7 @@
}
],
"action_entry" : {
- "action_id" : 58,
+ "action_id" : 62,
"action_data" : []
},
"priority" : 2
@@ -11867,7 +12249,7 @@
}
],
"action_entry" : {
- "action_id" : 59,
+ "action_id" : 63,
"action_data" : []
},
"priority" : 3
@@ -11886,7 +12268,7 @@
}
],
"action_entry" : {
- "action_id" : 60,
+ "action_id" : 64,
"action_data" : []
},
"priority" : 4
@@ -11905,7 +12287,7 @@
}
],
"action_entry" : {
- "action_id" : 61,
+ "action_id" : 65,
"action_data" : []
},
"priority" : 5
@@ -11924,7 +12306,7 @@
}
],
"action_entry" : {
- "action_id" : 62,
+ "action_id" : 66,
"action_data" : []
},
"priority" : 6
@@ -11943,7 +12325,7 @@
}
],
"action_entry" : {
- "action_id" : 63,
+ "action_id" : 67,
"action_data" : []
},
"priority" : 7
@@ -11962,7 +12344,7 @@
}
],
"action_entry" : {
- "action_id" : 64,
+ "action_id" : 68,
"action_data" : []
},
"priority" : 8
@@ -11981,7 +12363,7 @@
}
],
"action_entry" : {
- "action_id" : 65,
+ "action_id" : 69,
"action_data" : []
},
"priority" : 9
@@ -12000,7 +12382,7 @@
}
],
"action_entry" : {
- "action_id" : 66,
+ "action_id" : 70,
"action_data" : []
},
"priority" : 10
@@ -12019,7 +12401,7 @@
}
],
"action_entry" : {
- "action_id" : 67,
+ "action_id" : 71,
"action_data" : []
},
"priority" : 11
@@ -12038,7 +12420,7 @@
}
],
"action_entry" : {
- "action_id" : 68,
+ "action_id" : 72,
"action_data" : []
},
"priority" : 12
@@ -12057,7 +12439,7 @@
}
],
"action_entry" : {
- "action_id" : 69,
+ "action_id" : 73,
"action_data" : []
},
"priority" : 13
@@ -12076,7 +12458,7 @@
}
],
"action_entry" : {
- "action_id" : 70,
+ "action_id" : 74,
"action_data" : []
},
"priority" : 14
@@ -12095,7 +12477,7 @@
}
],
"action_entry" : {
- "action_id" : 71,
+ "action_id" : 75,
"action_data" : []
},
"priority" : 15
@@ -12114,7 +12496,7 @@
}
],
"action_entry" : {
- "action_id" : 72,
+ "action_id" : 76,
"action_data" : []
},
"priority" : 16
@@ -12122,8 +12504,8 @@
]
},
{
- "name" : "tbl_act_15",
- "id" : 35,
+ "name" : "tbl_act_19",
+ "id" : 39,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 425,
@@ -12137,22 +12519,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [89],
- "actions" : ["act_16"],
- "base_default_next" : "node_66",
+ "action_ids" : [93],
+ "actions" : ["act_20"],
+ "base_default_next" : "node_73",
"next_tables" : {
- "act_16" : "node_66"
+ "act_20" : "node_73"
},
"default_entry" : {
- "action_id" : 89,
+ "action_id" : 93,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_16",
- "id" : 36,
+ "name" : "tbl_act_20",
+ "id" : 40,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 428,
@@ -12166,22 +12548,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [88],
- "actions" : ["act_15"],
- "base_default_next" : "node_68",
+ "action_ids" : [92],
+ "actions" : ["act_19"],
+ "base_default_next" : "node_75",
"next_tables" : {
- "act_15" : "node_68"
+ "act_19" : "node_75"
},
"default_entry" : {
- "action_id" : 88,
+ "action_id" : 92,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_17",
- "id" : 37,
+ "name" : "tbl_act_21",
+ "id" : 41,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 431,
@@ -12195,22 +12577,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [90],
- "actions" : ["act_17"],
- "base_default_next" : "node_70",
+ "action_ids" : [94],
+ "actions" : ["act_21"],
+ "base_default_next" : "node_77",
"next_tables" : {
- "act_17" : "node_70"
+ "act_21" : "node_77"
},
"default_entry" : {
- "action_id" : 90,
+ "action_id" : 94,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_18",
- "id" : 38,
+ "name" : "tbl_act_22",
+ "id" : 42,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 434,
@@ -12224,14 +12606,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [91],
- "actions" : ["act_18"],
+ "action_ids" : [95],
+ "actions" : ["act_22"],
"base_default_next" : null,
"next_tables" : {
- "act_18" : null
+ "act_22" : null
},
"default_entry" : {
- "action_id" : 91,
+ "action_id" : 95,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -12241,8 +12623,8 @@
"action_profiles" : [],
"conditionals" : [
{
- "name" : "node_30",
- "id" : 10,
+ "name" : "node_37",
+ "id" : 13,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 39,
@@ -12260,7 +12642,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
}
}
},
@@ -12270,12 +12652,12 @@
}
}
},
- "true_next" : "tbl_act_4",
- "false_next" : "node_32"
+ "true_next" : "tbl_act_8",
+ "false_next" : "node_39"
},
{
- "name" : "node_32",
- "id" : 11,
+ "name" : "node_39",
+ "id" : 14,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 43,
@@ -12296,15 +12678,15 @@
}
}
},
- "true_next" : "tbl_act_5",
- "false_next" : "node_34"
+ "true_next" : "tbl_act_9",
+ "false_next" : "node_41"
},
{
- "name" : "node_34",
- "id" : 12,
+ "name" : "node_41",
+ "id" : 15,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 306,
+ "line" : 332,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -12323,7 +12705,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
}
}
},
@@ -12349,15 +12731,15 @@
}
}
},
- "true_next" : "tbl_act_6",
- "false_next" : "node_36"
+ "true_next" : "tbl_act_10",
+ "false_next" : "node_43"
},
{
- "name" : "node_36",
- "id" : 13,
+ "name" : "node_43",
+ "id" : 16,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 311,
+ "line" : 337,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -12367,7 +12749,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
"right" : {
"type" : "hexstr",
@@ -12375,15 +12757,15 @@
}
}
},
- "true_next" : "node_37",
+ "true_next" : "node_44",
"false_next" : "tbl_egress_next_set_mpls"
},
{
- "name" : "node_37",
- "id" : 14,
+ "name" : "node_44",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -12402,12 +12784,12 @@
"false_next" : "FabricEgress.egress_next.egress_vlan"
},
{
- "name" : "node_43",
- "id" : 15,
+ "name" : "node_50",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 317,
- "column" : 12,
+ "line" : 354,
+ "column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
"expression" : {
@@ -12428,16 +12810,16 @@
}
}
},
- "true_next" : "node_44",
- "false_next" : "node_46"
+ "true_next" : "node_51",
+ "false_next" : "node_53"
},
{
- "name" : "node_44",
- "id" : 16,
+ "name" : "node_51",
+ "id" : 19,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 319,
- "column" : 16,
+ "line" : 356,
+ "column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
"expression" : {
@@ -12446,7 +12828,7 @@
"op" : "!=",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
"right" : {
"type" : "hexstr",
@@ -12455,14 +12837,14 @@
}
},
"true_next" : "tbl_egress_next_push_vlan",
- "false_next" : "node_46"
+ "false_next" : "node_53"
},
{
- "name" : "node_46",
- "id" : 17,
+ "name" : "node_53",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 325,
+ "line" : 365,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -12477,15 +12859,15 @@
}
}
},
- "true_next" : "tbl_act_9",
- "false_next" : "node_50"
+ "true_next" : "tbl_act_13",
+ "false_next" : "node_57"
},
{
- "name" : "node_48",
- "id" : 18,
+ "name" : "node_55",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -12503,15 +12885,15 @@
}
}
},
- "true_next" : "tbl_act_10",
- "false_next" : "node_54"
+ "true_next" : "tbl_act_14",
+ "false_next" : "node_61"
},
{
- "name" : "node_50",
- "id" : 19,
+ "name" : "node_57",
+ "id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 329,
+ "line" : 369,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -12526,15 +12908,15 @@
}
}
},
- "true_next" : "tbl_act_11",
- "false_next" : "node_54"
+ "true_next" : "tbl_act_15",
+ "false_next" : "node_61"
},
{
- "name" : "node_52",
- "id" : 20,
+ "name" : "node_59",
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},
@@ -12552,12 +12934,12 @@
}
}
},
- "true_next" : "tbl_act_12",
- "false_next" : "node_54"
+ "true_next" : "tbl_act_16",
+ "false_next" : "node_61"
},
{
- "name" : "node_54",
- "id" : 21,
+ "name" : "node_61",
+ "id" : 24,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 102,
@@ -12633,11 +13015,11 @@
}
},
"false_next" : null,
- "true_next" : "node_55"
+ "true_next" : "node_62"
},
{
- "name" : "node_55",
- "id" : 22,
+ "name" : "node_62",
+ "id" : 25,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 106,
@@ -12655,7 +13037,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_source16"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_source19"]
}
}
},
@@ -12666,11 +13048,11 @@
}
},
"true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
- "false_next" : "node_57"
+ "false_next" : "node_64"
},
{
- "name" : "node_57",
- "id" : 23,
+ "name" : "node_64",
+ "id" : 26,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 110,
@@ -12689,11 +13071,11 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_13"
+ "true_next" : "tbl_act_17"
},
{
- "name" : "node_60",
- "id" : 24,
+ "name" : "node_67",
+ "id" : 27,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 419,
@@ -12711,7 +13093,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_transit17"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_transit20"]
}
}
},
@@ -12721,12 +13103,12 @@
}
}
},
- "true_next" : "tbl_act_14",
- "false_next" : "node_62"
+ "true_next" : "tbl_act_18",
+ "false_next" : "node_69"
},
{
- "name" : "node_62",
- "id" : 25,
+ "name" : "node_69",
+ "id" : 28,
"expression" : {
"type" : "expression",
"value" : {
@@ -12749,8 +13131,8 @@
"true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
},
{
- "name" : "node_66",
- "id" : 26,
+ "name" : "node_73",
+ "id" : 29,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 427,
@@ -12768,12 +13150,12 @@
}
}
},
- "true_next" : "tbl_act_16",
- "false_next" : "node_68"
+ "true_next" : "tbl_act_20",
+ "false_next" : "node_75"
},
{
- "name" : "node_68",
- "id" : 27,
+ "name" : "node_75",
+ "id" : 30,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 430,
@@ -12791,12 +13173,12 @@
}
}
},
- "true_next" : "tbl_act_17",
- "false_next" : "node_70"
+ "true_next" : "tbl_act_21",
+ "false_next" : "node_77"
},
{
- "name" : "node_70",
- "id" : 28,
+ "name" : "node_77",
+ "id" : 31,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 433,
@@ -12815,7 +13197,7 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_18"
+ "true_next" : "tbl_act_22"
}
]
}
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
index 43466cf..9a5f7e1 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
@@ -49,6 +49,12 @@
bitwidth: 12
match_type: TERNARY
}
+ match_fields {
+ id: 4
+ name: "inner_vlan_id"
+ bitwidth: 12
+ match_type: TERNARY
+ }
action_refs {
id: 16836487
}
@@ -82,8 +88,20 @@
}
match_fields {
id: 3
- name: "eth_type"
- bitwidth: 16
+ name: "is_ipv4"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 4
+ name: "is_ipv6"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 5
+ name: "is_mpls"
+ bitwidth: 1
match_type: EXACT
}
action_refs {
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
index 39698a3..65bcce8 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
@@ -15,35 +15,39 @@
["spgw_ingress_hasReturned", 1, false],
["egress_next_tmp", 1, false],
["process_int_main_process_int_transit_hasReturned", 1, false],
- ["fabric_metadata_t._eth_type0", 16, false],
- ["fabric_metadata_t._ip_eth_type1", 16, false],
- ["fabric_metadata_t._vlan_id2", 12, false],
- ["fabric_metadata_t._vlan_pri3", 3, false],
- ["fabric_metadata_t._vlan_cfi4", 1, false],
- ["fabric_metadata_t._mpls_label5", 20, false],
- ["fabric_metadata_t._mpls_ttl6", 8, false],
- ["fabric_metadata_t._skip_forwarding7", 1, false],
- ["fabric_metadata_t._skip_next8", 1, false],
- ["fabric_metadata_t._fwd_type9", 3, false],
- ["fabric_metadata_t._next_id10", 32, false],
- ["fabric_metadata_t._is_multicast11", 1, false],
- ["fabric_metadata_t._is_controller_packet_out12", 1, false],
- ["fabric_metadata_t._ip_proto13", 8, false],
- ["fabric_metadata_t._l4_sport14", 16, false],
- ["fabric_metadata_t._l4_dport15", 16, false],
- ["fabric_metadata_t._spgw_direction16", 2, false],
- ["fabric_metadata_t._spgw_ipv4_len17", 16, false],
- ["fabric_metadata_t._spgw_teid18", 32, false],
- ["fabric_metadata_t._spgw_s1u_enb_addr19", 32, false],
- ["fabric_metadata_t._spgw_s1u_sgw_addr20", 32, false],
- ["fabric_metadata_t._int_meta_source21", 1, false],
- ["fabric_metadata_t._int_meta_transit22", 1, false],
- ["fabric_metadata_t._int_meta_sink23", 1, false],
- ["fabric_metadata_t._int_meta_switch_id24", 32, false],
- ["fabric_metadata_t._int_meta_new_words25", 8, false],
- ["fabric_metadata_t._int_meta_new_bytes26", 16, false],
- ["fabric_metadata_t._int_meta_ig_tstamp27", 32, false],
- ["fabric_metadata_t._int_meta_eg_tstamp28", 32, false]
+ ["fabric_metadata_t._last_eth_type0", 16, false],
+ ["fabric_metadata_t._is_ipv41", 1, false],
+ ["fabric_metadata_t._is_ipv62", 1, false],
+ ["fabric_metadata_t._is_mpls3", 1, false],
+ ["fabric_metadata_t._ip_eth_type4", 16, false],
+ ["fabric_metadata_t._vlan_id5", 12, false],
+ ["fabric_metadata_t._vlan_pri6", 3, false],
+ ["fabric_metadata_t._vlan_cfi7", 1, false],
+ ["fabric_metadata_t._mpls_label8", 20, false],
+ ["fabric_metadata_t._mpls_ttl9", 8, false],
+ ["fabric_metadata_t._skip_forwarding10", 1, false],
+ ["fabric_metadata_t._skip_next11", 1, false],
+ ["fabric_metadata_t._fwd_type12", 3, false],
+ ["fabric_metadata_t._next_id13", 32, false],
+ ["fabric_metadata_t._is_multicast14", 1, false],
+ ["fabric_metadata_t._is_controller_packet_out15", 1, false],
+ ["fabric_metadata_t._ip_proto16", 8, false],
+ ["fabric_metadata_t._l4_sport17", 16, false],
+ ["fabric_metadata_t._l4_dport18", 16, false],
+ ["fabric_metadata_t._spgw_direction19", 2, false],
+ ["fabric_metadata_t._spgw_ipv4_len20", 16, false],
+ ["fabric_metadata_t._spgw_teid21", 32, false],
+ ["fabric_metadata_t._spgw_s1u_enb_addr22", 32, false],
+ ["fabric_metadata_t._spgw_s1u_sgw_addr23", 32, false],
+ ["fabric_metadata_t._int_meta_source24", 1, false],
+ ["fabric_metadata_t._int_meta_transit25", 1, false],
+ ["fabric_metadata_t._int_meta_sink26", 1, false],
+ ["fabric_metadata_t._int_meta_switch_id27", 32, false],
+ ["fabric_metadata_t._int_meta_new_words28", 8, false],
+ ["fabric_metadata_t._int_meta_new_bytes29", 16, false],
+ ["fabric_metadata_t._int_meta_ig_tstamp30", 32, false],
+ ["fabric_metadata_t._int_meta_eg_tstamp31", 32, false],
+ ["_padding_0", 5, false]
]
},
{
@@ -592,7 +596,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
@@ -605,7 +609,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "hexstr",
@@ -632,7 +636,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"value" : "default",
@@ -666,7 +670,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -681,6 +685,18 @@
"next_state" : "parse_inner_vlan_tag"
},
{
+ "type" : "hexstr",
+ "value" : "0x88a8",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x9100",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
"value" : "default",
"mask" : null,
"next_state" : null
@@ -712,7 +728,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -750,7 +766,30 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._is_mpls3"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ },
+ {
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "field",
@@ -763,7 +802,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
},
{
"type" : "field",
@@ -807,12 +846,49 @@
]
},
{
- "name" : "parse_ipv4",
+ "name" : "pre_parse_ipv4",
"id" : 6,
"parser_ops" : [
{
"parameters" : [
{
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._is_ipv41"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ }
+ ],
+ "transitions" : [
+ {
+ "value" : "default",
+ "mask" : null,
+ "next_state" : "parse_ipv4"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
+ "name" : "parse_ipv4",
+ "id" : 7,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
"type" : "regular",
"value" : "ipv4"
}
@@ -823,7 +899,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
},
{
"type" : "field",
@@ -836,7 +912,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
},
{
"type" : "hexstr",
@@ -893,7 +969,7 @@
},
{
"name" : "parse_tcp",
- "id" : 7,
+ "id" : 8,
"parser_ops" : [
{
"parameters" : [
@@ -908,7 +984,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -921,7 +997,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -942,7 +1018,7 @@
},
{
"name" : "parse_udp",
- "id" : 8,
+ "id" : 9,
"parser_ops" : [
{
"parameters" : [
@@ -957,7 +1033,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -970,7 +1046,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -1002,7 +1078,7 @@
},
{
"name" : "parse_icmp",
- "id" : 9,
+ "id" : 10,
"parser_ops" : [
{
"parameters" : [
@@ -1025,7 +1101,7 @@
},
{
"name" : "parse_gtpu",
- "id" : 10,
+ "id" : 11,
"parser_ops" : [
{
"parameters" : [
@@ -1096,7 +1172,7 @@
},
{
"name" : "do_parse_gtpu",
- "id" : 11,
+ "id" : 12,
"parser_ops" : [
{
"parameters" : [
@@ -1164,7 +1240,7 @@
},
{
"name" : "parse_inner_udp",
- "id" : 12,
+ "id" : 13,
"parser_ops" : [
{
"parameters" : [
@@ -1179,7 +1255,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -1192,7 +1268,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -1213,7 +1289,7 @@
},
{
"name" : "parse_int",
- "id" : 13,
+ "id" : 14,
"parser_ops" : [],
"transitions" : [
{
@@ -1237,7 +1313,7 @@
},
{
"name" : "parse_intl4_shim",
- "id" : 14,
+ "id" : 15,
"parser_ops" : [
{
"parameters" : [
@@ -1280,7 +1356,7 @@
},
{
"name" : "parse_int_data",
- "id" : 15,
+ "id" : 16,
"parser_ops" : [],
"transitions" : [
{
@@ -1293,7 +1369,7 @@
},
{
"name" : "parse_intl4_tail",
- "id" : 16,
+ "id" : 17,
"parser_ops" : [
{
"parameters" : [
@@ -1324,7 +1400,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/parser.p4",
- "line" : 261,
+ "line" : 276,
"column" : 8,
"source_fragment" : "FabricDeparser"
},
@@ -1376,7 +1452,7 @@
"binding" : "FabricIngress.filtering.fwd_classifier",
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 80,
+ "line" : 83,
"column" : 50,
"source_fragment" : "fwd_classifier_counter"
}
@@ -1448,7 +1524,7 @@
"binding" : "FabricIngress.next.xconnect",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 92,
+ "line" : 103,
"column" : 50,
"source_fragment" : "xconnect_counter"
}
@@ -1460,7 +1536,7 @@
"binding" : "FabricIngress.next.hashed",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 166,
+ "line" : 178,
"column" : 50,
"source_fragment" : "hashed_counter"
}
@@ -1472,7 +1548,7 @@
"binding" : "FabricIngress.next.multicast",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 210,
+ "line" : 222,
"column" : 50,
"source_fragment" : "multicast_counter"
}
@@ -1520,7 +1596,7 @@
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 283,
+ "line" : 309,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -1849,7 +1925,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid21"]
},
{
"type" : "runtime_data",
@@ -1868,7 +1944,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr22"]
},
{
"type" : "runtime_data",
@@ -1887,7 +1963,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr23"]
},
{
"type" : "runtime_data",
@@ -1913,7 +1989,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_source21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_source24"]
},
{
"type" : "expression",
@@ -1949,7 +2025,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
},
{
"type" : "expression",
@@ -1978,7 +2054,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -2025,7 +2101,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -2056,7 +2132,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
{
"type" : "runtime_data",
@@ -2065,7 +2141,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 83,
+ "line" : 86,
"column" : 33,
"source_fragment" : "= fwd_type; ..."
}
@@ -2087,7 +2163,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -2118,7 +2194,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "hexstr",
@@ -2137,7 +2213,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -2168,7 +2244,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -2205,7 +2281,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -2250,7 +2326,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -2332,7 +2408,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -2379,7 +2455,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -2423,6 +2499,25 @@
"column" : 5,
"source_fragment" : "standard_metadata.egress_spec = port_num; ..."
}
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
}
]
},
@@ -2441,7 +2536,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -2450,7 +2545,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 100,
+ "line" : 112,
"column" : 32,
"source_fragment" : "= next_id; ..."
}
@@ -2592,7 +2687,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "runtime_data",
@@ -2689,7 +2784,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 213,
+ "line" : 225,
"column" : 8,
"source_fragment" : "standard_metadata.mcast_grp = group_id"
}
@@ -2699,7 +2794,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
},
{
"type" : "expression",
@@ -2718,7 +2813,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 214,
+ "line" : 226,
"column" : 37,
"source_fragment" : "= true; ..."
}
@@ -2977,7 +3072,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
},
{
"type" : "expression",
@@ -3023,26 +3118,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
- },
- {
- "type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- }
- ],
- "source_info" : {
- "filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "field",
@@ -3051,7 +3127,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 106,
+ "line" : 110,
"column" : 36,
"source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
}
@@ -3061,7 +3137,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
},
{
"type" : "field",
@@ -3070,7 +3146,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 107,
+ "line" : 111,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.pri; ..."
}
@@ -3080,7 +3156,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
},
{
"type" : "field",
@@ -3089,7 +3165,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 108,
+ "line" : 112,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.cfi; ..."
}
@@ -3106,7 +3182,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
},
{
"type" : "hexstr",
@@ -3115,7 +3191,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
}
@@ -3132,23 +3208,19 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
+ "type" : "hexstr",
+ "value" : "0x8847"
}
- ]
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 108,
+ "column" : 31,
+ "source_fragment" : "0x8847; ..."
+ }
}
]
},
@@ -3162,23 +3234,19 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
}
- ]
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "= hdr.inner_vlan_tag.eth_type; ..."
+ }
}
]
},
@@ -3188,18 +3256,22 @@
"runtime_data" : [],
"primitives" : [
{
- "op" : "mark_to_drop",
+ "op" : "assign",
"parameters" : [
{
- "type" : "header",
- "value" : "standard_metadata"
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
}
],
"source_info" : {
- "filename" : "include/spgw.p4",
- "line" : 149,
- "column" : 16,
- "source_fragment" : "mark_to_drop(standard_metadata)"
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
}
}
]
@@ -3214,18 +3286,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "hexstr",
- "value" : "0x01"
+ "type" : "field",
+ "value" : ["ethernet", "eth_type"]
}
],
"source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 143,
- "column" : 36,
- "source_fragment" : "2w1; ..."
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "= hdr.ethernet.eth_type; ..."
}
}
]
@@ -3240,7 +3312,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp_0"]
+ "value" : ["scalars", "spgw_ingress_tmp"]
},
{
"type" : "expression",
@@ -3270,7 +3342,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp_0"]
+ "value" : ["scalars", "spgw_ingress_tmp"]
},
{
"type" : "expression",
@@ -3296,11 +3368,119 @@
"runtime_data" : [],
"primitives" : [
{
+ "op" : "mark_to_drop",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "standard_metadata"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/spgw.p4",
+ "line" : 149,
+ "column" : 16,
+ "source_fragment" : "mark_to_drop(standard_metadata)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_14",
+ "id" : 48,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x01"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 143,
+ "column" : 36,
+ "source_fragment" : "2w1; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_15",
+ "id" : 49,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "spgw_ingress_tmp_0"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_16",
+ "id" : 50,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "spgw_ingress_tmp_0"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_17",
+ "id" : 51,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
},
{
"type" : "hexstr",
@@ -3317,8 +3497,8 @@
]
},
{
- "name" : "act_14",
- "id" : 48,
+ "name" : "act_18",
+ "id" : 52,
"runtime_data" : [],
"primitives" : [
{
@@ -3326,7 +3506,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
},
{
"type" : "hexstr",
@@ -3372,8 +3552,8 @@
]
},
{
- "name" : "act_15",
- "id" : 49,
+ "name" : "act_19",
+ "id" : 53,
"runtime_data" : [],
"primitives" : [
{
@@ -3402,8 +3582,8 @@
]
},
{
- "name" : "act_16",
- "id" : 50,
+ "name" : "act_20",
+ "id" : 54,
"runtime_data" : [],
"primitives" : [
{
@@ -3411,7 +3591,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
},
{
"type" : "field",
@@ -3428,8 +3608,8 @@
]
},
{
- "name" : "act_17",
- "id" : 51,
+ "name" : "act_21",
+ "id" : 55,
"runtime_data" : [],
"primitives" : [
{
@@ -3486,8 +3666,8 @@
]
},
{
- "name" : "act_18",
- "id" : 52,
+ "name" : "act_22",
+ "id" : 56,
"runtime_data" : [],
"primitives" : [
{
@@ -3545,38 +3725,38 @@
},
{
"name" : "nop",
- "id" : 53,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
- "id" : 54,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
- "id" : 55,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "NoAction",
- "id" : 56,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "NoAction",
"id" : 57,
"runtime_data" : [],
"primitives" : []
},
{
- "name" : "FabricEgress.spgw_egress.gtpu_encap",
+ "name" : "nop",
"id" : 58,
"runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "nop",
+ "id" : 59,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "NoAction",
+ "id" : 60,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "NoAction",
+ "id" : 61,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricEgress.spgw_egress.gtpu_encap",
+ "id" : 62,
+ "runtime_data" : [],
"primitives" : [
{
"op" : "add_header",
@@ -3815,7 +3995,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr22"]
}
],
"source_info" : {
@@ -3834,7 +4014,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr23"]
}
],
"source_info" : {
@@ -3935,7 +4115,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
},
"right" : {
"type" : "hexstr",
@@ -4134,7 +4314,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
}
],
"source_info" : {
@@ -4153,7 +4333,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid21"]
}
],
"source_info" : {
@@ -4167,7 +4347,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
- "id" : 59,
+ "id" : 63,
"runtime_data" : [
{
"name" : "max_hop",
@@ -4526,7 +4706,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
}
],
"source_info" : {
@@ -4662,7 +4842,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
- "id" : 60,
+ "id" : 64,
"runtime_data" : [
{
"name" : "switch_id",
@@ -4675,7 +4855,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_transit22"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_transit25"]
},
{
"type" : "expression",
@@ -4704,7 +4884,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
},
{
"type" : "runtime_data",
@@ -4722,655 +4902,12 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
- "id" : 61,
+ "id" : 65,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
- "id" : 62,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_occupancy"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 60,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 62,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_occupancy"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_qdepth"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 63,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
- "id" : 63,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_hop_latency"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 54,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_hop_latency", "hop_latency"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 55,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
- "id" : 64,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_occupancy"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 60,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 62,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_occupancy", "q_occupancy"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_qdepth"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 63,
- "column" : 8,
- "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_hop_latency"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 54,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_hop_latency", "hop_latency"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 55,
- "column" : 8,
- "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x02"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 103,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0008"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 104,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
- "id" : 65,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
"id" : 66,
"runtime_data" : [],
"primitives" : [
@@ -5441,90 +4978,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -5538,11 +4996,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -5556,9 +5014,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -5566,7 +5024,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -5580,11 +5038,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -5598,15 +5056,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
"id" : 67,
"runtime_data" : [],
"primitives" : [
@@ -5645,90 +5103,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -5742,11 +5121,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -5760,9 +5139,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -5770,7 +5149,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -5784,11 +5163,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -5802,15 +5181,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
"id" : 68,
"runtime_data" : [],
"primitives" : [
@@ -5915,6 +5294,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 103,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0008"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 104,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+ "id" : 69,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -5998,7 +5468,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -6012,132 +5482,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
- "id" : 69,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_switch_id"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 41,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_switch_id", "switch_id"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 42,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -6165,7 +5510,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -6179,7 +5524,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -6205,7 +5550,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
"id" : 70,
"runtime_data" : [],
"primitives" : [
@@ -6280,14 +5625,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_switch_id"
+ "value" : "int_port_ids"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 41,
+ "line" : 47,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
+ "source_fragment" : "hdr.int_port_ids.setValid()"
}
},
{
@@ -6295,18 +5640,31 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_switch_id", "switch_id"]
+ "value" : ["int_port_ids", "ingress_port_id"]
},
{
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 42,
+ "line" : 48,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
}
},
{
@@ -6314,7 +5672,39 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -6328,7 +5718,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -6356,7 +5746,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -6370,7 +5760,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -6396,7 +5786,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
"id" : 71,
"runtime_data" : [],
"primitives" : [
@@ -6439,14 +5829,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_switch_id"
+ "value" : "int_port_ids"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 41,
+ "line" : 47,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
+ "source_fragment" : "hdr.int_port_ids.setValid()"
}
},
{
@@ -6454,18 +5844,31 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_switch_id", "switch_id"]
+ "value" : ["int_port_ids", "ingress_port_id"]
},
{
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 42,
+ "line" : 48,
"column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
}
},
{
@@ -6473,7 +5876,39 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -6487,7 +5922,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -6515,7 +5950,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -6529,7 +5964,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -6555,7 +5990,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
"id" : 72,
"runtime_data" : [],
"primitives" : [
@@ -6664,131 +6099,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_switch_id"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 41,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_switch_id", "switch_id"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 42,
- "column" : 8,
- "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
- "id" : 73,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_port_ids"
}
],
@@ -6864,6 +6174,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+ "id" : 73,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -6887,7 +6288,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
}
],
"source_info" : {
@@ -6902,7 +6303,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -6916,11 +6317,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -6934,9 +6335,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -6944,7 +6345,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -6958,11 +6359,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -6976,15 +6377,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
"id" : 74,
"runtime_data" : [],
"primitives" : [
@@ -7059,85 +6460,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_switch_id"
}
],
@@ -7157,7 +6479,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
}
],
"source_info" : {
@@ -7172,7 +6494,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -7186,11 +6508,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -7204,9 +6526,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -7214,7 +6536,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -7228,11 +6550,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -7246,15 +6568,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
"id" : 75,
"runtime_data" : [],
"primitives" : [
@@ -7297,85 +6619,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_port_ids"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 47,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "ingress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "ingress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 48,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_port_ids", "egress_port_id"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "egress_port"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 49,
- "column" : 8,
- "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_switch_id"
}
],
@@ -7395,7 +6638,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
}
],
"source_info" : {
@@ -7410,7 +6653,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -7424,11 +6667,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -7442,9 +6685,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -7452,7 +6695,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -7466,11 +6709,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -7484,15 +6727,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
"id" : 76,
"runtime_data" : [],
"primitives" : [
@@ -7601,6 +6844,131 @@
"parameters" : [
{
"type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+ "id" : 77,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
"value" : "int_port_ids"
}
],
@@ -7699,7 +7067,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
}
],
"source_info" : {
@@ -7714,7 +7082,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -7728,460 +7096,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x04"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 115,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0010"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 116,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
- "id" : 77,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
- "id" : 78,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tx_util"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 88,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tx_util", "egress_port_tx_util"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 90,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
- "id" : 79,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_congestion"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 80,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 82,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_congestion"]
- },
- {
- "type" : "hexstr",
- "value" : "0x000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 83,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x01"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 97,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x0004"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 98,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
- "id" : 80,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tx_util"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 88,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tx_util", "egress_port_tx_util"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 90,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_q_congestion"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 80,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_id"]
- },
- {
- "type" : "hexstr",
- "value" : "0x00"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 82,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_q_congestion", "q_congestion"]
- },
- {
- "type" : "hexstr",
- "value" : "0x000000"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 83,
- "column" : 8,
- "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -8209,7 +7124,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -8223,7 +7138,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -8249,8 +7164,8 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
- "id" : 81,
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+ "id" : 78,
"runtime_data" : [],
"primitives" : [
{
@@ -8258,14 +7173,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_egress_tstamp"
+ "value" : "int_q_occupancy"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 74,
+ "line" : 60,
"column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ "source_fragment" : "hdr.int_q_occupancy.setValid()"
}
},
{
@@ -8273,7 +7188,26 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
+ "value" : ["int_q_occupancy", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 62,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_occupancy", "q_occupancy"]
},
{
"type" : "expression",
@@ -8282,22 +7216,12 @@
"value" : {
"op" : "&",
"left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_qdepth"]
},
"right" : {
"type" : "hexstr",
- "value" : "0xffffffff"
+ "value" : "0xffffff"
}
}
}
@@ -8305,9 +7229,24 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 75,
+ "line" : 63,
"column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_port_ids"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 47,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.setValid()"
}
},
{
@@ -8315,7 +7254,105 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["int_port_ids", "ingress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 48,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -8329,11 +7366,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x01"
+ "value" : "0x03"
}
}
},
@@ -8347,9 +7384,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 97,
+ "line" : 109,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
}
},
{
@@ -8357,7 +7394,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -8371,11 +7408,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0004"
+ "value" : "0x000c"
}
}
},
@@ -8389,15 +7426,563 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 98,
+ "line" : 110,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+ "id" : 79,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_hop_latency"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 54,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_hop_latency", "hop_latency"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 55,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_port_ids"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 47,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "ingress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 48,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+ "id" : 80,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_q_occupancy"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 60,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_occupancy", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 62,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_occupancy", "q_occupancy"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_qdepth"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 63,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_hop_latency"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 54,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_hop_latency", "hop_latency"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 55,
+ "column" : 8,
+ "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_port_ids"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 47,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "ingress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "ingress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 48,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_port_ids", "egress_port_id"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "egress_port"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 49,
+ "column" : 8,
+ "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_switch_id"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 41,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_switch_id", "switch_id"]
+ },
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 42,
+ "column" : 8,
+ "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x04"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 115,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0010"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 116,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+ "id" : 81,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
"id" : 82,
"runtime_data" : [],
"primitives" : [
@@ -8436,26 +8021,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -8469,53 +8039,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -8529,9 +8057,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -8539,7 +8067,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -8553,11 +8081,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -8571,15 +8099,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
"id" : 83,
"runtime_data" : [],
"primitives" : [
@@ -8637,26 +8165,11 @@
}
},
{
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -8670,53 +8183,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -8730,9 +8201,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -8740,7 +8211,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -8754,11 +8225,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -8772,15 +8243,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
"id" : 84,
"runtime_data" : [],
"primitives" : [
@@ -8872,6 +8343,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 103,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0008"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 104,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+ "id" : 85,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -8933,7 +8495,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -8947,132 +8509,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
- "id" : 85,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
- "value" : "int_ingress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 68,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -9100,7 +8537,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -9114,7 +8551,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -9140,7 +8577,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
"id" : 86,
"runtime_data" : [],
"primitives" : [
@@ -9183,14 +8620,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_ingress_tstamp"
+ "value" : "int_egress_tstamp"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 68,
+ "line" : 74,
"column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
}
},
{
@@ -9198,26 +8635,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
},
{
"type" : "expression",
@@ -9231,7 +8649,49 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -9259,7 +8719,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -9273,7 +8733,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -9299,7 +8759,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
"id" : 87,
"runtime_data" : [],
"primitives" : [
@@ -9361,14 +8821,14 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_ingress_tstamp"
+ "value" : "int_egress_tstamp"
}
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 68,
+ "line" : 74,
"column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
}
},
{
@@ -9376,26 +8836,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
},
{
"type" : "expression",
@@ -9409,7 +8850,49 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -9437,7 +8920,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -9451,7 +8934,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -9477,7 +8960,7 @@
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
"id" : 88,
"runtime_data" : [],
"primitives" : [
@@ -9573,131 +9056,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_ingress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 68,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_ingress_tstamp", "ingress_tstamp"]
- },
- {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 69,
- "column" : 8,
- "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x03"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 109,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x000c"
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 110,
- "column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
- }
- }
- ]
- },
- {
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
- "id" : 89,
- "runtime_data" : [],
- "primitives" : [
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_egress_tstamp"
}
],
@@ -9751,6 +9109,97 @@
}
},
{
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+ "id" : 89,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "add_header",
"parameters" : [
{
@@ -9789,7 +9238,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -9803,11 +9252,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x02"
+ "value" : "0x01"
}
}
},
@@ -9821,9 +9270,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 103,
+ "line" : 97,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
}
},
{
@@ -9831,7 +9280,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -9845,11 +9294,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x0008"
+ "value" : "0x0004"
}
}
},
@@ -9863,15 +9312,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 104,
+ "line" : 98,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
"id" : 90,
"runtime_data" : [],
"primitives" : [
@@ -9914,63 +9363,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_ingress_tstamp"
}
],
@@ -10005,7 +9397,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -10019,11 +9411,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -10037,9 +9429,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -10047,7 +9439,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -10061,11 +9453,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -10079,15 +9471,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
"id" : 91,
"runtime_data" : [],
"primitives" : [
@@ -10149,63 +9541,6 @@
"parameters" : [
{
"type" : "header",
- "value" : "int_egress_tstamp"
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 74,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.setValid()"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["int_egress_tstamp", "egress_tstamp"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "&",
- "left" : {
- "type" : "expression",
- "value" : {
- "op" : "+",
- "left" : {
- "type" : "field",
- "value" : ["standard_metadata", "enq_timestamp"]
- },
- "right" : {
- "type" : "field",
- "value" : ["standard_metadata", "deq_timedelta"]
- }
- }
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0xffffffff"
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/int/int_transit.p4",
- "line" : 75,
- "column" : 8,
- "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
- }
- },
- {
- "op" : "add_header",
- "parameters" : [
- {
- "type" : "header",
"value" : "int_ingress_tstamp"
}
],
@@ -10240,7 +9575,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -10254,11 +9589,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x03"
+ "value" : "0x02"
}
}
},
@@ -10272,9 +9607,9 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 109,
+ "line" : 103,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
}
},
{
@@ -10282,7 +9617,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -10296,11 +9631,11 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
- "value" : "0x000c"
+ "value" : "0x0008"
}
}
},
@@ -10314,15 +9649,15 @@
],
"source_info" : {
"filename" : "include/int/int_transit.p4",
- "line" : 110,
+ "line" : 104,
"column" : 33,
- "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
}
}
]
},
{
- "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
"id" : 92,
"runtime_data" : [],
"primitives" : [
@@ -10418,6 +9753,131 @@
"parameters" : [
{
"type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+ "id" : 93,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
"value" : "int_egress_tstamp"
}
],
@@ -10509,7 +9969,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
{
"type" : "expression",
@@ -10523,7 +9983,727 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x02"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 103,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x0008"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 104,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+ "id" : 94,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tx_util"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 88,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 90,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 74,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+ "id" : 95,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_q_congestion"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 80,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 82,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_congestion"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 83,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 74,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x03"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 109,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x000c"
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 110,
+ "column" : 33,
+ "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+ "id" : 96,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tx_util"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 88,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 90,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_q_congestion"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 80,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_id"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 82,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_q_congestion", "q_congestion"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x000000"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 83,
+ "column" : 8,
+ "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_egress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 74,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_egress_tstamp", "egress_tstamp"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ },
+ "right" : {
+ "type" : "field",
+ "value" : ["standard_metadata", "deq_timedelta"]
+ }
+ }
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0xffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 75,
+ "column" : 8,
+ "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+ }
+ },
+ {
+ "op" : "add_header",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "int_ingress_tstamp"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 68,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+ },
+ {
+ "type" : "field",
+ "value" : ["standard_metadata", "enq_timestamp"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/int/int_transit.p4",
+ "line" : 69,
+ "column" : 8,
+ "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "&",
+ "left" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "+",
+ "left" : {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
},
"right" : {
"type" : "hexstr",
@@ -10551,7 +10731,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
{
"type" : "expression",
@@ -10565,7 +10745,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
},
"right" : {
"type" : "hexstr",
@@ -10592,7 +10772,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 93,
+ "id" : 97,
"runtime_data" : [],
"primitives" : [
{
@@ -10605,7 +10785,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 252,
+ "line" : 264,
"column" : 8,
"source_fragment" : "hdr.mpls.setInvalid()"
}
@@ -10615,17 +10795,17 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 254,
- "column" : 33,
+ "line" : 266,
+ "column" : 38,
"source_fragment" : "= fabric_metadata.ip_eth_type; ..."
}
}
@@ -10633,7 +10813,7 @@
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 94,
+ "id" : 98,
"runtime_data" : [],
"primitives" : [
{
@@ -10646,7 +10826,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 259,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.mpls.setValid()"
}
@@ -10660,12 +10840,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 260,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
}
@@ -10684,7 +10864,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 261,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.mpls.tc = 3w0"
}
@@ -10703,7 +10883,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 262,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.mpls.bos = 1w1"
}
@@ -10717,12 +10897,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 263,
+ "line" : 275,
"column" : 8,
"source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
}
@@ -10732,7 +10912,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "hexstr",
@@ -10750,7 +10930,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 95,
+ "id" : 99,
"runtime_data" : [],
"primitives" : [
{
@@ -10763,7 +10943,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 271,
+ "line" : 283,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setValid()"
}
@@ -10777,12 +10957,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 272,
+ "line" : 284,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
}
@@ -10796,12 +10976,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 273,
+ "line" : 285,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
}
@@ -10815,14 +10995,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 274,
+ "line" : 286,
"column" : 8,
- "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -10834,12 +11014,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 275,
+ "line" : 287,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
}
@@ -10867,7 +11047,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 96,
+ "id" : 100,
"runtime_data" : [],
"primitives" : [
{
@@ -10879,14 +11059,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 286,
+ "line" : 312,
"column" : 8,
- "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -10899,7 +11079,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 287,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -10907,8 +11087,8 @@
]
},
{
- "name" : "act_19",
- "id" : 97,
+ "name" : "act_23",
+ "id" : 101,
"runtime_data" : [],
"primitives" : [
{
@@ -10924,8 +11104,8 @@
]
},
{
- "name" : "act_20",
- "id" : 98,
+ "name" : "act_24",
+ "id" : 102,
"runtime_data" : [],
"primitives" : [
{
@@ -10975,8 +11155,8 @@
]
},
{
- "name" : "act_21",
- "id" : 99,
+ "name" : "act_25",
+ "id" : 103,
"runtime_data" : [],
"primitives" : [
{
@@ -10989,7 +11169,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -10997,8 +11177,8 @@
]
},
{
- "name" : "act_22",
- "id" : 100,
+ "name" : "act_26",
+ "id" : 104,
"runtime_data" : [],
"primitives" : [
{
@@ -11027,8 +11207,8 @@
]
},
{
- "name" : "act_23",
- "id" : 101,
+ "name" : "act_27",
+ "id" : 105,
"runtime_data" : [],
"primitives" : [
{
@@ -11057,8 +11237,8 @@
]
},
{
- "name" : "act_24",
- "id" : 102,
+ "name" : "act_28",
+ "id" : 106,
"runtime_data" : [],
"primitives" : [
{
@@ -11071,7 +11251,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -11079,8 +11259,8 @@
]
},
{
- "name" : "act_25",
- "id" : 103,
+ "name" : "act_29",
+ "id" : 107,
"runtime_data" : [],
"primitives" : [
{
@@ -11120,7 +11300,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -11128,8 +11308,8 @@
]
},
{
- "name" : "act_26",
- "id" : 104,
+ "name" : "act_30",
+ "id" : 108,
"runtime_data" : [],
"primitives" : [
{
@@ -11142,7 +11322,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -11150,8 +11330,8 @@
]
},
{
- "name" : "act_27",
- "id" : 105,
+ "name" : "act_31",
+ "id" : 109,
"runtime_data" : [],
"primitives" : [
{
@@ -11191,7 +11371,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -11199,8 +11379,8 @@
]
},
{
- "name" : "act_28",
- "id" : 106,
+ "name" : "act_32",
+ "id" : 110,
"runtime_data" : [],
"primitives" : [
{
@@ -11229,8 +11409,8 @@
]
},
{
- "name" : "act_29",
- "id" : 107,
+ "name" : "act_33",
+ "id" : 111,
"runtime_data" : [],
"primitives" : [
{
@@ -11265,8 +11445,8 @@
]
},
{
- "name" : "act_30",
- "id" : 108,
+ "name" : "act_34",
+ "id" : 112,
"runtime_data" : [],
"primitives" : [
{
@@ -11292,7 +11472,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
}
}
},
@@ -11314,8 +11494,8 @@
]
},
{
- "name" : "act_31",
- "id" : 109,
+ "name" : "act_35",
+ "id" : 113,
"runtime_data" : [],
"primitives" : [
{
@@ -11363,8 +11543,8 @@
]
},
{
- "name" : "act_32",
- "id" : 110,
+ "name" : "act_36",
+ "id" : 114,
"runtime_data" : [],
"primitives" : [
{
@@ -11390,7 +11570,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
}
}
},
@@ -11412,8 +11592,8 @@
]
},
{
- "name" : "act_33",
- "id" : 111,
+ "name" : "act_37",
+ "id" : 115,
"runtime_data" : [],
"primitives" : [
{
@@ -11439,7 +11619,7 @@
},
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
}
}
},
@@ -11652,9 +11832,9 @@
"id" : 6,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ "line" : 110,
+ "column" : 36,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
},
"key" : [],
"match_type" : "exact",
@@ -11681,7 +11861,7 @@
"id" : 7,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "="
},
@@ -11694,9 +11874,9 @@
"direct_meters" : null,
"action_ids" : [40],
"actions" : ["act_6"],
- "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "base_default_next" : "node_16",
"next_tables" : {
- "act_6" : "FabricIngress.filtering.ingress_port_vlan"
+ "act_6" : "node_16"
},
"default_entry" : {
"action_id" : 40,
@@ -11706,11 +11886,127 @@
}
},
{
- "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "name" : "tbl_act_7",
"id" : 8,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 51,
+ "line" : 131,
+ "column" : 42,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [41],
+ "actions" : ["act_7"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_7" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 41,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_8",
+ "id" : 9,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [42],
+ "actions" : ["act_8"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_8" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 42,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_9",
+ "id" : 10,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [43],
+ "actions" : ["act_9"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_9" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 43,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_10",
+ "id" : 11,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [44],
+ "actions" : ["act_10"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_10" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 44,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "id" : 12,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 53,
"column" : 10,
"source_fragment" : "ingress_port_vlan"
},
@@ -11732,6 +12028,12 @@
"name" : "vlan_id",
"target" : ["vlan_tag", "vlan_id"],
"mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "inner_vlan_id",
+ "target" : ["inner_vlan_tag", "vlan_id"],
+ "mask" : null
}
],
"match_type" : "ternary",
@@ -11757,10 +12059,10 @@
},
{
"name" : "FabricIngress.filtering.fwd_classifier",
- "id" : 9,
+ "id" : 13,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 87,
+ "line" : 90,
"column" : 10,
"source_fragment" : "fwd_classifier"
},
@@ -11779,8 +12081,20 @@
},
{
"match_type" : "exact",
- "name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "name" : "is_ipv4",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv41"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_ipv6",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv62"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_mpls",
+ "target" : ["scalars", "fabric_metadata_t._is_mpls3"],
"mask" : null
}
],
@@ -11792,9 +12106,9 @@
"direct_meters" : null,
"action_ids" : [16],
"actions" : ["FabricIngress.filtering.set_forwarding_type"],
- "base_default_next" : "tbl_act_7",
+ "base_default_next" : "tbl_act_11",
"next_tables" : {
- "FabricIngress.filtering.set_forwarding_type" : "tbl_act_7"
+ "FabricIngress.filtering.set_forwarding_type" : "tbl_act_11"
},
"default_entry" : {
"action_id" : 16,
@@ -11804,8 +12118,8 @@
}
},
{
- "name" : "tbl_act_7",
- "id" : 10,
+ "name" : "tbl_act_11",
+ "id" : 14,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -11813,14 +12127,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [49],
- "actions" : ["act_15"],
- "base_default_next" : "node_19",
+ "action_ids" : [53],
+ "actions" : ["act_19"],
+ "base_default_next" : "node_26",
"next_tables" : {
- "act_15" : "node_19"
+ "act_19" : "node_26"
},
"default_entry" : {
- "action_id" : 49,
+ "action_id" : 53,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11828,7 +12142,7 @@
},
{
"name" : "FabricIngress.spgw_ingress.s1u_filter_table",
- "id" : 11,
+ "id" : 15,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 83,
@@ -11853,8 +12167,8 @@
"actions" : ["nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_8",
- "__MISS__" : "tbl_act_9"
+ "__HIT__" : "tbl_act_12",
+ "__MISS__" : "tbl_act_13"
},
"default_entry" : {
"action_id" : 1,
@@ -11864,8 +12178,8 @@
}
},
{
- "name" : "tbl_act_8",
- "id" : 12,
+ "name" : "tbl_act_12",
+ "id" : 16,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -11873,22 +12187,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41],
- "actions" : ["act_7"],
- "base_default_next" : "node_23",
+ "action_ids" : [45],
+ "actions" : ["act_11"],
+ "base_default_next" : "node_30",
"next_tables" : {
- "act_7" : "node_23"
+ "act_11" : "node_30"
},
"default_entry" : {
- "action_id" : 41,
+ "action_id" : 45,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_9",
- "id" : 13,
+ "name" : "tbl_act_13",
+ "id" : 17,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -11896,22 +12210,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [42],
- "actions" : ["act_8"],
- "base_default_next" : "node_23",
+ "action_ids" : [46],
+ "actions" : ["act_12"],
+ "base_default_next" : "node_30",
"next_tables" : {
- "act_8" : "node_23"
+ "act_12" : "node_30"
},
"default_entry" : {
- "action_id" : 42,
+ "action_id" : 46,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_10",
- "id" : 14,
+ "name" : "tbl_act_14",
+ "id" : 18,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 149,
@@ -11925,22 +12239,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [43],
- "actions" : ["act_9"],
- "base_default_next" : "tbl_act_11",
+ "action_ids" : [47],
+ "actions" : ["act_13"],
+ "base_default_next" : "tbl_act_15",
"next_tables" : {
- "act_9" : "tbl_act_11"
+ "act_13" : "tbl_act_15"
},
"default_entry" : {
- "action_id" : 43,
+ "action_id" : 47,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_11",
- "id" : 15,
+ "name" : "tbl_act_15",
+ "id" : 19,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 151,
@@ -11954,14 +12268,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [44],
- "actions" : ["act_10"],
+ "action_ids" : [48],
+ "actions" : ["act_14"],
"base_default_next" : "tbl_spgw_ingress_gtpu_decap",
"next_tables" : {
- "act_10" : "tbl_spgw_ingress_gtpu_decap"
+ "act_14" : "tbl_spgw_ingress_gtpu_decap"
},
"default_entry" : {
- "action_id" : 44,
+ "action_id" : 48,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -11969,7 +12283,7 @@
},
{
"name" : "tbl_spgw_ingress_gtpu_decap",
- "id" : 16,
+ "id" : 20,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 152,
@@ -11985,9 +12299,9 @@
"direct_meters" : null,
"action_ids" : [10],
"actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
- "base_default_next" : "node_33",
+ "base_default_next" : "node_40",
"next_tables" : {
- "FabricIngress.spgw_ingress.gtpu_decap" : "node_33"
+ "FabricIngress.spgw_ingress.gtpu_decap" : "node_40"
},
"default_entry" : {
"action_id" : 10,
@@ -11998,7 +12312,7 @@
},
{
"name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
- "id" : 17,
+ "id" : 21,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 70,
@@ -12023,8 +12337,8 @@
"actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_12",
- "__MISS__" : "tbl_act_13"
+ "__HIT__" : "tbl_act_16",
+ "__MISS__" : "tbl_act_17"
},
"default_entry" : {
"action_id" : 0,
@@ -12034,8 +12348,8 @@
}
},
{
- "name" : "tbl_act_12",
- "id" : 18,
+ "name" : "tbl_act_16",
+ "id" : 22,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -12043,22 +12357,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [45],
- "actions" : ["act_11"],
- "base_default_next" : "node_30",
+ "action_ids" : [49],
+ "actions" : ["act_15"],
+ "base_default_next" : "node_37",
"next_tables" : {
- "act_11" : "node_30"
+ "act_15" : "node_37"
},
"default_entry" : {
- "action_id" : 45,
+ "action_id" : 49,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_13",
- "id" : 19,
+ "name" : "tbl_act_17",
+ "id" : 23,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -12066,22 +12380,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [46],
- "actions" : ["act_12"],
- "base_default_next" : "node_30",
+ "action_ids" : [50],
+ "actions" : ["act_16"],
+ "base_default_next" : "node_37",
"next_tables" : {
- "act_12" : "node_30"
+ "act_16" : "node_37"
},
"default_entry" : {
- "action_id" : 46,
+ "action_id" : 50,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_14",
- "id" : 20,
+ "name" : "tbl_act_18",
+ "id" : 24,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 154,
@@ -12095,22 +12409,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [47],
- "actions" : ["act_13"],
- "base_default_next" : "node_33",
+ "action_ids" : [51],
+ "actions" : ["act_17"],
+ "base_default_next" : "node_40",
"next_tables" : {
- "act_13" : "node_33"
+ "act_17" : "node_40"
},
"default_entry" : {
- "action_id" : 47,
+ "action_id" : 51,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_15",
- "id" : 21,
+ "name" : "tbl_act_19",
+ "id" : 25,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 156,
@@ -12124,22 +12438,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [48],
- "actions" : ["act_14"],
- "base_default_next" : "node_33",
+ "action_ids" : [52],
+ "actions" : ["act_18"],
+ "base_default_next" : "node_40",
"next_tables" : {
- "act_14" : "node_33"
+ "act_18" : "node_40"
},
"default_entry" : {
- "action_id" : 48,
+ "action_id" : 52,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_16",
- "id" : 22,
+ "name" : "tbl_act_20",
+ "id" : 26,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 175,
@@ -12153,14 +12467,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [50],
- "actions" : ["act_16"],
- "base_default_next" : "node_35",
+ "action_ids" : [54],
+ "actions" : ["act_20"],
+ "base_default_next" : "node_42",
"next_tables" : {
- "act_16" : "node_35"
+ "act_20" : "node_42"
},
"default_entry" : {
- "action_id" : 50,
+ "action_id" : 54,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -12168,7 +12482,7 @@
},
{
"name" : "FabricIngress.forwarding.bridging",
- "id" : 23,
+ "id" : 27,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 46,
@@ -12179,7 +12493,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -12211,7 +12525,7 @@
},
{
"name" : "FabricIngress.forwarding.mpls",
- "id" : 24,
+ "id" : 28,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 71,
@@ -12222,7 +12536,7 @@
{
"match_type" : "exact",
"name" : "mpls_label",
- "target" : ["scalars", "fabric_metadata_t._mpls_label5"],
+ "target" : ["scalars", "fabric_metadata_t._mpls_label8"],
"mask" : null
}
],
@@ -12248,7 +12562,7 @@
},
{
"name" : "FabricIngress.forwarding.routing_v4",
- "id" : 25,
+ "id" : 29,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 101,
@@ -12286,7 +12600,7 @@
},
{
"name" : "FabricIngress.acl.acl",
- "id" : 26,
+ "id" : 30,
"source_info" : {
"filename" : "include/control/acl.p4",
"line" : 60,
@@ -12303,19 +12617,19 @@
{
"match_type" : "ternary",
"name" : "ip_proto",
- "target" : ["scalars", "fabric_metadata_t._ip_proto13"],
+ "target" : ["scalars", "fabric_metadata_t._ip_proto16"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
"mask" : null
},
{
@@ -12339,7 +12653,7 @@
{
"match_type" : "ternary",
"name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "target" : ["scalars", "fabric_metadata_t._last_eth_type0"],
"mask" : null
},
{
@@ -12375,13 +12689,13 @@
"direct_meters" : null,
"action_ids" : [21, 22, 23, 24, 25],
"actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
- "base_default_next" : "node_43",
+ "base_default_next" : "node_50",
"next_tables" : {
- "FabricIngress.acl.set_next_id_acl" : "node_43",
- "FabricIngress.acl.punt_to_cpu" : "node_43",
- "FabricIngress.acl.set_clone_session_id" : "node_43",
- "FabricIngress.acl.drop" : "node_43",
- "FabricIngress.acl.nop_acl" : "node_43"
+ "FabricIngress.acl.set_next_id_acl" : "node_50",
+ "FabricIngress.acl.punt_to_cpu" : "node_50",
+ "FabricIngress.acl.set_clone_session_id" : "node_50",
+ "FabricIngress.acl.drop" : "node_50",
+ "FabricIngress.acl.nop_acl" : "node_50"
},
"default_entry" : {
"action_id" : 25,
@@ -12392,10 +12706,10 @@
},
{
"name" : "FabricIngress.next.xconnect",
- "id" : 27,
+ "id" : 31,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 104,
+ "line" : 116,
"column" : 10,
"source_fragment" : "xconnect"
},
@@ -12409,7 +12723,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -12436,10 +12750,10 @@
},
{
"name" : "FabricIngress.next.hashed",
- "id" : 28,
+ "id" : 32,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 184,
+ "line" : 196,
"column" : 10,
"source_fragment" : "hashed"
},
@@ -12447,7 +12761,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -12470,10 +12784,10 @@
},
{
"name" : "FabricIngress.next.multicast",
- "id" : 29,
+ "id" : 33,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 218,
+ "line" : 230,
"column" : 10,
"source_fragment" : "multicast"
},
@@ -12481,7 +12795,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -12507,10 +12821,10 @@
},
{
"name" : "FabricIngress.next.next_vlan",
- "id" : 30,
+ "id" : 34,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 74,
+ "line" : 82,
"column" : 10,
"source_fragment" : "next_vlan"
},
@@ -12518,7 +12832,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -12530,10 +12844,10 @@
"direct_meters" : null,
"action_ids" : [26, 6],
"actions" : ["FabricIngress.next.set_vlan", "nop"],
- "base_default_next" : "node_48",
+ "base_default_next" : "node_55",
"next_tables" : {
- "FabricIngress.next.set_vlan" : "node_48",
- "nop" : "node_48"
+ "FabricIngress.next.set_vlan" : "node_55",
+ "nop" : "node_55"
},
"default_entry" : {
"action_id" : 6,
@@ -12543,8 +12857,8 @@
}
},
{
- "name" : "tbl_act_17",
- "id" : 31,
+ "name" : "tbl_act_21",
+ "id" : 35,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 31,
@@ -12558,22 +12872,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [51],
- "actions" : ["act_17"],
- "base_default_next" : "node_50",
+ "action_ids" : [55],
+ "actions" : ["act_21"],
+ "base_default_next" : "node_57",
"next_tables" : {
- "act_17" : "node_50"
+ "act_21" : "node_57"
},
"default_entry" : {
- "action_id" : 51,
+ "action_id" : 55,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_18",
- "id" : 32,
+ "name" : "tbl_act_22",
+ "id" : 36,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 34,
@@ -12587,14 +12901,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [52],
- "actions" : ["act_18"],
+ "action_ids" : [56],
+ "actions" : ["act_22"],
"base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
"next_tables" : {
- "act_18" : "FabricIngress.process_set_source_sink.tb_set_source"
+ "act_22" : "FabricIngress.process_set_source_sink.tb_set_source"
},
"default_entry" : {
- "action_id" : 52,
+ "action_id" : 56,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -12602,7 +12916,7 @@
},
{
"name" : "FabricIngress.process_set_source_sink.tb_set_source",
- "id" : 33,
+ "id" : 37,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 46,
@@ -12644,7 +12958,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 165,
+ "line" : 177,
"column" : 57,
"source_fragment" : "hashed_selector"
},
@@ -12662,15 +12976,15 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
}
]
}
@@ -12782,7 +13096,7 @@
"id" : 4,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 104,
+ "line" : 109,
"column" : 12,
"source_fragment" : "hdr.vlan_tag.isValid()"
},
@@ -12805,7 +13119,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 121,
"column" : 12,
"source_fragment" : "!hdr.mpls.isValid()"
},
@@ -12828,11 +13142,80 @@
}
},
"true_next" : "tbl_act_6",
- "false_next" : "FabricIngress.filtering.ingress_port_vlan"
+ "false_next" : "node_16"
+ },
+ {
+ "name" : "node_16",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 130,
+ "column" : 12,
+ "source_fragment" : "hdr.mpls.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["mpls", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_7",
+ "false_next" : "node_18"
+ },
+ {
+ "name" : "node_18",
+ "id" : 7,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 133,
+ "column" : 16,
+ "source_fragment" : "hdr.vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "node_19",
+ "false_next" : "tbl_act_10"
},
{
"name" : "node_19",
- "id" : 6,
+ "id" : 8,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 135,
+ "column" : 19,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_8",
+ "false_next" : "tbl_act_9"
+ },
+ {
+ "name" : "node_26",
+ "id" : 9,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 144,
@@ -12854,8 +13237,8 @@
"false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
},
{
- "name" : "node_23",
- "id" : 7,
+ "name" : "node_30",
+ "id" : 10,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 148,
@@ -12880,12 +13263,12 @@
}
}
},
- "true_next" : "tbl_act_10",
- "false_next" : "tbl_act_11"
+ "true_next" : "tbl_act_14",
+ "false_next" : "tbl_act_15"
},
{
- "name" : "node_30",
- "id" : 8,
+ "name" : "node_37",
+ "id" : 11,
"expression" : {
"type" : "expression",
"value" : {
@@ -12897,12 +13280,12 @@
}
}
},
- "true_next" : "tbl_act_14",
- "false_next" : "tbl_act_15"
+ "true_next" : "tbl_act_18",
+ "false_next" : "tbl_act_19"
},
{
- "name" : "node_33",
- "id" : 9,
+ "name" : "node_40",
+ "id" : 12,
"expression" : {
"type" : "expression",
"value" : {
@@ -12921,15 +13304,15 @@
}
}
},
- "true_next" : "tbl_act_16",
- "false_next" : "node_35"
+ "true_next" : "tbl_act_20",
+ "false_next" : "node_42"
},
{
- "name" : "node_35",
- "id" : 10,
+ "name" : "node_42",
+ "id" : 13,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 74,
+ "line" : 71,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_forwarding == false"
},
@@ -12944,7 +13327,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
}
}
},
@@ -12954,12 +13337,12 @@
}
}
},
- "true_next" : "node_36",
+ "true_next" : "node_43",
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_36",
- "id" : 11,
+ "name" : "node_43",
+ "id" : 14,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 141,
@@ -12972,7 +13355,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -12981,11 +13364,11 @@
}
},
"true_next" : "FabricIngress.forwarding.bridging",
- "false_next" : "node_38"
+ "false_next" : "node_45"
},
{
- "name" : "node_38",
- "id" : 12,
+ "name" : "node_45",
+ "id" : 15,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 142,
@@ -12998,7 +13381,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -13007,11 +13390,11 @@
}
},
"true_next" : "FabricIngress.forwarding.mpls",
- "false_next" : "node_40"
+ "false_next" : "node_47"
},
{
- "name" : "node_40",
- "id" : 13,
+ "name" : "node_47",
+ "id" : 16,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 143,
@@ -13024,7 +13407,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -13036,11 +13419,11 @@
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_43",
- "id" : 14,
+ "name" : "node_50",
+ "id" : 17,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 78,
+ "line" : 75,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_next == false"
},
@@ -13055,7 +13438,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
}
}
},
@@ -13069,8 +13452,8 @@
"true_next" : "FabricIngress.next.xconnect"
},
{
- "name" : "node_48",
- "id" : 15,
+ "name" : "node_55",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 30,
@@ -13091,12 +13474,12 @@
}
}
},
- "true_next" : "tbl_act_17",
- "false_next" : "node_50"
+ "true_next" : "tbl_act_21",
+ "false_next" : "node_57"
},
{
- "name" : "node_50",
- "id" : 16,
+ "name" : "node_57",
+ "id" : 19,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 33,
@@ -13117,7 +13500,7 @@
}
}
},
- "true_next" : "tbl_act_18",
+ "true_next" : "tbl_act_22",
"false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
}
]
@@ -13127,15 +13510,15 @@
"id" : 1,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 92,
+ "line" : 93,
"column" : 8,
"source_fragment" : "FabricEgress"
},
- "init_table" : "node_55",
+ "init_table" : "node_62",
"tables" : [
{
- "name" : "tbl_act_19",
- "id" : 34,
+ "name" : "tbl_act_23",
+ "id" : 38,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 41,
@@ -13149,22 +13532,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [97],
- "actions" : ["act_19"],
- "base_default_next" : "node_57",
+ "action_ids" : [101],
+ "actions" : ["act_23"],
+ "base_default_next" : "node_64",
"next_tables" : {
- "act_19" : "node_57"
+ "act_23" : "node_64"
},
"default_entry" : {
- "action_id" : 97,
+ "action_id" : 101,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_20",
- "id" : 35,
+ "name" : "tbl_act_24",
+ "id" : 39,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 44,
@@ -13178,25 +13561,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [98],
- "actions" : ["act_20"],
- "base_default_next" : "node_59",
+ "action_ids" : [102],
+ "actions" : ["act_24"],
+ "base_default_next" : "node_66",
"next_tables" : {
- "act_20" : "node_59"
+ "act_24" : "node_66"
},
"default_entry" : {
- "action_id" : 98,
+ "action_id" : 102,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_21",
- "id" : 36,
+ "name" : "tbl_act_25",
+ "id" : 40,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -13207,14 +13590,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [99],
- "actions" : ["act_21"],
- "base_default_next" : "node_61",
+ "action_ids" : [103],
+ "actions" : ["act_25"],
+ "base_default_next" : "node_68",
"next_tables" : {
- "act_21" : "node_61"
+ "act_25" : "node_68"
},
"default_entry" : {
- "action_id" : 99,
+ "action_id" : 103,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13222,10 +13605,10 @@
},
{
"name" : "tbl_egress_next_pop_mpls_if_present",
- "id" : 37,
+ "id" : 41,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -13236,14 +13619,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [93],
+ "action_ids" : [97],
"actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 93,
+ "action_id" : 97,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13251,10 +13634,10 @@
},
{
"name" : "tbl_egress_next_set_mpls",
- "id" : 38,
+ "id" : 42,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 314,
+ "line" : 340,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -13265,14 +13648,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [94],
+ "action_ids" : [98],
"actions" : ["FabricEgress.egress_next.set_mpls"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 94,
+ "action_id" : 98,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13280,10 +13663,10 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan",
- "id" : 39,
+ "id" : 43,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 291,
+ "line" : 317,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -13291,7 +13674,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -13307,23 +13690,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [96, 55],
+ "action_ids" : [100, 59],
"actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_22",
- "__MISS__" : "tbl_act_23"
+ "__HIT__" : "tbl_act_26",
+ "__MISS__" : "tbl_act_27"
},
"default_entry" : {
- "action_id" : 55,
+ "action_id" : 59,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_22",
- "id" : 40,
+ "name" : "tbl_act_26",
+ "id" : 44,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -13331,22 +13714,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [100],
- "actions" : ["act_22"],
- "base_default_next" : "node_68",
+ "action_ids" : [104],
+ "actions" : ["act_26"],
+ "base_default_next" : "node_75",
"next_tables" : {
- "act_22" : "node_68"
+ "act_26" : "node_75"
},
"default_entry" : {
- "action_id" : 100,
+ "action_id" : 104,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_23",
- "id" : 41,
+ "name" : "tbl_act_27",
+ "id" : 45,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -13354,14 +13737,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [101],
- "actions" : ["act_23"],
- "base_default_next" : "node_68",
+ "action_ids" : [105],
+ "actions" : ["act_27"],
+ "base_default_next" : "node_75",
"next_tables" : {
- "act_23" : "node_68"
+ "act_27" : "node_75"
},
"default_entry" : {
- "action_id" : 101,
+ "action_id" : 105,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13369,11 +13752,11 @@
},
{
"name" : "tbl_egress_next_push_vlan",
- "id" : 42,
+ "id" : 46,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 320,
- "column" : 16,
+ "line" : 357,
+ "column" : 20,
"source_fragment" : "push_vlan()"
},
"key" : [],
@@ -13383,25 +13766,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [95],
+ "action_ids" : [99],
"actions" : ["FabricEgress.egress_next.push_vlan"],
- "base_default_next" : "node_71",
+ "base_default_next" : "node_78",
"next_tables" : {
- "FabricEgress.egress_next.push_vlan" : "node_71"
+ "FabricEgress.egress_next.push_vlan" : "node_78"
},
"default_entry" : {
- "action_id" : 95,
+ "action_id" : 99,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_24",
- "id" : 43,
+ "name" : "tbl_act_28",
+ "id" : 47,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 25,
"source_fragment" : "="
},
@@ -13412,25 +13795,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [103],
- "actions" : ["act_25"],
- "base_default_next" : "node_73",
+ "action_ids" : [107],
+ "actions" : ["act_29"],
+ "base_default_next" : "node_80",
"next_tables" : {
- "act_25" : "node_73"
+ "act_29" : "node_80"
},
"default_entry" : {
- "action_id" : 103,
+ "action_id" : 107,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_25",
- "id" : 44,
+ "name" : "tbl_act_29",
+ "id" : 48,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -13441,25 +13824,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [102],
- "actions" : ["act_24"],
- "base_default_next" : "node_79",
+ "action_ids" : [106],
+ "actions" : ["act_28"],
+ "base_default_next" : "node_86",
"next_tables" : {
- "act_24" : "node_79"
+ "act_28" : "node_86"
},
"default_entry" : {
- "action_id" : 102,
+ "action_id" : 106,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_26",
- "id" : 45,
+ "name" : "tbl_act_30",
+ "id" : 49,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 29,
"source_fragment" : "="
},
@@ -13470,25 +13853,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [105],
- "actions" : ["act_27"],
- "base_default_next" : "node_77",
+ "action_ids" : [109],
+ "actions" : ["act_31"],
+ "base_default_next" : "node_84",
"next_tables" : {
- "act_27" : "node_77"
+ "act_31" : "node_84"
},
"default_entry" : {
- "action_id" : 105,
+ "action_id" : 109,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_27",
- "id" : 46,
+ "name" : "tbl_act_31",
+ "id" : 50,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -13499,14 +13882,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [104],
- "actions" : ["act_26"],
- "base_default_next" : "node_79",
+ "action_ids" : [108],
+ "actions" : ["act_30"],
+ "base_default_next" : "node_86",
"next_tables" : {
- "act_26" : "node_79"
+ "act_30" : "node_86"
},
"default_entry" : {
- "action_id" : 104,
+ "action_id" : 108,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13514,7 +13897,7 @@
},
{
"name" : "tbl_spgw_egress_gtpu_encap",
- "id" : 47,
+ "id" : 51,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 228,
@@ -13528,14 +13911,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [58],
+ "action_ids" : [62],
"actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
- "base_default_next" : "node_81",
+ "base_default_next" : "node_88",
"next_tables" : {
- "FabricEgress.spgw_egress.gtpu_encap" : "node_81"
+ "FabricEgress.spgw_egress.gtpu_encap" : "node_88"
},
"default_entry" : {
- "action_id" : 58,
+ "action_id" : 62,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13543,7 +13926,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
- "id" : 48,
+ "id" : 52,
"source_info" : {
"filename" : "include/int/int_source.p4",
"line" : 66,
@@ -13566,13 +13949,13 @@
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
"mask" : null
}
],
@@ -13582,23 +13965,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [59, 53],
+ "action_ids" : [63, 57],
"actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
- "base_default_next" : "node_84",
+ "base_default_next" : "node_91",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_84",
- "nop" : "node_84"
+ "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_91",
+ "nop" : "node_91"
},
"default_entry" : {
- "action_id" : 53,
+ "action_id" : 57,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_28",
- "id" : 49,
+ "name" : "tbl_act_32",
+ "id" : 53,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -13606,14 +13989,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [106],
- "actions" : ["act_28"],
+ "action_ids" : [110],
+ "actions" : ["act_32"],
"base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
"next_tables" : {
- "act_28" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+ "act_32" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
},
"default_entry" : {
- "action_id" : 106,
+ "action_id" : 110,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13621,7 +14004,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
- "id" : 50,
+ "id" : 54,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 315,
@@ -13642,23 +14025,23 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [60, 54],
+ "action_ids" : [64, 58],
"actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
- "base_default_next" : "node_87",
+ "base_default_next" : "node_94",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_87",
- "nop" : "node_87"
+ "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_94",
+ "nop" : "node_94"
},
"default_entry" : {
- "action_id" : 54,
+ "action_id" : 58,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_29",
- "id" : 51,
+ "name" : "tbl_act_33",
+ "id" : 55,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 420,
@@ -13672,14 +14055,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [107],
- "actions" : ["act_29"],
- "base_default_next" : "node_89",
+ "action_ids" : [111],
+ "actions" : ["act_33"],
+ "base_default_next" : "node_96",
"next_tables" : {
- "act_29" : "node_89"
+ "act_33" : "node_96"
},
"default_entry" : {
- "action_id" : 107,
+ "action_id" : 111,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13687,7 +14070,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
- "id" : 52,
+ "id" : 56,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 331,
@@ -13708,7 +14091,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 56],
+ "action_ids" : [65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 60],
"actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15", "NoAction"],
"base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
"next_tables" : {
@@ -13731,7 +14114,7 @@
"NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
},
"default_entry" : {
- "action_id" : 56,
+ "action_id" : 60,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -13751,7 +14134,7 @@
}
],
"action_entry" : {
- "action_id" : 61,
+ "action_id" : 65,
"action_data" : []
},
"priority" : 1
@@ -13770,7 +14153,7 @@
}
],
"action_entry" : {
- "action_id" : 62,
+ "action_id" : 66,
"action_data" : []
},
"priority" : 2
@@ -13789,7 +14172,7 @@
}
],
"action_entry" : {
- "action_id" : 63,
+ "action_id" : 67,
"action_data" : []
},
"priority" : 3
@@ -13808,7 +14191,7 @@
}
],
"action_entry" : {
- "action_id" : 64,
+ "action_id" : 68,
"action_data" : []
},
"priority" : 4
@@ -13827,7 +14210,7 @@
}
],
"action_entry" : {
- "action_id" : 65,
+ "action_id" : 69,
"action_data" : []
},
"priority" : 5
@@ -13846,7 +14229,7 @@
}
],
"action_entry" : {
- "action_id" : 66,
+ "action_id" : 70,
"action_data" : []
},
"priority" : 6
@@ -13865,7 +14248,7 @@
}
],
"action_entry" : {
- "action_id" : 67,
+ "action_id" : 71,
"action_data" : []
},
"priority" : 7
@@ -13884,7 +14267,7 @@
}
],
"action_entry" : {
- "action_id" : 68,
+ "action_id" : 72,
"action_data" : []
},
"priority" : 8
@@ -13903,7 +14286,7 @@
}
],
"action_entry" : {
- "action_id" : 69,
+ "action_id" : 73,
"action_data" : []
},
"priority" : 9
@@ -13922,7 +14305,7 @@
}
],
"action_entry" : {
- "action_id" : 70,
+ "action_id" : 74,
"action_data" : []
},
"priority" : 10
@@ -13941,7 +14324,7 @@
}
],
"action_entry" : {
- "action_id" : 71,
+ "action_id" : 75,
"action_data" : []
},
"priority" : 11
@@ -13960,7 +14343,7 @@
}
],
"action_entry" : {
- "action_id" : 72,
+ "action_id" : 76,
"action_data" : []
},
"priority" : 12
@@ -13979,7 +14362,7 @@
}
],
"action_entry" : {
- "action_id" : 73,
+ "action_id" : 77,
"action_data" : []
},
"priority" : 13
@@ -13998,7 +14381,7 @@
}
],
"action_entry" : {
- "action_id" : 74,
+ "action_id" : 78,
"action_data" : []
},
"priority" : 14
@@ -14017,7 +14400,7 @@
}
],
"action_entry" : {
- "action_id" : 75,
+ "action_id" : 79,
"action_data" : []
},
"priority" : 15
@@ -14036,7 +14419,7 @@
}
],
"action_entry" : {
- "action_id" : 76,
+ "action_id" : 80,
"action_data" : []
},
"priority" : 16
@@ -14045,7 +14428,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
- "id" : 53,
+ "id" : 57,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 375,
@@ -14066,30 +14449,30 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 57],
+ "action_ids" : [81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 61],
"actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15", "NoAction"],
- "base_default_next" : "tbl_act_30",
+ "base_default_next" : "tbl_act_34",
"next_tables" : {
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_30",
- "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_30",
- "NoAction" : "tbl_act_30"
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_34",
+ "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_34",
+ "NoAction" : "tbl_act_34"
},
"default_entry" : {
- "action_id" : 57,
+ "action_id" : 61,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -14109,7 +14492,7 @@
}
],
"action_entry" : {
- "action_id" : 77,
+ "action_id" : 81,
"action_data" : []
},
"priority" : 1
@@ -14128,7 +14511,7 @@
}
],
"action_entry" : {
- "action_id" : 78,
+ "action_id" : 82,
"action_data" : []
},
"priority" : 2
@@ -14147,7 +14530,7 @@
}
],
"action_entry" : {
- "action_id" : 79,
+ "action_id" : 83,
"action_data" : []
},
"priority" : 3
@@ -14166,7 +14549,7 @@
}
],
"action_entry" : {
- "action_id" : 80,
+ "action_id" : 84,
"action_data" : []
},
"priority" : 4
@@ -14185,7 +14568,7 @@
}
],
"action_entry" : {
- "action_id" : 81,
+ "action_id" : 85,
"action_data" : []
},
"priority" : 5
@@ -14204,7 +14587,7 @@
}
],
"action_entry" : {
- "action_id" : 82,
+ "action_id" : 86,
"action_data" : []
},
"priority" : 6
@@ -14223,7 +14606,7 @@
}
],
"action_entry" : {
- "action_id" : 83,
+ "action_id" : 87,
"action_data" : []
},
"priority" : 7
@@ -14242,7 +14625,7 @@
}
],
"action_entry" : {
- "action_id" : 84,
+ "action_id" : 88,
"action_data" : []
},
"priority" : 8
@@ -14261,7 +14644,7 @@
}
],
"action_entry" : {
- "action_id" : 85,
+ "action_id" : 89,
"action_data" : []
},
"priority" : 9
@@ -14280,7 +14663,7 @@
}
],
"action_entry" : {
- "action_id" : 86,
+ "action_id" : 90,
"action_data" : []
},
"priority" : 10
@@ -14299,7 +14682,7 @@
}
],
"action_entry" : {
- "action_id" : 87,
+ "action_id" : 91,
"action_data" : []
},
"priority" : 11
@@ -14318,7 +14701,7 @@
}
],
"action_entry" : {
- "action_id" : 88,
+ "action_id" : 92,
"action_data" : []
},
"priority" : 12
@@ -14337,7 +14720,7 @@
}
],
"action_entry" : {
- "action_id" : 89,
+ "action_id" : 93,
"action_data" : []
},
"priority" : 13
@@ -14356,7 +14739,7 @@
}
],
"action_entry" : {
- "action_id" : 90,
+ "action_id" : 94,
"action_data" : []
},
"priority" : 14
@@ -14375,7 +14758,7 @@
}
],
"action_entry" : {
- "action_id" : 91,
+ "action_id" : 95,
"action_data" : []
},
"priority" : 15
@@ -14394,7 +14777,7 @@
}
],
"action_entry" : {
- "action_id" : 92,
+ "action_id" : 96,
"action_data" : []
},
"priority" : 16
@@ -14402,8 +14785,8 @@
]
},
{
- "name" : "tbl_act_30",
- "id" : 54,
+ "name" : "tbl_act_34",
+ "id" : 58,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 425,
@@ -14417,22 +14800,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [109],
- "actions" : ["act_31"],
- "base_default_next" : "node_93",
+ "action_ids" : [113],
+ "actions" : ["act_35"],
+ "base_default_next" : "node_100",
"next_tables" : {
- "act_31" : "node_93"
+ "act_35" : "node_100"
},
"default_entry" : {
- "action_id" : 109,
+ "action_id" : 113,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_31",
- "id" : 55,
+ "name" : "tbl_act_35",
+ "id" : 59,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 428,
@@ -14446,22 +14829,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [108],
- "actions" : ["act_30"],
- "base_default_next" : "node_95",
+ "action_ids" : [112],
+ "actions" : ["act_34"],
+ "base_default_next" : "node_102",
"next_tables" : {
- "act_30" : "node_95"
+ "act_34" : "node_102"
},
"default_entry" : {
- "action_id" : 108,
+ "action_id" : 112,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_32",
- "id" : 56,
+ "name" : "tbl_act_36",
+ "id" : 60,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 431,
@@ -14475,22 +14858,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [110],
- "actions" : ["act_32"],
- "base_default_next" : "node_97",
+ "action_ids" : [114],
+ "actions" : ["act_36"],
+ "base_default_next" : "node_104",
"next_tables" : {
- "act_32" : "node_97"
+ "act_36" : "node_104"
},
"default_entry" : {
- "action_id" : 110,
+ "action_id" : 114,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_33",
- "id" : 57,
+ "name" : "tbl_act_37",
+ "id" : 61,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 434,
@@ -14504,14 +14887,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [111],
- "actions" : ["act_33"],
+ "action_ids" : [115],
+ "actions" : ["act_37"],
"base_default_next" : null,
"next_tables" : {
- "act_33" : null
+ "act_37" : null
},
"default_entry" : {
- "action_id" : 111,
+ "action_id" : 115,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -14521,8 +14904,8 @@
"action_profiles" : [],
"conditionals" : [
{
- "name" : "node_55",
- "id" : 17,
+ "name" : "node_62",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 39,
@@ -14540,7 +14923,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
}
}
},
@@ -14550,12 +14933,12 @@
}
}
},
- "true_next" : "tbl_act_19",
- "false_next" : "node_57"
+ "true_next" : "tbl_act_23",
+ "false_next" : "node_64"
},
{
- "name" : "node_57",
- "id" : 18,
+ "name" : "node_64",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 43,
@@ -14576,15 +14959,15 @@
}
}
},
- "true_next" : "tbl_act_20",
- "false_next" : "node_59"
+ "true_next" : "tbl_act_24",
+ "false_next" : "node_66"
},
{
- "name" : "node_59",
- "id" : 19,
+ "name" : "node_66",
+ "id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 306,
+ "line" : 332,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -14603,7 +14986,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
}
}
},
@@ -14629,15 +15012,15 @@
}
}
},
- "true_next" : "tbl_act_21",
- "false_next" : "node_61"
+ "true_next" : "tbl_act_25",
+ "false_next" : "node_68"
},
{
- "name" : "node_61",
- "id" : 20,
+ "name" : "node_68",
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 311,
+ "line" : 337,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -14647,7 +15030,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
"right" : {
"type" : "hexstr",
@@ -14655,15 +15038,15 @@
}
}
},
- "true_next" : "node_62",
+ "true_next" : "node_69",
"false_next" : "tbl_egress_next_set_mpls"
},
{
- "name" : "node_62",
- "id" : 21,
+ "name" : "node_69",
+ "id" : 24,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -14682,12 +15065,12 @@
"false_next" : "FabricEgress.egress_next.egress_vlan"
},
{
- "name" : "node_68",
- "id" : 22,
+ "name" : "node_75",
+ "id" : 25,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 317,
- "column" : 12,
+ "line" : 354,
+ "column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
"expression" : {
@@ -14708,16 +15091,16 @@
}
}
},
- "true_next" : "node_69",
- "false_next" : "node_71"
+ "true_next" : "node_76",
+ "false_next" : "node_78"
},
{
- "name" : "node_69",
- "id" : 23,
+ "name" : "node_76",
+ "id" : 26,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 319,
- "column" : 16,
+ "line" : 356,
+ "column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
"expression" : {
@@ -14726,7 +15109,7 @@
"op" : "!=",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
"right" : {
"type" : "hexstr",
@@ -14735,14 +15118,14 @@
}
},
"true_next" : "tbl_egress_next_push_vlan",
- "false_next" : "node_71"
+ "false_next" : "node_78"
},
{
- "name" : "node_71",
- "id" : 24,
+ "name" : "node_78",
+ "id" : 27,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 325,
+ "line" : 365,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -14757,15 +15140,15 @@
}
}
},
- "true_next" : "tbl_act_24",
- "false_next" : "node_75"
+ "true_next" : "tbl_act_28",
+ "false_next" : "node_82"
},
{
- "name" : "node_73",
- "id" : 25,
+ "name" : "node_80",
+ "id" : 28,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -14783,15 +15166,15 @@
}
}
},
- "true_next" : "tbl_act_25",
- "false_next" : "node_79"
+ "true_next" : "tbl_act_29",
+ "false_next" : "node_86"
},
{
- "name" : "node_75",
- "id" : 26,
+ "name" : "node_82",
+ "id" : 29,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 329,
+ "line" : 369,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -14806,15 +15189,15 @@
}
}
},
- "true_next" : "tbl_act_26",
- "false_next" : "node_79"
+ "true_next" : "tbl_act_30",
+ "false_next" : "node_86"
},
{
- "name" : "node_77",
- "id" : 27,
+ "name" : "node_84",
+ "id" : 30,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},
@@ -14832,12 +15215,12 @@
}
}
},
- "true_next" : "tbl_act_27",
- "false_next" : "node_79"
+ "true_next" : "tbl_act_31",
+ "false_next" : "node_86"
},
{
- "name" : "node_79",
- "id" : 28,
+ "name" : "node_86",
+ "id" : 31,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 227,
@@ -14850,7 +15233,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
},
"right" : {
"type" : "hexstr",
@@ -14859,11 +15242,11 @@
}
},
"true_next" : "tbl_spgw_egress_gtpu_encap",
- "false_next" : "node_81"
+ "false_next" : "node_88"
},
{
- "name" : "node_81",
- "id" : 29,
+ "name" : "node_88",
+ "id" : 32,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 102,
@@ -14939,11 +15322,11 @@
}
},
"false_next" : null,
- "true_next" : "node_82"
+ "true_next" : "node_89"
},
{
- "name" : "node_82",
- "id" : 30,
+ "name" : "node_89",
+ "id" : 33,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 106,
@@ -14961,7 +15344,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_source21"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_source24"]
}
}
},
@@ -14972,11 +15355,11 @@
}
},
"true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
- "false_next" : "node_84"
+ "false_next" : "node_91"
},
{
- "name" : "node_84",
- "id" : 31,
+ "name" : "node_91",
+ "id" : 34,
"source_info" : {
"filename" : "include/int/int_main.p4",
"line" : 110,
@@ -14995,11 +15378,11 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_28"
+ "true_next" : "tbl_act_32"
},
{
- "name" : "node_87",
- "id" : 32,
+ "name" : "node_94",
+ "id" : 35,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 419,
@@ -15017,7 +15400,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._int_meta_transit22"]
+ "value" : ["scalars", "fabric_metadata_t._int_meta_transit25"]
}
}
},
@@ -15027,12 +15410,12 @@
}
}
},
- "true_next" : "tbl_act_29",
- "false_next" : "node_89"
+ "true_next" : "tbl_act_33",
+ "false_next" : "node_96"
},
{
- "name" : "node_89",
- "id" : 33,
+ "name" : "node_96",
+ "id" : 36,
"expression" : {
"type" : "expression",
"value" : {
@@ -15055,8 +15438,8 @@
"true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
},
{
- "name" : "node_93",
- "id" : 34,
+ "name" : "node_100",
+ "id" : 37,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 427,
@@ -15074,12 +15457,12 @@
}
}
},
- "true_next" : "tbl_act_31",
- "false_next" : "node_95"
+ "true_next" : "tbl_act_35",
+ "false_next" : "node_102"
},
{
- "name" : "node_95",
- "id" : 35,
+ "name" : "node_102",
+ "id" : 38,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 430,
@@ -15097,12 +15480,12 @@
}
}
},
- "true_next" : "tbl_act_32",
- "false_next" : "node_97"
+ "true_next" : "tbl_act_36",
+ "false_next" : "node_104"
},
{
- "name" : "node_97",
- "id" : 36,
+ "name" : "node_104",
+ "id" : 39,
"source_info" : {
"filename" : "include/int/int_transit.p4",
"line" : 433,
@@ -15121,7 +15504,7 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_33"
+ "true_next" : "tbl_act_37"
}
]
}
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt
index 686385f..1a88a4b 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt
@@ -91,6 +91,12 @@
bitwidth: 12
match_type: TERNARY
}
+ match_fields {
+ id: 4
+ name: "inner_vlan_id"
+ bitwidth: 12
+ match_type: TERNARY
+ }
action_refs {
id: 16836487
}
@@ -124,8 +130,20 @@
}
match_fields {
id: 3
- name: "eth_type"
- bitwidth: 16
+ name: "is_ipv4"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 4
+ name: "is_ipv6"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 5
+ name: "is_mpls"
+ bitwidth: 1
match_type: EXACT
}
action_refs {
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
index ead2905..14c6701 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
@@ -13,28 +13,31 @@
["spgw_normalizer_hasReturned", 1, false],
["spgw_ingress_hasReturned", 1, false],
["egress_next_tmp", 1, false],
- ["fabric_metadata_t._eth_type0", 16, false],
- ["fabric_metadata_t._ip_eth_type1", 16, false],
- ["fabric_metadata_t._vlan_id2", 12, false],
- ["fabric_metadata_t._vlan_pri3", 3, false],
- ["fabric_metadata_t._vlan_cfi4", 1, false],
- ["fabric_metadata_t._mpls_label5", 20, false],
- ["fabric_metadata_t._mpls_ttl6", 8, false],
- ["fabric_metadata_t._skip_forwarding7", 1, false],
- ["fabric_metadata_t._skip_next8", 1, false],
- ["fabric_metadata_t._fwd_type9", 3, false],
- ["fabric_metadata_t._next_id10", 32, false],
- ["fabric_metadata_t._is_multicast11", 1, false],
- ["fabric_metadata_t._is_controller_packet_out12", 1, false],
- ["fabric_metadata_t._ip_proto13", 8, false],
- ["fabric_metadata_t._l4_sport14", 16, false],
- ["fabric_metadata_t._l4_dport15", 16, false],
- ["fabric_metadata_t._spgw_direction16", 2, false],
- ["fabric_metadata_t._spgw_ipv4_len17", 16, false],
- ["fabric_metadata_t._spgw_teid18", 32, false],
- ["fabric_metadata_t._spgw_s1u_enb_addr19", 32, false],
- ["fabric_metadata_t._spgw_s1u_sgw_addr20", 32, false],
- ["_padding_0", 2, false]
+ ["fabric_metadata_t._last_eth_type0", 16, false],
+ ["fabric_metadata_t._is_ipv41", 1, false],
+ ["fabric_metadata_t._is_ipv62", 1, false],
+ ["fabric_metadata_t._is_mpls3", 1, false],
+ ["fabric_metadata_t._ip_eth_type4", 16, false],
+ ["fabric_metadata_t._vlan_id5", 12, false],
+ ["fabric_metadata_t._vlan_pri6", 3, false],
+ ["fabric_metadata_t._vlan_cfi7", 1, false],
+ ["fabric_metadata_t._mpls_label8", 20, false],
+ ["fabric_metadata_t._mpls_ttl9", 8, false],
+ ["fabric_metadata_t._skip_forwarding10", 1, false],
+ ["fabric_metadata_t._skip_next11", 1, false],
+ ["fabric_metadata_t._fwd_type12", 3, false],
+ ["fabric_metadata_t._next_id13", 32, false],
+ ["fabric_metadata_t._is_multicast14", 1, false],
+ ["fabric_metadata_t._is_controller_packet_out15", 1, false],
+ ["fabric_metadata_t._ip_proto16", 8, false],
+ ["fabric_metadata_t._l4_sport17", 16, false],
+ ["fabric_metadata_t._l4_dport18", 16, false],
+ ["fabric_metadata_t._spgw_direction19", 2, false],
+ ["fabric_metadata_t._spgw_ipv4_len20", 16, false],
+ ["fabric_metadata_t._spgw_teid21", 32, false],
+ ["fabric_metadata_t._spgw_s1u_enb_addr22", 32, false],
+ ["fabric_metadata_t._spgw_s1u_sgw_addr23", 32, false],
+ ["_padding_0", 7, false]
]
},
{
@@ -408,7 +411,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
@@ -421,7 +424,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "hexstr",
@@ -448,7 +451,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"value" : "default",
@@ -482,7 +485,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -497,6 +500,18 @@
"next_state" : "parse_inner_vlan_tag"
},
{
+ "type" : "hexstr",
+ "value" : "0x88a8",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x9100",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
"value" : "default",
"mask" : null,
"next_state" : null
@@ -528,7 +543,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -566,7 +581,30 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._is_mpls3"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ },
+ {
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "field",
@@ -579,7 +617,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
},
{
"type" : "field",
@@ -623,12 +661,49 @@
]
},
{
- "name" : "parse_ipv4",
+ "name" : "pre_parse_ipv4",
"id" : 6,
"parser_ops" : [
{
"parameters" : [
{
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._is_ipv41"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ }
+ ],
+ "transitions" : [
+ {
+ "value" : "default",
+ "mask" : null,
+ "next_state" : "parse_ipv4"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
+ "name" : "parse_ipv4",
+ "id" : 7,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
"type" : "regular",
"value" : "ipv4"
}
@@ -639,7 +714,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
},
{
"type" : "field",
@@ -652,7 +727,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
},
{
"type" : "hexstr",
@@ -696,7 +771,7 @@
},
{
"name" : "parse_tcp",
- "id" : 7,
+ "id" : 8,
"parser_ops" : [
{
"parameters" : [
@@ -711,7 +786,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -724,7 +799,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -745,7 +820,7 @@
},
{
"name" : "parse_udp",
- "id" : 8,
+ "id" : 9,
"parser_ops" : [
{
"parameters" : [
@@ -760,7 +835,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -773,7 +848,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -805,7 +880,7 @@
},
{
"name" : "parse_icmp",
- "id" : 9,
+ "id" : 10,
"parser_ops" : [
{
"parameters" : [
@@ -828,7 +903,7 @@
},
{
"name" : "parse_gtpu",
- "id" : 10,
+ "id" : 11,
"parser_ops" : [
{
"parameters" : [
@@ -899,7 +974,7 @@
},
{
"name" : "do_parse_gtpu",
- "id" : 11,
+ "id" : 12,
"parser_ops" : [
{
"parameters" : [
@@ -954,7 +1029,7 @@
},
{
"name" : "parse_inner_udp",
- "id" : 12,
+ "id" : 13,
"parser_ops" : [
{
"parameters" : [
@@ -969,7 +1044,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
@@ -982,7 +1057,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
},
{
"type" : "field",
@@ -1011,7 +1086,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/parser.p4",
- "line" : 261,
+ "line" : 276,
"column" : 8,
"source_fragment" : "FabricDeparser"
},
@@ -1051,7 +1126,7 @@
"binding" : "FabricIngress.filtering.fwd_classifier",
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 80,
+ "line" : 83,
"column" : 50,
"source_fragment" : "fwd_classifier_counter"
}
@@ -1123,7 +1198,7 @@
"binding" : "FabricIngress.next.xconnect",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 92,
+ "line" : 103,
"column" : 50,
"source_fragment" : "xconnect_counter"
}
@@ -1135,7 +1210,7 @@
"binding" : "FabricIngress.next.hashed",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 166,
+ "line" : 178,
"column" : 50,
"source_fragment" : "hashed_counter"
}
@@ -1147,7 +1222,7 @@
"binding" : "FabricIngress.next.multicast",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 210,
+ "line" : 222,
"column" : 50,
"source_fragment" : "multicast_counter"
}
@@ -1183,7 +1258,7 @@
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 283,
+ "line" : 309,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -1506,7 +1581,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid21"]
},
{
"type" : "runtime_data",
@@ -1525,7 +1600,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr22"]
},
{
"type" : "runtime_data",
@@ -1544,7 +1619,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr23"]
},
{
"type" : "runtime_data",
@@ -1570,7 +1645,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
},
{
"type" : "expression",
@@ -1599,7 +1674,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -1646,7 +1721,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -1677,7 +1752,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
{
"type" : "runtime_data",
@@ -1686,7 +1761,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 83,
+ "line" : 86,
"column" : 33,
"source_fragment" : "= fwd_type; ..."
}
@@ -1708,7 +1783,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1739,7 +1814,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "hexstr",
@@ -1758,7 +1833,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1789,7 +1864,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1826,7 +1901,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -1871,7 +1946,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -1953,7 +2028,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
},
{
"type" : "expression",
@@ -2000,7 +2075,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "runtime_data",
@@ -2044,6 +2119,25 @@
"column" : 5,
"source_fragment" : "standard_metadata.egress_spec = port_num; ..."
}
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
}
]
},
@@ -2062,7 +2156,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._next_id10"]
+ "value" : ["scalars", "fabric_metadata_t._next_id13"]
},
{
"type" : "runtime_data",
@@ -2071,7 +2165,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 100,
+ "line" : 112,
"column" : 32,
"source_fragment" : "= next_id; ..."
}
@@ -2213,7 +2307,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
{
"type" : "runtime_data",
@@ -2310,7 +2404,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 213,
+ "line" : 225,
"column" : 8,
"source_fragment" : "standard_metadata.mcast_grp = group_id"
}
@@ -2320,7 +2414,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
},
{
"type" : "expression",
@@ -2339,7 +2433,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 214,
+ "line" : 226,
"column" : 37,
"source_fragment" : "= true; ..."
}
@@ -2598,7 +2692,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
},
{
"type" : "expression",
@@ -2644,26 +2738,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
- },
- {
- "type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- }
- ],
- "source_info" : {
- "filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
{
"type" : "field",
@@ -2672,7 +2747,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 106,
+ "line" : 110,
"column" : 36,
"source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
}
@@ -2682,7 +2757,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
},
{
"type" : "field",
@@ -2691,7 +2766,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 107,
+ "line" : 111,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.pri; ..."
}
@@ -2701,7 +2776,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
},
{
"type" : "field",
@@ -2710,7 +2785,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 108,
+ "line" : 112,
"column" : 37,
"source_fragment" : "= hdr.vlan_tag.cfi; ..."
}
@@ -2727,7 +2802,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
},
{
"type" : "hexstr",
@@ -2736,7 +2811,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
}
@@ -2753,23 +2828,19 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
+ "type" : "hexstr",
+ "value" : "0x8847"
}
- ]
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 108,
+ "column" : 31,
+ "source_fragment" : "0x8847; ..."
+ }
}
]
},
@@ -2783,23 +2854,19 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : false
- }
- }
- }
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
}
- ]
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "= hdr.inner_vlan_tag.eth_type; ..."
+ }
}
]
},
@@ -2809,18 +2876,22 @@
"runtime_data" : [],
"primitives" : [
{
- "op" : "mark_to_drop",
+ "op" : "assign",
"parameters" : [
{
- "type" : "header",
- "value" : "standard_metadata"
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+ },
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
}
],
"source_info" : {
- "filename" : "include/spgw.p4",
- "line" : 149,
- "column" : 16,
- "source_fragment" : "mark_to_drop(standard_metadata)"
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
}
}
]
@@ -2835,18 +2906,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
- "type" : "hexstr",
- "value" : "0x01"
+ "type" : "field",
+ "value" : ["ethernet", "eth_type"]
}
],
"source_info" : {
- "filename" : "include/control/../define.p4",
- "line" : 143,
- "column" : 36,
- "source_fragment" : "2w1; ..."
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "= hdr.ethernet.eth_type; ..."
}
}
]
@@ -2861,7 +2932,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp_0"]
+ "value" : ["scalars", "spgw_ingress_tmp"]
},
{
"type" : "expression",
@@ -2891,7 +2962,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "spgw_ingress_tmp_0"]
+ "value" : ["scalars", "spgw_ingress_tmp"]
},
{
"type" : "expression",
@@ -2917,11 +2988,119 @@
"runtime_data" : [],
"primitives" : [
{
+ "op" : "mark_to_drop",
+ "parameters" : [
+ {
+ "type" : "header",
+ "value" : "standard_metadata"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/spgw.p4",
+ "line" : 149,
+ "column" : 16,
+ "source_fragment" : "mark_to_drop(standard_metadata)"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_14",
+ "id" : 46,
+ "runtime_data" : [],
+ "primitives" : [
+ {
"op" : "assign",
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x01"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 143,
+ "column" : 36,
+ "source_fragment" : "2w1; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_15",
+ "id" : 47,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "spgw_ingress_tmp_0"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_16",
+ "id" : 48,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "spgw_ingress_tmp_0"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : false
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name" : "act_17",
+ "id" : 49,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
},
{
"type" : "hexstr",
@@ -2938,8 +3117,8 @@
]
},
{
- "name" : "act_14",
- "id" : 46,
+ "name" : "act_18",
+ "id" : 50,
"runtime_data" : [],
"primitives" : [
{
@@ -2947,7 +3126,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
},
{
"type" : "hexstr",
@@ -2993,8 +3172,8 @@
]
},
{
- "name" : "act_15",
- "id" : 47,
+ "name" : "act_19",
+ "id" : 51,
"runtime_data" : [],
"primitives" : [
{
@@ -3023,8 +3202,8 @@
]
},
{
- "name" : "act_16",
- "id" : 48,
+ "name" : "act_20",
+ "id" : 52,
"runtime_data" : [],
"primitives" : [
{
@@ -3032,7 +3211,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
},
{
"type" : "field",
@@ -3049,8 +3228,8 @@
]
},
{
- "name" : "act_17",
- "id" : 49,
+ "name" : "act_21",
+ "id" : 53,
"runtime_data" : [],
"primitives" : [
{
@@ -3107,8 +3286,8 @@
]
},
{
- "name" : "act_18",
- "id" : 50,
+ "name" : "act_22",
+ "id" : 54,
"runtime_data" : [],
"primitives" : [
{
@@ -3166,13 +3345,13 @@
},
{
"name" : "nop",
- "id" : 51,
+ "id" : 55,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.spgw_egress.gtpu_encap",
- "id" : 52,
+ "id" : 56,
"runtime_data" : [],
"primitives" : [
{
@@ -3412,7 +3591,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr22"]
}
],
"source_info" : {
@@ -3431,7 +3610,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr23"]
}
],
"source_info" : {
@@ -3532,7 +3711,7 @@
"op" : "+",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
},
"right" : {
"type" : "hexstr",
@@ -3731,7 +3910,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
}
],
"source_info" : {
@@ -3750,7 +3929,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid21"]
}
],
"source_info" : {
@@ -3764,7 +3943,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 53,
+ "id" : 57,
"runtime_data" : [],
"primitives" : [
{
@@ -3777,7 +3956,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 252,
+ "line" : 264,
"column" : 8,
"source_fragment" : "hdr.mpls.setInvalid()"
}
@@ -3787,17 +3966,17 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+ "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 254,
- "column" : 33,
+ "line" : 266,
+ "column" : 38,
"source_fragment" : "= fabric_metadata.ip_eth_type; ..."
}
}
@@ -3805,7 +3984,7 @@
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 54,
+ "id" : 58,
"runtime_data" : [],
"primitives" : [
{
@@ -3818,7 +3997,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 259,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.mpls.setValid()"
}
@@ -3832,12 +4011,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 260,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
}
@@ -3856,7 +4035,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 261,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.mpls.tc = 3w0"
}
@@ -3875,7 +4054,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 262,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.mpls.bos = 1w1"
}
@@ -3889,12 +4068,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 263,
+ "line" : 275,
"column" : 8,
"source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
}
@@ -3904,7 +4083,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
},
{
"type" : "hexstr",
@@ -3922,7 +4101,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 55,
+ "id" : 59,
"runtime_data" : [],
"primitives" : [
{
@@ -3935,7 +4114,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 271,
+ "line" : 283,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setValid()"
}
@@ -3949,12 +4128,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 272,
+ "line" : 284,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
}
@@ -3968,12 +4147,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 273,
+ "line" : 285,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
}
@@ -3987,14 +4166,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 274,
+ "line" : 286,
"column" : 8,
- "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -4006,12 +4185,12 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 275,
+ "line" : 287,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
}
@@ -4039,7 +4218,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 56,
+ "id" : 60,
"runtime_data" : [],
"primitives" : [
{
@@ -4051,14 +4230,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+ "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 286,
+ "line" : 312,
"column" : 8,
- "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type; ..."
+ "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
}
},
{
@@ -4071,7 +4250,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 287,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -4079,8 +4258,8 @@
]
},
{
- "name" : "act_19",
- "id" : 57,
+ "name" : "act_23",
+ "id" : 61,
"runtime_data" : [],
"primitives" : [
{
@@ -4096,8 +4275,8 @@
]
},
{
- "name" : "act_20",
- "id" : 58,
+ "name" : "act_24",
+ "id" : 62,
"runtime_data" : [],
"primitives" : [
{
@@ -4147,8 +4326,8 @@
]
},
{
- "name" : "act_21",
- "id" : 59,
+ "name" : "act_25",
+ "id" : 63,
"runtime_data" : [],
"primitives" : [
{
@@ -4161,7 +4340,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -4169,8 +4348,8 @@
]
},
{
- "name" : "act_22",
- "id" : 60,
+ "name" : "act_26",
+ "id" : 64,
"runtime_data" : [],
"primitives" : [
{
@@ -4199,8 +4378,8 @@
]
},
{
- "name" : "act_23",
- "id" : 61,
+ "name" : "act_27",
+ "id" : 65,
"runtime_data" : [],
"primitives" : [
{
@@ -4229,8 +4408,8 @@
]
},
{
- "name" : "act_24",
- "id" : 62,
+ "name" : "act_28",
+ "id" : 66,
"runtime_data" : [],
"primitives" : [
{
@@ -4243,7 +4422,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -4251,8 +4430,8 @@
]
},
{
- "name" : "act_25",
- "id" : 63,
+ "name" : "act_29",
+ "id" : 67,
"runtime_data" : [],
"primitives" : [
{
@@ -4292,7 +4471,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -4300,8 +4479,8 @@
]
},
{
- "name" : "act_26",
- "id" : 64,
+ "name" : "act_30",
+ "id" : 68,
"runtime_data" : [],
"primitives" : [
{
@@ -4314,7 +4493,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -4322,8 +4501,8 @@
]
},
{
- "name" : "act_27",
- "id" : 65,
+ "name" : "act_31",
+ "id" : 69,
"runtime_data" : [],
"primitives" : [
{
@@ -4363,7 +4542,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -4562,9 +4741,9 @@
"id" : 6,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ "line" : 110,
+ "column" : 36,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
},
"key" : [],
"match_type" : "exact",
@@ -4591,7 +4770,7 @@
"id" : 7,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "="
},
@@ -4604,9 +4783,9 @@
"direct_meters" : null,
"action_ids" : [38],
"actions" : ["act_6"],
- "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "base_default_next" : "node_16",
"next_tables" : {
- "act_6" : "FabricIngress.filtering.ingress_port_vlan"
+ "act_6" : "node_16"
},
"default_entry" : {
"action_id" : 38,
@@ -4616,11 +4795,127 @@
}
},
{
- "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "name" : "tbl_act_7",
"id" : 8,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 51,
+ "line" : 131,
+ "column" : 42,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [39],
+ "actions" : ["act_7"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_7" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 39,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_8",
+ "id" : 9,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [40],
+ "actions" : ["act_8"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_8" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 40,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_9",
+ "id" : 10,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [41],
+ "actions" : ["act_9"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_9" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 41,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_10",
+ "id" : 11,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [42],
+ "actions" : ["act_10"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_10" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 42,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "id" : 12,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 53,
"column" : 10,
"source_fragment" : "ingress_port_vlan"
},
@@ -4642,6 +4937,12 @@
"name" : "vlan_id",
"target" : ["vlan_tag", "vlan_id"],
"mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "inner_vlan_id",
+ "target" : ["inner_vlan_tag", "vlan_id"],
+ "mask" : null
}
],
"match_type" : "ternary",
@@ -4667,10 +4968,10 @@
},
{
"name" : "FabricIngress.filtering.fwd_classifier",
- "id" : 9,
+ "id" : 13,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 87,
+ "line" : 90,
"column" : 10,
"source_fragment" : "fwd_classifier"
},
@@ -4689,8 +4990,20 @@
},
{
"match_type" : "exact",
- "name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "name" : "is_ipv4",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv41"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_ipv6",
+ "target" : ["scalars", "fabric_metadata_t._is_ipv62"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_mpls",
+ "target" : ["scalars", "fabric_metadata_t._is_mpls3"],
"mask" : null
}
],
@@ -4702,9 +5015,9 @@
"direct_meters" : null,
"action_ids" : [14],
"actions" : ["FabricIngress.filtering.set_forwarding_type"],
- "base_default_next" : "tbl_act_7",
+ "base_default_next" : "tbl_act_11",
"next_tables" : {
- "FabricIngress.filtering.set_forwarding_type" : "tbl_act_7"
+ "FabricIngress.filtering.set_forwarding_type" : "tbl_act_11"
},
"default_entry" : {
"action_id" : 14,
@@ -4714,8 +5027,8 @@
}
},
{
- "name" : "tbl_act_7",
- "id" : 10,
+ "name" : "tbl_act_11",
+ "id" : 14,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -4723,14 +5036,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [47],
- "actions" : ["act_15"],
- "base_default_next" : "node_19",
+ "action_ids" : [51],
+ "actions" : ["act_19"],
+ "base_default_next" : "node_26",
"next_tables" : {
- "act_15" : "node_19"
+ "act_19" : "node_26"
},
"default_entry" : {
- "action_id" : 47,
+ "action_id" : 51,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4738,7 +5051,7 @@
},
{
"name" : "FabricIngress.spgw_ingress.s1u_filter_table",
- "id" : 11,
+ "id" : 15,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 83,
@@ -4763,8 +5076,8 @@
"actions" : ["nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_8",
- "__MISS__" : "tbl_act_9"
+ "__HIT__" : "tbl_act_12",
+ "__MISS__" : "tbl_act_13"
},
"default_entry" : {
"action_id" : 1,
@@ -4774,8 +5087,8 @@
}
},
{
- "name" : "tbl_act_8",
- "id" : 12,
+ "name" : "tbl_act_12",
+ "id" : 16,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -4783,22 +5096,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [39],
- "actions" : ["act_7"],
- "base_default_next" : "node_23",
+ "action_ids" : [43],
+ "actions" : ["act_11"],
+ "base_default_next" : "node_30",
"next_tables" : {
- "act_7" : "node_23"
+ "act_11" : "node_30"
},
"default_entry" : {
- "action_id" : 39,
+ "action_id" : 43,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_9",
- "id" : 13,
+ "name" : "tbl_act_13",
+ "id" : 17,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -4806,22 +5119,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [40],
- "actions" : ["act_8"],
- "base_default_next" : "node_23",
+ "action_ids" : [44],
+ "actions" : ["act_12"],
+ "base_default_next" : "node_30",
"next_tables" : {
- "act_8" : "node_23"
+ "act_12" : "node_30"
},
"default_entry" : {
- "action_id" : 40,
+ "action_id" : 44,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_10",
- "id" : 14,
+ "name" : "tbl_act_14",
+ "id" : 18,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 149,
@@ -4835,22 +5148,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41],
- "actions" : ["act_9"],
- "base_default_next" : "tbl_act_11",
+ "action_ids" : [45],
+ "actions" : ["act_13"],
+ "base_default_next" : "tbl_act_15",
"next_tables" : {
- "act_9" : "tbl_act_11"
+ "act_13" : "tbl_act_15"
},
"default_entry" : {
- "action_id" : 41,
+ "action_id" : 45,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_11",
- "id" : 15,
+ "name" : "tbl_act_15",
+ "id" : 19,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 151,
@@ -4864,14 +5177,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [42],
- "actions" : ["act_10"],
+ "action_ids" : [46],
+ "actions" : ["act_14"],
"base_default_next" : "tbl_spgw_ingress_gtpu_decap",
"next_tables" : {
- "act_10" : "tbl_spgw_ingress_gtpu_decap"
+ "act_14" : "tbl_spgw_ingress_gtpu_decap"
},
"default_entry" : {
- "action_id" : 42,
+ "action_id" : 46,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4879,7 +5192,7 @@
},
{
"name" : "tbl_spgw_ingress_gtpu_decap",
- "id" : 16,
+ "id" : 20,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 152,
@@ -4895,9 +5208,9 @@
"direct_meters" : null,
"action_ids" : [9],
"actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
- "base_default_next" : "node_33",
+ "base_default_next" : "node_40",
"next_tables" : {
- "FabricIngress.spgw_ingress.gtpu_decap" : "node_33"
+ "FabricIngress.spgw_ingress.gtpu_decap" : "node_40"
},
"default_entry" : {
"action_id" : 9,
@@ -4908,7 +5221,7 @@
},
{
"name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
- "id" : 17,
+ "id" : 21,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 70,
@@ -4933,8 +5246,8 @@
"actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_12",
- "__MISS__" : "tbl_act_13"
+ "__HIT__" : "tbl_act_16",
+ "__MISS__" : "tbl_act_17"
},
"default_entry" : {
"action_id" : 0,
@@ -4944,8 +5257,8 @@
}
},
{
- "name" : "tbl_act_12",
- "id" : 18,
+ "name" : "tbl_act_16",
+ "id" : 22,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -4953,22 +5266,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [43],
- "actions" : ["act_11"],
- "base_default_next" : "node_30",
+ "action_ids" : [47],
+ "actions" : ["act_15"],
+ "base_default_next" : "node_37",
"next_tables" : {
- "act_11" : "node_30"
+ "act_15" : "node_37"
},
"default_entry" : {
- "action_id" : 43,
+ "action_id" : 47,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_13",
- "id" : 19,
+ "name" : "tbl_act_17",
+ "id" : 23,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -4976,22 +5289,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [44],
- "actions" : ["act_12"],
- "base_default_next" : "node_30",
+ "action_ids" : [48],
+ "actions" : ["act_16"],
+ "base_default_next" : "node_37",
"next_tables" : {
- "act_12" : "node_30"
+ "act_16" : "node_37"
},
"default_entry" : {
- "action_id" : 44,
+ "action_id" : 48,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_14",
- "id" : 20,
+ "name" : "tbl_act_18",
+ "id" : 24,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 154,
@@ -5005,22 +5318,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [45],
- "actions" : ["act_13"],
- "base_default_next" : "node_33",
+ "action_ids" : [49],
+ "actions" : ["act_17"],
+ "base_default_next" : "node_40",
"next_tables" : {
- "act_13" : "node_33"
+ "act_17" : "node_40"
},
"default_entry" : {
- "action_id" : 45,
+ "action_id" : 49,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_15",
- "id" : 21,
+ "name" : "tbl_act_19",
+ "id" : 25,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 156,
@@ -5034,22 +5347,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [46],
- "actions" : ["act_14"],
- "base_default_next" : "node_33",
+ "action_ids" : [50],
+ "actions" : ["act_18"],
+ "base_default_next" : "node_40",
"next_tables" : {
- "act_14" : "node_33"
+ "act_18" : "node_40"
},
"default_entry" : {
- "action_id" : 46,
+ "action_id" : 50,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_16",
- "id" : 22,
+ "name" : "tbl_act_20",
+ "id" : 26,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 175,
@@ -5063,14 +5376,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [48],
- "actions" : ["act_16"],
- "base_default_next" : "node_35",
+ "action_ids" : [52],
+ "actions" : ["act_20"],
+ "base_default_next" : "node_42",
"next_tables" : {
- "act_16" : "node_35"
+ "act_20" : "node_42"
},
"default_entry" : {
- "action_id" : 48,
+ "action_id" : 52,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -5078,7 +5391,7 @@
},
{
"name" : "FabricIngress.forwarding.bridging",
- "id" : 23,
+ "id" : 27,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 46,
@@ -5089,7 +5402,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -5121,7 +5434,7 @@
},
{
"name" : "FabricIngress.forwarding.mpls",
- "id" : 24,
+ "id" : 28,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 71,
@@ -5132,7 +5445,7 @@
{
"match_type" : "exact",
"name" : "mpls_label",
- "target" : ["scalars", "fabric_metadata_t._mpls_label5"],
+ "target" : ["scalars", "fabric_metadata_t._mpls_label8"],
"mask" : null
}
],
@@ -5158,7 +5471,7 @@
},
{
"name" : "FabricIngress.forwarding.routing_v4",
- "id" : 25,
+ "id" : 29,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 101,
@@ -5196,7 +5509,7 @@
},
{
"name" : "FabricIngress.acl.acl",
- "id" : 26,
+ "id" : 30,
"source_info" : {
"filename" : "include/control/acl.p4",
"line" : 60,
@@ -5213,19 +5526,19 @@
{
"match_type" : "ternary",
"name" : "ip_proto",
- "target" : ["scalars", "fabric_metadata_t._ip_proto13"],
+ "target" : ["scalars", "fabric_metadata_t._ip_proto16"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_sport",
- "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+ "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
"mask" : null
},
{
"match_type" : "ternary",
"name" : "l4_dport",
- "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+ "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
"mask" : null
},
{
@@ -5249,7 +5562,7 @@
{
"match_type" : "ternary",
"name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+ "target" : ["scalars", "fabric_metadata_t._last_eth_type0"],
"mask" : null
},
{
@@ -5285,13 +5598,13 @@
"direct_meters" : null,
"action_ids" : [19, 20, 21, 22, 23],
"actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
- "base_default_next" : "node_43",
+ "base_default_next" : "node_50",
"next_tables" : {
- "FabricIngress.acl.set_next_id_acl" : "node_43",
- "FabricIngress.acl.punt_to_cpu" : "node_43",
- "FabricIngress.acl.set_clone_session_id" : "node_43",
- "FabricIngress.acl.drop" : "node_43",
- "FabricIngress.acl.nop_acl" : "node_43"
+ "FabricIngress.acl.set_next_id_acl" : "node_50",
+ "FabricIngress.acl.punt_to_cpu" : "node_50",
+ "FabricIngress.acl.set_clone_session_id" : "node_50",
+ "FabricIngress.acl.drop" : "node_50",
+ "FabricIngress.acl.nop_acl" : "node_50"
},
"default_entry" : {
"action_id" : 23,
@@ -5302,10 +5615,10 @@
},
{
"name" : "FabricIngress.next.xconnect",
- "id" : 27,
+ "id" : 31,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 104,
+ "line" : 116,
"column" : 10,
"source_fragment" : "xconnect"
},
@@ -5319,7 +5632,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -5346,10 +5659,10 @@
},
{
"name" : "FabricIngress.next.hashed",
- "id" : 28,
+ "id" : 32,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 184,
+ "line" : 196,
"column" : 10,
"source_fragment" : "hashed"
},
@@ -5357,7 +5670,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -5380,10 +5693,10 @@
},
{
"name" : "FabricIngress.next.multicast",
- "id" : 29,
+ "id" : 33,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 218,
+ "line" : 230,
"column" : 10,
"source_fragment" : "multicast"
},
@@ -5391,7 +5704,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -5417,10 +5730,10 @@
},
{
"name" : "FabricIngress.next.next_vlan",
- "id" : 30,
+ "id" : 34,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 74,
+ "line" : 82,
"column" : 10,
"source_fragment" : "next_vlan"
},
@@ -5428,7 +5741,7 @@
{
"match_type" : "exact",
"name" : "next_id",
- "target" : ["scalars", "fabric_metadata_t._next_id10"],
+ "target" : ["scalars", "fabric_metadata_t._next_id13"],
"mask" : null
}
],
@@ -5440,10 +5753,10 @@
"direct_meters" : null,
"action_ids" : [24, 5],
"actions" : ["FabricIngress.next.set_vlan", "nop"],
- "base_default_next" : "node_48",
+ "base_default_next" : "node_55",
"next_tables" : {
- "FabricIngress.next.set_vlan" : "node_48",
- "nop" : "node_48"
+ "FabricIngress.next.set_vlan" : "node_55",
+ "nop" : "node_55"
},
"default_entry" : {
"action_id" : 5,
@@ -5453,8 +5766,8 @@
}
},
{
- "name" : "tbl_act_17",
- "id" : 31,
+ "name" : "tbl_act_21",
+ "id" : 35,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 31,
@@ -5468,22 +5781,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [49],
- "actions" : ["act_17"],
- "base_default_next" : "node_50",
+ "action_ids" : [53],
+ "actions" : ["act_21"],
+ "base_default_next" : "node_57",
"next_tables" : {
- "act_17" : "node_50"
+ "act_21" : "node_57"
},
"default_entry" : {
- "action_id" : 49,
+ "action_id" : 53,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_18",
- "id" : 32,
+ "name" : "tbl_act_22",
+ "id" : 36,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 34,
@@ -5497,14 +5810,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [50],
- "actions" : ["act_18"],
+ "action_ids" : [54],
+ "actions" : ["act_22"],
"base_default_next" : null,
"next_tables" : {
- "act_18" : null
+ "act_22" : null
},
"default_entry" : {
- "action_id" : 50,
+ "action_id" : 54,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -5517,7 +5830,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 165,
+ "line" : 177,
"column" : 57,
"source_fragment" : "hashed_selector"
},
@@ -5535,15 +5848,15 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+ "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
}
]
}
@@ -5655,7 +5968,7 @@
"id" : 4,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 104,
+ "line" : 109,
"column" : 12,
"source_fragment" : "hdr.vlan_tag.isValid()"
},
@@ -5678,7 +5991,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 121,
"column" : 12,
"source_fragment" : "!hdr.mpls.isValid()"
},
@@ -5701,11 +6014,80 @@
}
},
"true_next" : "tbl_act_6",
- "false_next" : "FabricIngress.filtering.ingress_port_vlan"
+ "false_next" : "node_16"
+ },
+ {
+ "name" : "node_16",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 130,
+ "column" : 12,
+ "source_fragment" : "hdr.mpls.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["mpls", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_7",
+ "false_next" : "node_18"
+ },
+ {
+ "name" : "node_18",
+ "id" : 7,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 133,
+ "column" : 16,
+ "source_fragment" : "hdr.vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "node_19",
+ "false_next" : "tbl_act_10"
},
{
"name" : "node_19",
- "id" : 6,
+ "id" : 8,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 135,
+ "column" : 19,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_8",
+ "false_next" : "tbl_act_9"
+ },
+ {
+ "name" : "node_26",
+ "id" : 9,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 144,
@@ -5727,8 +6109,8 @@
"false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
},
{
- "name" : "node_23",
- "id" : 7,
+ "name" : "node_30",
+ "id" : 10,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 148,
@@ -5753,12 +6135,12 @@
}
}
},
- "true_next" : "tbl_act_10",
- "false_next" : "tbl_act_11"
+ "true_next" : "tbl_act_14",
+ "false_next" : "tbl_act_15"
},
{
- "name" : "node_30",
- "id" : 8,
+ "name" : "node_37",
+ "id" : 11,
"expression" : {
"type" : "expression",
"value" : {
@@ -5770,12 +6152,12 @@
}
}
},
- "true_next" : "tbl_act_14",
- "false_next" : "tbl_act_15"
+ "true_next" : "tbl_act_18",
+ "false_next" : "tbl_act_19"
},
{
- "name" : "node_33",
- "id" : 9,
+ "name" : "node_40",
+ "id" : 12,
"expression" : {
"type" : "expression",
"value" : {
@@ -5794,15 +6176,15 @@
}
}
},
- "true_next" : "tbl_act_16",
- "false_next" : "node_35"
+ "true_next" : "tbl_act_20",
+ "false_next" : "node_42"
},
{
- "name" : "node_35",
- "id" : 10,
+ "name" : "node_42",
+ "id" : 13,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 74,
+ "line" : 71,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_forwarding == false"
},
@@ -5817,7 +6199,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
}
}
},
@@ -5827,12 +6209,12 @@
}
}
},
- "true_next" : "node_36",
+ "true_next" : "node_43",
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_36",
- "id" : 11,
+ "name" : "node_43",
+ "id" : 14,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 141,
@@ -5845,7 +6227,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -5854,11 +6236,11 @@
}
},
"true_next" : "FabricIngress.forwarding.bridging",
- "false_next" : "node_38"
+ "false_next" : "node_45"
},
{
- "name" : "node_38",
- "id" : 12,
+ "name" : "node_45",
+ "id" : 15,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 142,
@@ -5871,7 +6253,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -5880,11 +6262,11 @@
}
},
"true_next" : "FabricIngress.forwarding.mpls",
- "false_next" : "node_40"
+ "false_next" : "node_47"
},
{
- "name" : "node_40",
- "id" : 13,
+ "name" : "node_47",
+ "id" : 16,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 143,
@@ -5897,7 +6279,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+ "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
},
"right" : {
"type" : "hexstr",
@@ -5909,11 +6291,11 @@
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_43",
- "id" : 14,
+ "name" : "node_50",
+ "id" : 17,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 78,
+ "line" : 75,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_next == false"
},
@@ -5928,7 +6310,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
}
}
},
@@ -5942,8 +6324,8 @@
"true_next" : "FabricIngress.next.xconnect"
},
{
- "name" : "node_48",
- "id" : 15,
+ "name" : "node_55",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 30,
@@ -5964,12 +6346,12 @@
}
}
},
- "true_next" : "tbl_act_17",
- "false_next" : "node_50"
+ "true_next" : "tbl_act_21",
+ "false_next" : "node_57"
},
{
- "name" : "node_50",
- "id" : 16,
+ "name" : "node_57",
+ "id" : 19,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 33,
@@ -5991,7 +6373,7 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_18"
+ "true_next" : "tbl_act_22"
}
]
},
@@ -6000,15 +6382,15 @@
"id" : 1,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 92,
+ "line" : 93,
"column" : 8,
"source_fragment" : "FabricEgress"
},
- "init_table" : "node_54",
+ "init_table" : "node_61",
"tables" : [
{
- "name" : "tbl_act_19",
- "id" : 33,
+ "name" : "tbl_act_23",
+ "id" : 37,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 41,
@@ -6022,22 +6404,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [57],
- "actions" : ["act_19"],
- "base_default_next" : "node_56",
+ "action_ids" : [61],
+ "actions" : ["act_23"],
+ "base_default_next" : "node_63",
"next_tables" : {
- "act_19" : "node_56"
+ "act_23" : "node_63"
},
"default_entry" : {
- "action_id" : 57,
+ "action_id" : 61,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_20",
- "id" : 34,
+ "name" : "tbl_act_24",
+ "id" : 38,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 44,
@@ -6051,25 +6433,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [58],
- "actions" : ["act_20"],
- "base_default_next" : "node_58",
+ "action_ids" : [62],
+ "actions" : ["act_24"],
+ "base_default_next" : "node_65",
"next_tables" : {
- "act_20" : "node_58"
+ "act_24" : "node_65"
},
"default_entry" : {
- "action_id" : 58,
+ "action_id" : 62,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_21",
- "id" : 35,
+ "name" : "tbl_act_25",
+ "id" : 39,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -6080,14 +6462,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [59],
- "actions" : ["act_21"],
- "base_default_next" : "node_60",
+ "action_ids" : [63],
+ "actions" : ["act_25"],
+ "base_default_next" : "node_67",
"next_tables" : {
- "act_21" : "node_60"
+ "act_25" : "node_67"
},
"default_entry" : {
- "action_id" : 59,
+ "action_id" : 63,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6095,10 +6477,10 @@
},
{
"name" : "tbl_egress_next_pop_mpls_if_present",
- "id" : 36,
+ "id" : 40,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -6109,14 +6491,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [53],
+ "action_ids" : [57],
"actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 53,
+ "action_id" : 57,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6124,10 +6506,10 @@
},
{
"name" : "tbl_egress_next_set_mpls",
- "id" : 37,
+ "id" : 41,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 314,
+ "line" : 340,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -6138,14 +6520,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [54],
+ "action_ids" : [58],
"actions" : ["FabricEgress.egress_next.set_mpls"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 54,
+ "action_id" : 58,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6153,10 +6535,10 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan",
- "id" : 38,
+ "id" : 42,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 291,
+ "line" : 317,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -6164,7 +6546,7 @@
{
"match_type" : "exact",
"name" : "vlan_id",
- "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+ "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
"mask" : null
},
{
@@ -6180,87 +6562,12 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [56, 51],
+ "action_ids" : [60, 55],
"actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_22",
- "__MISS__" : "tbl_act_23"
- },
- "default_entry" : {
- "action_id" : 51,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_22",
- "id" : 39,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [60],
- "actions" : ["act_22"],
- "base_default_next" : "node_67",
- "next_tables" : {
- "act_22" : "node_67"
- },
- "default_entry" : {
- "action_id" : 60,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_act_23",
- "id" : 40,
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [61],
- "actions" : ["act_23"],
- "base_default_next" : "node_67",
- "next_tables" : {
- "act_23" : "node_67"
- },
- "default_entry" : {
- "action_id" : 61,
- "action_const" : true,
- "action_data" : [],
- "action_entry_const" : true
- }
- },
- {
- "name" : "tbl_egress_next_push_vlan",
- "id" : 41,
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 320,
- "column" : 16,
- "source_fragment" : "push_vlan()"
- },
- "key" : [],
- "match_type" : "exact",
- "type" : "simple",
- "max_size" : 1024,
- "with_counters" : false,
- "support_timeout" : false,
- "direct_meters" : null,
- "action_ids" : [55],
- "actions" : ["FabricEgress.egress_next.push_vlan"],
- "base_default_next" : "node_70",
- "next_tables" : {
- "FabricEgress.egress_next.push_vlan" : "node_70"
+ "__HIT__" : "tbl_act_26",
+ "__MISS__" : "tbl_act_27"
},
"default_entry" : {
"action_id" : 55,
@@ -6270,11 +6577,86 @@
}
},
{
- "name" : "tbl_act_24",
- "id" : 42,
+ "name" : "tbl_act_26",
+ "id" : 43,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [64],
+ "actions" : ["act_26"],
+ "base_default_next" : "node_74",
+ "next_tables" : {
+ "act_26" : "node_74"
+ },
+ "default_entry" : {
+ "action_id" : 64,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_27",
+ "id" : 44,
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [65],
+ "actions" : ["act_27"],
+ "base_default_next" : "node_74",
+ "next_tables" : {
+ "act_27" : "node_74"
+ },
+ "default_entry" : {
+ "action_id" : 65,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_egress_next_push_vlan",
+ "id" : 45,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 357,
+ "column" : 20,
+ "source_fragment" : "push_vlan()"
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [59],
+ "actions" : ["FabricEgress.egress_next.push_vlan"],
+ "base_default_next" : "node_77",
+ "next_tables" : {
+ "FabricEgress.egress_next.push_vlan" : "node_77"
+ },
+ "default_entry" : {
+ "action_id" : 59,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_28",
+ "id" : 46,
+ "source_info" : {
+ "filename" : "include/control/next.p4",
+ "line" : 366,
"column" : 25,
"source_fragment" : "="
},
@@ -6285,25 +6667,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [63],
- "actions" : ["act_25"],
- "base_default_next" : "node_72",
+ "action_ids" : [67],
+ "actions" : ["act_29"],
+ "base_default_next" : "node_79",
"next_tables" : {
- "act_25" : "node_72"
+ "act_29" : "node_79"
},
"default_entry" : {
- "action_id" : 63,
+ "action_id" : 67,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_25",
- "id" : 43,
+ "name" : "tbl_act_29",
+ "id" : 47,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -6314,25 +6696,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [62],
- "actions" : ["act_24"],
- "base_default_next" : "node_78",
+ "action_ids" : [66],
+ "actions" : ["act_28"],
+ "base_default_next" : "node_85",
"next_tables" : {
- "act_24" : "node_78"
+ "act_28" : "node_85"
},
"default_entry" : {
- "action_id" : 62,
+ "action_id" : 66,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_26",
- "id" : 44,
+ "name" : "tbl_act_30",
+ "id" : 48,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 29,
"source_fragment" : "="
},
@@ -6343,25 +6725,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [65],
- "actions" : ["act_27"],
- "base_default_next" : "node_76",
+ "action_ids" : [69],
+ "actions" : ["act_31"],
+ "base_default_next" : "node_83",
"next_tables" : {
- "act_27" : "node_76"
+ "act_31" : "node_83"
},
"default_entry" : {
- "action_id" : 65,
+ "action_id" : 69,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_27",
- "id" : 45,
+ "name" : "tbl_act_31",
+ "id" : 49,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -6372,14 +6754,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [64],
- "actions" : ["act_26"],
- "base_default_next" : "node_78",
+ "action_ids" : [68],
+ "actions" : ["act_30"],
+ "base_default_next" : "node_85",
"next_tables" : {
- "act_26" : "node_78"
+ "act_30" : "node_85"
},
"default_entry" : {
- "action_id" : 64,
+ "action_id" : 68,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6387,7 +6769,7 @@
},
{
"name" : "tbl_spgw_egress_gtpu_encap",
- "id" : 46,
+ "id" : 50,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 228,
@@ -6401,14 +6783,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [52],
+ "action_ids" : [56],
"actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
"base_default_next" : null,
"next_tables" : {
"FabricEgress.spgw_egress.gtpu_encap" : null
},
"default_entry" : {
- "action_id" : 52,
+ "action_id" : 56,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6418,8 +6800,8 @@
"action_profiles" : [],
"conditionals" : [
{
- "name" : "node_54",
- "id" : 17,
+ "name" : "node_61",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 39,
@@ -6437,7 +6819,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+ "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
}
}
},
@@ -6447,12 +6829,12 @@
}
}
},
- "true_next" : "tbl_act_19",
- "false_next" : "node_56"
+ "true_next" : "tbl_act_23",
+ "false_next" : "node_63"
},
{
- "name" : "node_56",
- "id" : 18,
+ "name" : "node_63",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 43,
@@ -6473,15 +6855,15 @@
}
}
},
- "true_next" : "tbl_act_20",
- "false_next" : "node_58"
+ "true_next" : "tbl_act_24",
+ "false_next" : "node_65"
},
{
- "name" : "node_58",
- "id" : 19,
+ "name" : "node_65",
+ "id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 306,
+ "line" : 332,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -6500,7 +6882,7 @@
"left" : null,
"right" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+ "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
}
}
},
@@ -6526,15 +6908,15 @@
}
}
},
- "true_next" : "tbl_act_21",
- "false_next" : "node_60"
+ "true_next" : "tbl_act_25",
+ "false_next" : "node_67"
},
{
- "name" : "node_60",
- "id" : 20,
+ "name" : "node_67",
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 311,
+ "line" : 337,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -6544,7 +6926,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+ "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
},
"right" : {
"type" : "hexstr",
@@ -6552,15 +6934,15 @@
}
}
},
- "true_next" : "node_61",
+ "true_next" : "node_68",
"false_next" : "tbl_egress_next_set_mpls"
},
{
- "name" : "node_61",
- "id" : 21,
+ "name" : "node_68",
+ "id" : 24,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -6579,12 +6961,12 @@
"false_next" : "FabricEgress.egress_next.egress_vlan"
},
{
- "name" : "node_67",
- "id" : 22,
+ "name" : "node_74",
+ "id" : 25,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 317,
- "column" : 12,
+ "line" : 354,
+ "column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
"expression" : {
@@ -6605,16 +6987,16 @@
}
}
},
- "true_next" : "node_68",
- "false_next" : "node_70"
+ "true_next" : "node_75",
+ "false_next" : "node_77"
},
{
- "name" : "node_68",
- "id" : 23,
+ "name" : "node_75",
+ "id" : 26,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 319,
- "column" : 16,
+ "line" : 356,
+ "column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
"expression" : {
@@ -6623,7 +7005,7 @@
"op" : "!=",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+ "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
},
"right" : {
"type" : "hexstr",
@@ -6632,14 +7014,14 @@
}
},
"true_next" : "tbl_egress_next_push_vlan",
- "false_next" : "node_70"
+ "false_next" : "node_77"
},
{
- "name" : "node_70",
- "id" : 24,
+ "name" : "node_77",
+ "id" : 27,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 325,
+ "line" : 365,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -6654,15 +7036,15 @@
}
}
},
- "true_next" : "tbl_act_24",
- "false_next" : "node_74"
+ "true_next" : "tbl_act_28",
+ "false_next" : "node_81"
},
{
- "name" : "node_72",
- "id" : 25,
+ "name" : "node_79",
+ "id" : 28,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -6680,15 +7062,15 @@
}
}
},
- "true_next" : "tbl_act_25",
- "false_next" : "node_78"
+ "true_next" : "tbl_act_29",
+ "false_next" : "node_85"
},
{
- "name" : "node_74",
- "id" : 26,
+ "name" : "node_81",
+ "id" : 29,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 329,
+ "line" : 369,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -6703,15 +7085,15 @@
}
}
},
- "true_next" : "tbl_act_26",
- "false_next" : "node_78"
+ "true_next" : "tbl_act_30",
+ "false_next" : "node_85"
},
{
- "name" : "node_76",
- "id" : 27,
+ "name" : "node_83",
+ "id" : 30,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},
@@ -6729,12 +7111,12 @@
}
}
},
- "true_next" : "tbl_act_27",
- "false_next" : "node_78"
+ "true_next" : "tbl_act_31",
+ "false_next" : "node_85"
},
{
- "name" : "node_78",
- "id" : 28,
+ "name" : "node_85",
+ "id" : 31,
"source_info" : {
"filename" : "include/spgw.p4",
"line" : 227,
@@ -6747,7 +7129,7 @@
"op" : "==",
"left" : {
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
},
"right" : {
"type" : "hexstr",
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt
index b5fd3c7..2fca1c0 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt
@@ -67,6 +67,12 @@
bitwidth: 12
match_type: TERNARY
}
+ match_fields {
+ id: 4
+ name: "inner_vlan_id"
+ bitwidth: 12
+ match_type: TERNARY
+ }
action_refs {
id: 16836487
}
@@ -100,8 +106,20 @@
}
match_fields {
id: 3
- name: "eth_type"
- bitwidth: 16
+ name: "is_ipv4"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 4
+ name: "is_ipv6"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 5
+ name: "is_mpls"
+ bitwidth: 1
match_type: EXACT
}
action_refs {
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
index 8ea1cab..bc0e350 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
@@ -8,7 +8,10 @@
["tmp", 32, false],
["tmp_1", 32, false],
["egress_next_tmp", 1, false],
- ["fabric_metadata_t.eth_type", 16, false],
+ ["fabric_metadata_t.last_eth_type", 16, false],
+ ["fabric_metadata_t.is_ipv4", 1, false],
+ ["fabric_metadata_t.is_ipv6", 1, false],
+ ["fabric_metadata_t.is_mpls", 1, false],
["fabric_metadata_t.ip_eth_type", 16, false],
["fabric_metadata_t.vlan_id", 12, false],
["fabric_metadata_t.vlan_pri", 3, false],
@@ -23,7 +26,8 @@
["fabric_metadata_t.is_controller_packet_out", 1, false],
["fabric_metadata_t.ip_proto", 8, false],
["fabric_metadata_t.l4_sport", 16, false],
- ["fabric_metadata_t.l4_dport", 16, false]
+ ["fabric_metadata_t.l4_dport", 16, false],
+ ["_padding_0", 5, false]
]
},
{
@@ -347,7 +351,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.eth_type"]
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
},
{
"type" : "field",
@@ -387,7 +391,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"value" : "default",
@@ -421,7 +425,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -436,6 +440,18 @@
"next_state" : "parse_inner_vlan_tag"
},
{
+ "type" : "hexstr",
+ "value" : "0x88a8",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x9100",
+ "mask" : null,
+ "next_state" : "parse_inner_vlan_tag"
+ },
+ {
"value" : "default",
"mask" : null,
"next_state" : null
@@ -467,7 +483,7 @@
"type" : "hexstr",
"value" : "0x0800",
"mask" : null,
- "next_state" : "parse_ipv4"
+ "next_state" : "pre_parse_ipv4"
},
{
"type" : "hexstr",
@@ -505,6 +521,29 @@
"parameters" : [
{
"type" : "field",
+ "value" : ["scalars", "fabric_metadata_t.is_mpls"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ },
+ {
+ "parameters" : [
+ {
+ "type" : "field",
"value" : ["scalars", "fabric_metadata_t.mpls_label"]
},
{
@@ -562,12 +601,49 @@
]
},
{
- "name" : "parse_ipv4",
+ "name" : "pre_parse_ipv4",
"id" : 6,
"parser_ops" : [
{
"parameters" : [
{
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t.is_ipv4"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "op" : "set"
+ }
+ ],
+ "transitions" : [
+ {
+ "value" : "default",
+ "mask" : null,
+ "next_state" : "parse_ipv4"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
+ "name" : "parse_ipv4",
+ "id" : 7,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
"type" : "regular",
"value" : "ipv4"
}
@@ -635,7 +711,7 @@
},
{
"name" : "parse_tcp",
- "id" : 7,
+ "id" : 8,
"parser_ops" : [
{
"parameters" : [
@@ -684,7 +760,7 @@
},
{
"name" : "parse_udp",
- "id" : 8,
+ "id" : 9,
"parser_ops" : [
{
"parameters" : [
@@ -738,7 +814,7 @@
},
{
"name" : "parse_icmp",
- "id" : 9,
+ "id" : 10,
"parser_ops" : [
{
"parameters" : [
@@ -769,7 +845,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/parser.p4",
- "line" : 261,
+ "line" : 276,
"column" : 8,
"source_fragment" : "FabricDeparser"
},
@@ -797,7 +873,7 @@
"binding" : "FabricIngress.filtering.fwd_classifier",
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 80,
+ "line" : 83,
"column" : 50,
"source_fragment" : "fwd_classifier_counter"
}
@@ -869,7 +945,7 @@
"binding" : "FabricIngress.next.xconnect",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 92,
+ "line" : 103,
"column" : 50,
"source_fragment" : "xconnect_counter"
}
@@ -881,7 +957,7 @@
"binding" : "FabricIngress.next.hashed",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 166,
+ "line" : 178,
"column" : 50,
"source_fragment" : "hashed_counter"
}
@@ -893,7 +969,7 @@
"binding" : "FabricIngress.next.multicast",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 210,
+ "line" : 222,
"column" : 50,
"source_fragment" : "multicast_counter"
}
@@ -929,7 +1005,7 @@
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 283,
+ "line" : 309,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -1230,7 +1306,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 83,
+ "line" : 86,
"column" : 8,
"source_fragment" : "fabric_metadata.fwd_type = fwd_type"
}
@@ -1588,6 +1664,25 @@
"column" : 5,
"source_fragment" : "standard_metadata.egress_spec = port_num; ..."
}
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8100"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 107,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
+ }
}
]
},
@@ -1615,7 +1710,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 100,
+ "line" : 112,
"column" : 8,
"source_fragment" : "fabric_metadata.next_id = next_id"
}
@@ -1854,7 +1949,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 213,
+ "line" : 225,
"column" : 8,
"source_fragment" : "standard_metadata.mcast_grp = group_id"
}
@@ -1883,7 +1978,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 214,
+ "line" : 226,
"column" : 8,
"source_fragment" : "fabric_metadata.is_multicast = true"
}
@@ -1980,25 +2075,6 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.eth_type"]
- },
- {
- "type" : "field",
- "value" : ["vlan_tag", "eth_type"]
- }
- ],
- "source_info" : {
- "filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 12,
- "source_fragment" : "fabric_metadata.eth_type = hdr.vlan_tag.eth_type"
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
"value" : ["scalars", "fabric_metadata_t.vlan_id"]
},
{
@@ -2008,7 +2084,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 106,
+ "line" : 110,
"column" : 12,
"source_fragment" : "fabric_metadata.vlan_id = hdr.vlan_tag.vlan_id"
}
@@ -2027,7 +2103,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 107,
+ "line" : 111,
"column" : 12,
"source_fragment" : "fabric_metadata.vlan_pri = hdr.vlan_tag.pri"
}
@@ -2046,7 +2122,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 108,
+ "line" : 112,
"column" : 12,
"source_fragment" : "fabric_metadata.vlan_cfi = hdr.vlan_tag.cfi"
}
@@ -2072,7 +2148,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_ttl = DEFAULT_MPLS_TTL + 1"
}
@@ -2089,6 +2165,110 @@
"parameters" : [
{
"type" : "field",
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x8847"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/../define.p4",
+ "line" : 108,
+ "column" : 31,
+ "source_fragment" : "0x8847; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_3",
+ "id" : 31,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ },
+ {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 20,
+ "source_fragment" : "fabric_metadata.last_eth_type = hdr.inner_vlan_tag.eth_type"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_4",
+ "id" : 32,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ },
+ {
+ "type" : "field",
+ "value" : ["vlan_tag", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 20,
+ "source_fragment" : "fabric_metadata.last_eth_type = hdr.vlan_tag.eth_type"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_5",
+ "id" : 33,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ },
+ {
+ "type" : "field",
+ "value" : ["ethernet", "eth_type"]
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 16,
+ "source_fragment" : "fabric_metadata.last_eth_type = hdr.ethernet.eth_type"
+ }
+ }
+ ]
+ },
+ {
+ "name" : "act_6",
+ "id" : 34,
+ "runtime_data" : [],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
"value" : ["scalars", "tmp"]
},
{
@@ -2138,8 +2318,8 @@
]
},
{
- "name" : "act_3",
- "id" : 31,
+ "name" : "act_7",
+ "id" : 35,
"runtime_data" : [],
"primitives" : [
{
@@ -2197,13 +2377,13 @@
},
{
"name" : "nop",
- "id" : 32,
+ "id" : 36,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 33,
+ "id" : 37,
"runtime_data" : [],
"primitives" : [
{
@@ -2216,7 +2396,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 252,
+ "line" : 264,
"column" : 8,
"source_fragment" : "hdr.mpls.setInvalid()"
}
@@ -2226,7 +2406,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.eth_type"]
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
},
{
"type" : "field",
@@ -2235,16 +2415,16 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 254,
+ "line" : 266,
"column" : 8,
- "source_fragment" : "fabric_metadata.eth_type = fabric_metadata.ip_eth_type"
+ "source_fragment" : "fabric_metadata.last_eth_type = fabric_metadata.ip_eth_type"
}
}
]
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 34,
+ "id" : 38,
"runtime_data" : [],
"primitives" : [
{
@@ -2257,7 +2437,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 259,
+ "line" : 271,
"column" : 8,
"source_fragment" : "hdr.mpls.setValid()"
}
@@ -2276,7 +2456,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 260,
+ "line" : 272,
"column" : 8,
"source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label"
}
@@ -2295,7 +2475,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 261,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.mpls.tc = 3w0"
}
@@ -2314,7 +2494,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 262,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.mpls.bos = 1w1"
}
@@ -2333,7 +2513,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 263,
+ "line" : 275,
"column" : 8,
"source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl"
}
@@ -2343,7 +2523,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.eth_type"]
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
},
{
"type" : "hexstr",
@@ -2361,7 +2541,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 35,
+ "id" : 39,
"runtime_data" : [],
"primitives" : [
{
@@ -2374,7 +2554,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 271,
+ "line" : 283,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setValid()"
}
@@ -2393,7 +2573,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 272,
+ "line" : 284,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi"
}
@@ -2412,7 +2592,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 273,
+ "line" : 285,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri"
}
@@ -2426,14 +2606,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.eth_type"]
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 274,
+ "line" : 286,
"column" : 8,
- "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type"
+ "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type"
}
},
{
@@ -2450,7 +2630,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 275,
+ "line" : 287,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id"
}
@@ -2478,7 +2658,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 36,
+ "id" : 40,
"runtime_data" : [],
"primitives" : [
{
@@ -2490,14 +2670,14 @@
},
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.eth_type"]
+ "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
}
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 286,
+ "line" : 312,
"column" : 8,
- "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type"
+ "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type"
}
},
{
@@ -2510,7 +2690,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 287,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -2518,8 +2698,8 @@
]
},
{
- "name" : "act_4",
- "id" : 37,
+ "name" : "act_8",
+ "id" : 41,
"runtime_data" : [],
"primitives" : [
{
@@ -2535,8 +2715,8 @@
]
},
{
- "name" : "act_5",
- "id" : 38,
+ "name" : "act_9",
+ "id" : 42,
"runtime_data" : [],
"primitives" : [
{
@@ -2586,8 +2766,8 @@
]
},
{
- "name" : "act_6",
- "id" : 39,
+ "name" : "act_10",
+ "id" : 43,
"runtime_data" : [],
"primitives" : [
{
@@ -2600,7 +2780,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2608,8 +2788,8 @@
]
},
{
- "name" : "act_7",
- "id" : 40,
+ "name" : "act_11",
+ "id" : 44,
"runtime_data" : [],
"primitives" : [
{
@@ -2638,8 +2818,8 @@
]
},
{
- "name" : "act_8",
- "id" : 41,
+ "name" : "act_12",
+ "id" : 45,
"runtime_data" : [],
"primitives" : [
{
@@ -2668,8 +2848,8 @@
]
},
{
- "name" : "act_9",
- "id" : 42,
+ "name" : "act_13",
+ "id" : 46,
"runtime_data" : [],
"primitives" : [
{
@@ -2682,7 +2862,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2690,8 +2870,8 @@
]
},
{
- "name" : "act_10",
- "id" : 43,
+ "name" : "act_14",
+ "id" : 47,
"runtime_data" : [],
"primitives" : [
{
@@ -2731,7 +2911,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -2739,8 +2919,8 @@
]
},
{
- "name" : "act_11",
- "id" : 44,
+ "name" : "act_15",
+ "id" : 48,
"runtime_data" : [],
"primitives" : [
{
@@ -2753,7 +2933,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2761,8 +2941,8 @@
]
},
{
- "name" : "act_12",
- "id" : 45,
+ "name" : "act_16",
+ "id" : 49,
"runtime_data" : [],
"primitives" : [
{
@@ -2802,7 +2982,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -2856,9 +3036,9 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 105,
- "column" : 37,
- "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+ "line" : 110,
+ "column" : 36,
+ "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
},
"key" : [],
"match_type" : "exact",
@@ -2885,7 +3065,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 115,
+ "line" : 126,
"column" : 37,
"source_fragment" : "="
},
@@ -2898,9 +3078,9 @@
"direct_meters" : null,
"action_ids" : [29],
"actions" : ["act_1"],
- "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "base_default_next" : "node_8",
"next_tables" : {
- "act_1" : "FabricIngress.filtering.ingress_port_vlan"
+ "act_1" : "node_8"
},
"default_entry" : {
"action_id" : 29,
@@ -2910,11 +3090,127 @@
}
},
{
- "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "name" : "tbl_act_2",
"id" : 3,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 51,
+ "line" : 131,
+ "column" : 42,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [30],
+ "actions" : ["act_2"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_2" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 30,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_3",
+ "id" : 4,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 136,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [31],
+ "actions" : ["act_3"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_3" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 31,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_4",
+ "id" : 5,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 139,
+ "column" : 50,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [32],
+ "actions" : ["act_4"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_4" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 32,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "tbl_act_5",
+ "id" : 6,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 141,
+ "column" : 46,
+ "source_fragment" : "="
+ },
+ "key" : [],
+ "match_type" : "exact",
+ "type" : "simple",
+ "max_size" : 1024,
+ "with_counters" : false,
+ "support_timeout" : false,
+ "direct_meters" : null,
+ "action_ids" : [33],
+ "actions" : ["act_5"],
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+ "next_tables" : {
+ "act_5" : "FabricIngress.filtering.ingress_port_vlan"
+ },
+ "default_entry" : {
+ "action_id" : 33,
+ "action_const" : true,
+ "action_data" : [],
+ "action_entry_const" : true
+ }
+ },
+ {
+ "name" : "FabricIngress.filtering.ingress_port_vlan",
+ "id" : 7,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 53,
"column" : 10,
"source_fragment" : "ingress_port_vlan"
},
@@ -2936,6 +3232,12 @@
"name" : "vlan_id",
"target" : ["vlan_tag", "vlan_id"],
"mask" : null
+ },
+ {
+ "match_type" : "ternary",
+ "name" : "inner_vlan_id",
+ "target" : ["inner_vlan_tag", "vlan_id"],
+ "mask" : null
}
],
"match_type" : "ternary",
@@ -2961,10 +3263,10 @@
},
{
"name" : "FabricIngress.filtering.fwd_classifier",
- "id" : 4,
+ "id" : 8,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 87,
+ "line" : 90,
"column" : 10,
"source_fragment" : "fwd_classifier"
},
@@ -2983,8 +3285,20 @@
},
{
"match_type" : "exact",
- "name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t.eth_type"],
+ "name" : "is_ipv4",
+ "target" : ["scalars", "fabric_metadata_t.is_ipv4"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_ipv6",
+ "target" : ["scalars", "fabric_metadata_t.is_ipv6"],
+ "mask" : null
+ },
+ {
+ "match_type" : "exact",
+ "name" : "is_mpls",
+ "target" : ["scalars", "fabric_metadata_t.is_mpls"],
"mask" : null
}
],
@@ -2996,9 +3310,9 @@
"direct_meters" : null,
"action_ids" : [10],
"actions" : ["FabricIngress.filtering.set_forwarding_type"],
- "base_default_next" : "node_10",
+ "base_default_next" : "node_17",
"next_tables" : {
- "FabricIngress.filtering.set_forwarding_type" : "node_10"
+ "FabricIngress.filtering.set_forwarding_type" : "node_17"
},
"default_entry" : {
"action_id" : 10,
@@ -3009,7 +3323,7 @@
},
{
"name" : "FabricIngress.forwarding.bridging",
- "id" : 5,
+ "id" : 9,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 46,
@@ -3052,7 +3366,7 @@
},
{
"name" : "FabricIngress.forwarding.mpls",
- "id" : 6,
+ "id" : 10,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 71,
@@ -3089,7 +3403,7 @@
},
{
"name" : "FabricIngress.forwarding.routing_v4",
- "id" : 7,
+ "id" : 11,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 101,
@@ -3127,7 +3441,7 @@
},
{
"name" : "FabricIngress.acl.acl",
- "id" : 8,
+ "id" : 12,
"source_info" : {
"filename" : "include/control/acl.p4",
"line" : 60,
@@ -3180,7 +3494,7 @@
{
"match_type" : "ternary",
"name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t.eth_type"],
+ "target" : ["scalars", "fabric_metadata_t.last_eth_type"],
"mask" : null
},
{
@@ -3216,13 +3530,13 @@
"direct_meters" : null,
"action_ids" : [15, 16, 17, 18, 19],
"actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
- "base_default_next" : "node_18",
+ "base_default_next" : "node_25",
"next_tables" : {
- "FabricIngress.acl.set_next_id_acl" : "node_18",
- "FabricIngress.acl.punt_to_cpu" : "node_18",
- "FabricIngress.acl.set_clone_session_id" : "node_18",
- "FabricIngress.acl.drop" : "node_18",
- "FabricIngress.acl.nop_acl" : "node_18"
+ "FabricIngress.acl.set_next_id_acl" : "node_25",
+ "FabricIngress.acl.punt_to_cpu" : "node_25",
+ "FabricIngress.acl.set_clone_session_id" : "node_25",
+ "FabricIngress.acl.drop" : "node_25",
+ "FabricIngress.acl.nop_acl" : "node_25"
},
"default_entry" : {
"action_id" : 19,
@@ -3233,10 +3547,10 @@
},
{
"name" : "FabricIngress.next.xconnect",
- "id" : 9,
+ "id" : 13,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 104,
+ "line" : 116,
"column" : 10,
"source_fragment" : "xconnect"
},
@@ -3277,10 +3591,10 @@
},
{
"name" : "FabricIngress.next.hashed",
- "id" : 10,
+ "id" : 14,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 184,
+ "line" : 196,
"column" : 10,
"source_fragment" : "hashed"
},
@@ -3311,10 +3625,10 @@
},
{
"name" : "FabricIngress.next.multicast",
- "id" : 11,
+ "id" : 15,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 218,
+ "line" : 230,
"column" : 10,
"source_fragment" : "multicast"
},
@@ -3348,10 +3662,10 @@
},
{
"name" : "FabricIngress.next.next_vlan",
- "id" : 12,
+ "id" : 16,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 74,
+ "line" : 82,
"column" : 10,
"source_fragment" : "next_vlan"
},
@@ -3371,10 +3685,10 @@
"direct_meters" : null,
"action_ids" : [20, 3],
"actions" : ["FabricIngress.next.set_vlan", "nop"],
- "base_default_next" : "node_23",
+ "base_default_next" : "node_30",
"next_tables" : {
- "FabricIngress.next.set_vlan" : "node_23",
- "nop" : "node_23"
+ "FabricIngress.next.set_vlan" : "node_30",
+ "nop" : "node_30"
},
"default_entry" : {
"action_id" : 3,
@@ -3384,8 +3698,8 @@
}
},
{
- "name" : "tbl_act_2",
- "id" : 13,
+ "name" : "tbl_act_6",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 31,
@@ -3399,22 +3713,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [30],
- "actions" : ["act_2"],
- "base_default_next" : "node_25",
+ "action_ids" : [34],
+ "actions" : ["act_6"],
+ "base_default_next" : "node_32",
"next_tables" : {
- "act_2" : "node_25"
+ "act_6" : "node_32"
},
"default_entry" : {
- "action_id" : 30,
+ "action_id" : 34,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_3",
- "id" : 14,
+ "name" : "tbl_act_7",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 34,
@@ -3428,14 +3742,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [31],
- "actions" : ["act_3"],
+ "action_ids" : [35],
+ "actions" : ["act_7"],
"base_default_next" : null,
"next_tables" : {
- "act_3" : null
+ "act_7" : null
},
"default_entry" : {
- "action_id" : 31,
+ "action_id" : 35,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -3448,7 +3762,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 165,
+ "line" : 177,
"column" : 57,
"source_fragment" : "hashed_selector"
},
@@ -3509,7 +3823,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 104,
+ "line" : 109,
"column" : 12,
"source_fragment" : "hdr.vlan_tag.isValid()"
},
@@ -3532,7 +3846,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 121,
"column" : 12,
"source_fragment" : "!hdr.mpls.isValid()"
},
@@ -3555,14 +3869,83 @@
}
},
"true_next" : "tbl_act_1",
- "false_next" : "FabricIngress.filtering.ingress_port_vlan"
+ "false_next" : "node_8"
+ },
+ {
+ "name" : "node_8",
+ "id" : 3,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 130,
+ "column" : 12,
+ "source_fragment" : "hdr.mpls.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["mpls", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_2",
+ "false_next" : "node_10"
},
{
"name" : "node_10",
- "id" : 3,
+ "id" : 4,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 133,
+ "column" : 16,
+ "source_fragment" : "hdr.vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "node_11",
+ "false_next" : "tbl_act_5"
+ },
+ {
+ "name" : "node_11",
+ "id" : 5,
+ "source_info" : {
+ "filename" : "include/control/filtering.p4",
+ "line" : 135,
+ "column" : 19,
+ "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+ },
+ "expression" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "d2b",
+ "left" : null,
+ "right" : {
+ "type" : "field",
+ "value" : ["inner_vlan_tag", "$valid$"]
+ }
+ }
+ },
+ "true_next" : "tbl_act_3",
+ "false_next" : "tbl_act_4"
+ },
+ {
+ "name" : "node_17",
+ "id" : 6,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 74,
+ "line" : 71,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_forwarding == false"
},
@@ -3587,12 +3970,12 @@
}
}
},
- "true_next" : "node_11",
+ "true_next" : "node_18",
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_11",
- "id" : 4,
+ "name" : "node_18",
+ "id" : 7,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 141,
@@ -3614,11 +3997,11 @@
}
},
"true_next" : "FabricIngress.forwarding.bridging",
- "false_next" : "node_13"
+ "false_next" : "node_20"
},
{
- "name" : "node_13",
- "id" : 5,
+ "name" : "node_20",
+ "id" : 8,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 142,
@@ -3640,11 +4023,11 @@
}
},
"true_next" : "FabricIngress.forwarding.mpls",
- "false_next" : "node_15"
+ "false_next" : "node_22"
},
{
- "name" : "node_15",
- "id" : 6,
+ "name" : "node_22",
+ "id" : 9,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 143,
@@ -3669,11 +4052,11 @@
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_18",
- "id" : 7,
+ "name" : "node_25",
+ "id" : 10,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 78,
+ "line" : 75,
"column" : 12,
"source_fragment" : "fabric_metadata.skip_next == false"
},
@@ -3702,8 +4085,8 @@
"true_next" : "FabricIngress.next.xconnect"
},
{
- "name" : "node_23",
- "id" : 8,
+ "name" : "node_30",
+ "id" : 11,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 30,
@@ -3724,12 +4107,12 @@
}
}
},
- "true_next" : "tbl_act_2",
- "false_next" : "node_25"
+ "true_next" : "tbl_act_6",
+ "false_next" : "node_32"
},
{
- "name" : "node_25",
- "id" : 9,
+ "name" : "node_32",
+ "id" : 12,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 33,
@@ -3751,7 +4134,7 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_3"
+ "true_next" : "tbl_act_7"
}
]
},
@@ -3760,15 +4143,15 @@
"id" : 1,
"source_info" : {
"filename" : "fabric.p4",
- "line" : 92,
+ "line" : 93,
"column" : 8,
"source_fragment" : "FabricEgress"
},
- "init_table" : "node_29",
+ "init_table" : "node_36",
"tables" : [
{
- "name" : "tbl_act_4",
- "id" : 15,
+ "name" : "tbl_act_8",
+ "id" : 19,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 41,
@@ -3782,22 +4165,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [37],
- "actions" : ["act_4"],
- "base_default_next" : "node_31",
+ "action_ids" : [41],
+ "actions" : ["act_8"],
+ "base_default_next" : "node_38",
"next_tables" : {
- "act_4" : "node_31"
+ "act_8" : "node_38"
},
"default_entry" : {
- "action_id" : 37,
+ "action_id" : 41,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_5",
- "id" : 16,
+ "name" : "tbl_act_9",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 44,
@@ -3811,25 +4194,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [38],
- "actions" : ["act_5"],
- "base_default_next" : "node_33",
+ "action_ids" : [42],
+ "actions" : ["act_9"],
+ "base_default_next" : "node_40",
"next_tables" : {
- "act_5" : "node_33"
+ "act_9" : "node_40"
},
"default_entry" : {
- "action_id" : 38,
+ "action_id" : 42,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_6",
- "id" : 17,
+ "name" : "tbl_act_10",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 308,
+ "line" : 334,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -3840,14 +4223,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [39],
- "actions" : ["act_6"],
- "base_default_next" : "node_35",
+ "action_ids" : [43],
+ "actions" : ["act_10"],
+ "base_default_next" : "node_42",
"next_tables" : {
- "act_6" : "node_35"
+ "act_10" : "node_42"
},
"default_entry" : {
- "action_id" : 39,
+ "action_id" : 43,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -3855,10 +4238,10 @@
},
{
"name" : "tbl_egress_next_pop_mpls_if_present",
- "id" : 18,
+ "id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -3869,14 +4252,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [33],
+ "action_ids" : [37],
"actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 33,
+ "action_id" : 37,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -3884,10 +4267,10 @@
},
{
"name" : "tbl_egress_next_set_mpls",
- "id" : 19,
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 314,
+ "line" : 340,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -3898,14 +4281,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [34],
+ "action_ids" : [38],
"actions" : ["FabricEgress.egress_next.set_mpls"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 34,
+ "action_id" : 38,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -3913,10 +4296,10 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan",
- "id" : 20,
+ "id" : 24,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 291,
+ "line" : 317,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -3940,23 +4323,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [36, 32],
+ "action_ids" : [40, 36],
"actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_7",
- "__MISS__" : "tbl_act_8"
+ "__HIT__" : "tbl_act_11",
+ "__MISS__" : "tbl_act_12"
},
"default_entry" : {
- "action_id" : 32,
+ "action_id" : 36,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_7",
- "id" : 21,
+ "name" : "tbl_act_11",
+ "id" : 25,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -3964,22 +4347,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [40],
- "actions" : ["act_7"],
- "base_default_next" : "node_42",
+ "action_ids" : [44],
+ "actions" : ["act_11"],
+ "base_default_next" : "node_49",
"next_tables" : {
- "act_7" : "node_42"
+ "act_11" : "node_49"
},
"default_entry" : {
- "action_id" : 40,
+ "action_id" : 44,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_8",
- "id" : 22,
+ "name" : "tbl_act_12",
+ "id" : 26,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -3987,14 +4370,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41],
- "actions" : ["act_8"],
- "base_default_next" : "node_42",
+ "action_ids" : [45],
+ "actions" : ["act_12"],
+ "base_default_next" : "node_49",
"next_tables" : {
- "act_8" : "node_42"
+ "act_12" : "node_49"
},
"default_entry" : {
- "action_id" : 41,
+ "action_id" : 45,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4002,11 +4385,11 @@
},
{
"name" : "tbl_egress_next_push_vlan",
- "id" : 23,
+ "id" : 27,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 320,
- "column" : 16,
+ "line" : 357,
+ "column" : 20,
"source_fragment" : "push_vlan()"
},
"key" : [],
@@ -4016,25 +4399,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [35],
+ "action_ids" : [39],
"actions" : ["FabricEgress.egress_next.push_vlan"],
- "base_default_next" : "node_45",
+ "base_default_next" : "node_52",
"next_tables" : {
- "FabricEgress.egress_next.push_vlan" : "node_45"
+ "FabricEgress.egress_next.push_vlan" : "node_52"
},
"default_entry" : {
- "action_id" : 35,
+ "action_id" : 39,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_9",
- "id" : 24,
+ "name" : "tbl_act_13",
+ "id" : 28,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 326,
+ "line" : 366,
"column" : 25,
"source_fragment" : "="
},
@@ -4045,25 +4428,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [43],
- "actions" : ["act_10"],
- "base_default_next" : "node_47",
+ "action_ids" : [47],
+ "actions" : ["act_14"],
+ "base_default_next" : "node_54",
"next_tables" : {
- "act_10" : "node_47"
+ "act_14" : "node_54"
},
"default_entry" : {
- "action_id" : 43,
+ "action_id" : 47,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_10",
- "id" : 25,
+ "name" : "tbl_act_14",
+ "id" : 29,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4074,25 +4457,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [42],
- "actions" : ["act_9"],
+ "action_ids" : [46],
+ "actions" : ["act_13"],
"base_default_next" : null,
"next_tables" : {
- "act_9" : null
+ "act_13" : null
},
"default_entry" : {
- "action_id" : 42,
+ "action_id" : 46,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_11",
- "id" : 26,
+ "name" : "tbl_act_15",
+ "id" : 30,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 330,
+ "line" : 370,
"column" : 29,
"source_fragment" : "="
},
@@ -4103,25 +4486,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [45],
- "actions" : ["act_12"],
- "base_default_next" : "node_51",
+ "action_ids" : [49],
+ "actions" : ["act_16"],
+ "base_default_next" : "node_58",
"next_tables" : {
- "act_12" : "node_51"
+ "act_16" : "node_58"
},
"default_entry" : {
- "action_id" : 45,
+ "action_id" : 49,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_12",
- "id" : 27,
+ "name" : "tbl_act_16",
+ "id" : 31,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4132,14 +4515,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [44],
- "actions" : ["act_11"],
+ "action_ids" : [48],
+ "actions" : ["act_15"],
"base_default_next" : null,
"next_tables" : {
- "act_11" : null
+ "act_15" : null
},
"default_entry" : {
- "action_id" : 44,
+ "action_id" : 48,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4149,8 +4532,8 @@
"action_profiles" : [],
"conditionals" : [
{
- "name" : "node_29",
- "id" : 10,
+ "name" : "node_36",
+ "id" : 13,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 39,
@@ -4178,12 +4561,12 @@
}
}
},
- "true_next" : "tbl_act_4",
- "false_next" : "node_31"
+ "true_next" : "tbl_act_8",
+ "false_next" : "node_38"
},
{
- "name" : "node_31",
- "id" : 11,
+ "name" : "node_38",
+ "id" : 14,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 43,
@@ -4204,15 +4587,15 @@
}
}
},
- "true_next" : "tbl_act_5",
- "false_next" : "node_33"
+ "true_next" : "tbl_act_9",
+ "false_next" : "node_40"
},
{
- "name" : "node_33",
- "id" : 12,
+ "name" : "node_40",
+ "id" : 15,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 306,
+ "line" : 332,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -4257,15 +4640,15 @@
}
}
},
- "true_next" : "tbl_act_6",
- "false_next" : "node_35"
+ "true_next" : "tbl_act_10",
+ "false_next" : "node_42"
},
{
- "name" : "node_35",
- "id" : 13,
+ "name" : "node_42",
+ "id" : 16,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 311,
+ "line" : 337,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -4283,15 +4666,15 @@
}
}
},
- "true_next" : "node_36",
+ "true_next" : "node_43",
"false_next" : "tbl_egress_next_set_mpls"
},
{
- "name" : "node_36",
- "id" : 14,
+ "name" : "node_43",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 338,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -4310,12 +4693,12 @@
"false_next" : "FabricEgress.egress_next.egress_vlan"
},
{
- "name" : "node_42",
- "id" : 15,
+ "name" : "node_49",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 317,
- "column" : 12,
+ "line" : 354,
+ "column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
"expression" : {
@@ -4336,16 +4719,16 @@
}
}
},
- "true_next" : "node_43",
- "false_next" : "node_45"
+ "true_next" : "node_50",
+ "false_next" : "node_52"
},
{
- "name" : "node_43",
- "id" : 16,
+ "name" : "node_50",
+ "id" : 19,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 319,
- "column" : 16,
+ "line" : 356,
+ "column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
"expression" : {
@@ -4363,14 +4746,14 @@
}
},
"true_next" : "tbl_egress_next_push_vlan",
- "false_next" : "node_45"
+ "false_next" : "node_52"
},
{
- "name" : "node_45",
- "id" : 17,
+ "name" : "node_52",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 325,
+ "line" : 365,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -4385,15 +4768,15 @@
}
}
},
- "true_next" : "tbl_act_9",
- "false_next" : "node_49"
+ "true_next" : "tbl_act_13",
+ "false_next" : "node_56"
},
{
- "name" : "node_47",
- "id" : 18,
+ "name" : "node_54",
+ "id" : 21,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 327,
+ "line" : 367,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -4412,14 +4795,14 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_10"
+ "true_next" : "tbl_act_14"
},
{
- "name" : "node_49",
- "id" : 19,
+ "name" : "node_56",
+ "id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 329,
+ "line" : 369,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -4435,14 +4818,14 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_11"
+ "true_next" : "tbl_act_15"
},
{
- "name" : "node_51",
- "id" : 20,
+ "name" : "node_58",
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 331,
+ "line" : 371,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},
@@ -4461,7 +4844,7 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_12"
+ "true_next" : "tbl_act_16"
}
]
}
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/p4info.txt
index fdff523..8d074ae 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/p4info.txt
@@ -25,6 +25,12 @@
bitwidth: 12
match_type: TERNARY
}
+ match_fields {
+ id: 4
+ name: "inner_vlan_id"
+ bitwidth: 12
+ match_type: TERNARY
+ }
action_refs {
id: 16836487
}
@@ -58,8 +64,20 @@
}
match_fields {
id: 3
- name: "eth_type"
- bitwidth: 16
+ name: "is_ipv4"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 4
+ name: "is_ipv6"
+ bitwidth: 1
+ match_type: EXACT
+ }
+ match_fields {
+ id: 5
+ name: "is_mpls"
+ bitwidth: 1
match_type: EXACT
}
action_refs {
diff --git a/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricFilteringPipelinerTest.java b/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricFilteringPipelinerTest.java
index 3bdab99..dbb2bd4 100644
--- a/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricFilteringPipelinerTest.java
+++ b/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricFilteringPipelinerTest.java
@@ -31,6 +31,7 @@
import org.onosproject.net.flow.TrafficSelector;
import org.onosproject.net.flow.TrafficTreatment;
import org.onosproject.net.flow.criteria.Criteria;
+import org.onosproject.net.flow.criteria.PiCriterion;
import org.onosproject.net.flowobjective.DefaultFilteringObjective;
import org.onosproject.net.flowobjective.FilteringObjective;
import org.onosproject.net.flowobjective.ObjectiveError;
@@ -45,6 +46,8 @@
*/
public class FabricFilteringPipelinerTest extends FabricPipelinerTest {
+ public static final byte[] ONE = {1};
+ public static final byte[] ZERO = {0};
private FilteringObjectiveTranslator translator;
@Before
@@ -67,6 +70,7 @@
FlowRule inportFlowRuleExpected =
buildExpectedVlanInPortRule(PORT_1,
VlanId.NONE,
+ VlanId.NONE,
VLAN_100,
FabricConstants.FABRIC_INGRESS_FILTERING_INGRESS_PORT_VLAN);
@@ -128,6 +132,7 @@
FlowRule inportFlowRuleExpected =
buildExpectedVlanInPortRule(PORT_1,
VlanId.NONE,
+ VlanId.NONE,
VLAN_100,
FabricConstants.FABRIC_INGRESS_FILTERING_INGRESS_PORT_VLAN);
@@ -173,6 +178,7 @@
FlowRule inportFlowRuleExpected =
buildExpectedVlanInPortRule(PORT_1,
VlanId.NONE,
+ VlanId.NONE,
VLAN_100,
FabricConstants.FABRIC_INGRESS_FILTERING_INGRESS_PORT_VLAN);
@@ -204,6 +210,7 @@
FlowRule flowRuleExpected =
buildExpectedVlanInPortRule(PORT_1,
VlanId.NONE,
+ VlanId.NONE,
VLAN_100,
FabricConstants.FABRIC_INGRESS_FILTERING_INGRESS_PORT_VLAN);
@@ -234,7 +241,7 @@
TrafficSelector.Builder selector = DefaultTrafficSelector.builder()
.matchInPort(PORT_1)
- .matchPi(VLAN_INVALID);
+ .matchPi(buildPiCriterionVlan(null, null));
PiAction piAction = PiAction.builder()
.withId(FabricConstants.FABRIC_INGRESS_FILTERING_DENY)
.build();
@@ -287,6 +294,48 @@
assertError(ObjectiveError.BADPARAMS, result2);
}
+ /**
+ * Test the mapping between EtherType and conditions.
+ */
+ @Test
+ public void testMappingEthType() {
+ PiCriterion expectedMappingDefault = PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_MPLS, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV4, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ZERO)
+ .build();
+ PiCriterion expectedMappingIpv6 = PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_MPLS, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV4, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ONE)
+ .build();
+ PiCriterion expectedMappingIpv4 = PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_MPLS, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV4, ONE)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ZERO)
+ .build();
+ PiCriterion expectedMappingMpls = PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_IS_MPLS, ONE)
+ .matchExact(FabricConstants.HDR_IS_IPV4, ZERO)
+ .matchExact(FabricConstants.HDR_IS_IPV6, ZERO)
+ .build();
+
+
+ PiCriterion actualMappingIpv6 = FilteringObjectiveTranslator.mapEthTypeFwdClassifier(Ethernet.TYPE_IPV6);
+ assertEquals(expectedMappingIpv6, actualMappingIpv6);
+
+ PiCriterion actualMappingIpv4 = FilteringObjectiveTranslator.mapEthTypeFwdClassifier(Ethernet.TYPE_IPV4);
+ assertEquals(expectedMappingIpv4, actualMappingIpv4);
+
+ PiCriterion actualMappingMpls = FilteringObjectiveTranslator.mapEthTypeFwdClassifier(Ethernet.MPLS_UNICAST);
+ assertEquals(expectedMappingMpls, actualMappingMpls);
+
+ PiCriterion actualMapping = FilteringObjectiveTranslator.mapEthTypeFwdClassifier(Ethernet.TYPE_ARP);
+ assertEquals(expectedMappingDefault, actualMapping);
+
+
+ }
+
/* Utilities */
private void assertError(ObjectiveError error, ObjectiveTranslation actualTranslation) {
@@ -314,22 +363,23 @@
return builder.add();
}
- private FlowRule buildExpectedVlanInPortRule(PortNumber inPort, VlanId vlanId,
+ private FlowRule buildExpectedVlanInPortRule(PortNumber inPort,
+ VlanId vlanId,
+ VlanId innerVlanId,
VlanId internalVlan,
TableId tableId) {
TrafficSelector.Builder selector = DefaultTrafficSelector.builder()
.matchInPort(inPort);
PiAction piAction;
- if (vlanId == null || vlanId.equals(VlanId.NONE)) {
- selector.matchPi(VLAN_INVALID);
+ selector.matchPi(buildPiCriterionVlan(vlanId, innerVlanId));
+ if (!vlanValid(vlanId)) {
piAction = PiAction.builder()
.withId(FabricConstants.FABRIC_INGRESS_FILTERING_PERMIT_WITH_INTERNAL_VLAN)
.withParameter(new PiActionParam(
FabricConstants.VLAN_ID, internalVlan.toShort()))
.build();
} else {
- selector.matchPi(VLAN_VALID);
selector.matchVlanId(vlanId);
piAction = PiAction.builder()
.withId(FabricConstants.FABRIC_INGRESS_FILTERING_PERMIT)
@@ -348,6 +398,18 @@
.build();
}
+ private boolean vlanValid(VlanId vlanId) {
+ return (vlanId != null && !vlanId.equals(VlanId.NONE));
+ }
+
+ private PiCriterion buildPiCriterionVlan(VlanId vlanId,
+ VlanId innerVlanId) {
+ PiCriterion.Builder piCriterionBuilder = PiCriterion.builder()
+ .matchExact(FabricConstants.HDR_VLAN_IS_VALID,
+ vlanValid(vlanId) ? ONE : ZERO);
+ return piCriterionBuilder.build();
+ }
+
private FlowRule buildExpectedFwdClassifierRule(PortNumber inPort,
MacAddress dstMac,
MacAddress dstMacMask,
@@ -355,7 +417,7 @@
byte fwdClass) {
TrafficSelector.Builder sbuilder = DefaultTrafficSelector.builder()
.matchInPort(inPort)
- .matchEthType(ethType);
+ .matchPi(FilteringObjectiveTranslator.mapEthTypeFwdClassifier(ethType));
if (dstMacMask != null) {
sbuilder.matchEthDstMasked(dstMac, dstMacMask);
} else {
diff --git a/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricPipelinerTest.java b/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricPipelinerTest.java
index 0b8a71c..619a0b7 100644
--- a/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricPipelinerTest.java
+++ b/pipelines/fabric/src/test/java/org/onosproject/pipelines/fabric/pipeliner/FabricPipelinerTest.java
@@ -27,9 +27,7 @@
import org.onosproject.net.PortNumber;
import org.onosproject.net.flow.DefaultTrafficSelector;
import org.onosproject.net.flow.TrafficSelector;
-import org.onosproject.net.flow.criteria.PiCriterion;
import org.onosproject.pipelines.fabric.FabricCapabilities;
-import org.onosproject.pipelines.fabric.FabricConstants;
import static org.easymock.EasyMock.createNiceMock;
import static org.easymock.EasyMock.expect;
@@ -54,12 +52,6 @@
static final TrafficSelector VLAN_META = DefaultTrafficSelector.builder()
.matchVlanId(VLAN_100)
.build();
- static final PiCriterion VLAN_VALID = PiCriterion.builder()
- .matchExact(FabricConstants.HDR_VLAN_IS_VALID, new byte[]{1})
- .build();
- static final PiCriterion VLAN_INVALID = PiCriterion.builder()
- .matchExact(FabricConstants.HDR_VLAN_IS_VALID, new byte[]{0})
- .build();
FabricCapabilities capabilitiesHashed;
FabricCapabilities capabilitiesSimple;