eth_type moved outside ethernet header in fabric.p4
Change-Id: I3ae0813c5e8aba48767d5bb235fbbcfb75954010
(cherry picked from commit 693d76f189c59579837b559975c0ba767335dfc0)
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
index a51ce3a..bdab9d8 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
@@ -4,14 +4,12 @@
"name" : "scalars_0",
"id" : 0,
"fields" : [
- ["tmp_0", 4, false],
+ ["tmp_0", 16, false],
+ ["tmp_1", 16, false],
+ ["tmp_2", 4, false],
["tmp", 32, false],
- ["tmp_1", 32, false],
+ ["tmp_3", 32, false],
["egress_next_tmp", 1, 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],
@@ -26,8 +24,7 @@
["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],
- ["_padding_0", 5, false]
+ ["fabric_metadata_t.l4_dport", 16, false]
]
},
{
@@ -64,23 +61,29 @@
"id" : 2,
"fields" : [
["dst_addr", 48, false],
- ["src_addr", 48, false],
- ["eth_type", 16, false]
+ ["src_addr", 48, false]
]
},
{
"name" : "vlan_tag_t",
"id" : 3,
"fields" : [
+ ["eth_type", 16, false],
["pri", 3, false],
["cfi", 1, false],
- ["vlan_id", 12, false],
- ["eth_type", 16, false]
+ ["vlan_id", 12, false]
+ ]
+ },
+ {
+ "name" : "eth_type_t",
+ "id" : 4,
+ "fields" : [
+ ["value", 16, false]
]
},
{
"name" : "mpls_t",
- "id" : 4,
+ "id" : 5,
"fields" : [
["label", 20, false],
["tc", 3, false],
@@ -90,7 +93,7 @@
},
{
"name" : "ipv4_t",
- "id" : 5,
+ "id" : 6,
"fields" : [
["version", 4, false],
["ihl", 4, false],
@@ -109,7 +112,7 @@
},
{
"name" : "tcp_t",
- "id" : 6,
+ "id" : 7,
"fields" : [
["sport", 16, false],
["dport", 16, false],
@@ -126,7 +129,7 @@
},
{
"name" : "udp_t",
- "id" : 7,
+ "id" : 8,
"fields" : [
["sport", 16, false],
["dport", 16, false],
@@ -136,7 +139,7 @@
},
{
"name" : "icmp_t",
- "id" : 8,
+ "id" : 9,
"fields" : [
["icmp_type", 8, false],
["icmp_code", 8, false],
@@ -148,7 +151,7 @@
},
{
"name" : "packet_out_header_t",
- "id" : 9,
+ "id" : 10,
"fields" : [
["egress_port", 9, false],
["_pad", 7, false]
@@ -156,7 +159,7 @@
},
{
"name" : "packet_in_header_t",
- "id" : 10,
+ "id" : 11,
"fields" : [
["ingress_port", 9, false],
["_pad", 7, false]
@@ -200,50 +203,57 @@
"pi_omit" : true
},
{
- "name" : "mpls",
+ "name" : "eth_type",
"id" : 5,
+ "header_type" : "eth_type_t",
+ "metadata" : false,
+ "pi_omit" : true
+ },
+ {
+ "name" : "mpls",
+ "id" : 6,
"header_type" : "mpls_t",
"metadata" : false,
"pi_omit" : true
},
{
"name" : "ipv4",
- "id" : 6,
+ "id" : 7,
"header_type" : "ipv4_t",
"metadata" : false,
"pi_omit" : true
},
{
"name" : "tcp",
- "id" : 7,
+ "id" : 8,
"header_type" : "tcp_t",
"metadata" : false,
"pi_omit" : true
},
{
"name" : "udp",
- "id" : 8,
+ "id" : 9,
"header_type" : "udp_t",
"metadata" : false,
"pi_omit" : true
},
{
"name" : "icmp",
- "id" : 9,
+ "id" : 10,
"header_type" : "icmp_t",
"metadata" : false,
"pi_omit" : true
},
{
"name" : "packet_out",
- "id" : 10,
+ "id" : 11,
"header_type" : "packet_out_header_t",
"metadata" : false,
"pi_omit" : true
},
{
"name" : "packet_in",
- "id" : 11,
+ "id" : 12,
"header_type" : "packet_in_header_t",
"metadata" : false,
"pi_omit" : true
@@ -351,11 +361,11 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ "value" : ["scalars", "fabric_metadata_t.vlan_id"]
},
{
- "type" : "field",
- "value" : ["ethernet", "eth_type"]
+ "type" : "hexstr",
+ "value" : "0x0ffe"
}
],
"op" : "set"
@@ -364,11 +374,11 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.vlan_id"]
+ "value" : ["scalars", "tmp_0"]
},
{
- "type" : "hexstr",
- "value" : "0x0ffe"
+ "type" : "lookahead",
+ "value" : [0, 16]
}
],
"op" : "set"
@@ -394,27 +404,15 @@
"next_state" : "parse_vlan_tag"
},
{
- "type" : "hexstr",
- "value" : "0x8847",
- "mask" : null,
- "next_state" : "parse_mpls"
- },
- {
- "type" : "hexstr",
- "value" : "0x0800",
- "mask" : null,
- "next_state" : "pre_parse_ipv4"
- },
- {
"value" : "default",
"mask" : null,
- "next_state" : null
+ "next_state" : "parse_eth_type"
}
],
"transition_key" : [
{
"type" : "field",
- "value" : ["ethernet", "eth_type"]
+ "value" : ["scalars", "tmp_0"]
}
]
},
@@ -430,23 +428,24 @@
}
],
"op" : "extract"
+ },
+ {
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "tmp_1"]
+ },
+ {
+ "type" : "lookahead",
+ "value" : [0, 16]
+ }
+ ],
+ "op" : "set"
}
],
"transitions" : [
{
"type" : "hexstr",
- "value" : "0x0800",
- "mask" : null,
- "next_state" : "pre_parse_ipv4"
- },
- {
- "type" : "hexstr",
- "value" : "0x8847",
- "mask" : null,
- "next_state" : "parse_mpls"
- },
- {
- "type" : "hexstr",
"value" : "0x8100",
"mask" : null,
"next_state" : "parse_inner_vlan_tag"
@@ -454,13 +453,13 @@
{
"value" : "default",
"mask" : null,
- "next_state" : null
+ "next_state" : "parse_eth_type"
}
],
"transition_key" : [
{
"type" : "field",
- "value" : ["vlan_tag", "eth_type"]
+ "value" : ["scalars", "tmp_1"]
}
]
},
@@ -480,11 +479,28 @@
],
"transitions" : [
{
- "type" : "hexstr",
- "value" : "0x0800",
+ "value" : "default",
"mask" : null,
- "next_state" : "pre_parse_ipv4"
- },
+ "next_state" : "parse_eth_type"
+ }
+ ],
+ "transition_key" : []
+ },
+ {
+ "name" : "parse_eth_type",
+ "id" : 5,
+ "parser_ops" : [
+ {
+ "parameters" : [
+ {
+ "type" : "regular",
+ "value" : "eth_type"
+ }
+ ],
+ "op" : "extract"
+ }
+ ],
+ "transitions" : [
{
"type" : "hexstr",
"value" : "0x8847",
@@ -492,6 +508,12 @@
"next_state" : "parse_mpls"
},
{
+ "type" : "hexstr",
+ "value" : "0x0800",
+ "mask" : null,
+ "next_state" : "parse_ipv4"
+ },
+ {
"value" : "default",
"mask" : null,
"next_state" : null
@@ -500,13 +522,13 @@
"transition_key" : [
{
"type" : "field",
- "value" : ["inner_vlan_tag", "eth_type"]
+ "value" : ["eth_type", "value"]
}
]
},
{
"name" : "parse_mpls",
- "id" : 5,
+ "id" : 6,
"parser_ops" : [
{
"parameters" : [
@@ -521,29 +543,6 @@
"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"]
},
{
@@ -570,7 +569,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "tmp_0"]
+ "value" : ["scalars", "tmp_2"]
},
{
"type" : "lookahead",
@@ -596,48 +595,11 @@
"transition_key" : [
{
"type" : "field",
- "value" : ["scalars", "tmp_0"]
+ "value" : ["scalars", "tmp_2"]
}
]
},
{
- "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" : [
@@ -845,11 +807,11 @@
"id" : 0,
"source_info" : {
"filename" : "include/parser.p4",
- "line" : 276,
+ "line" : 259,
"column" : 8,
"source_fragment" : "FabricDeparser"
},
- "order" : ["packet_in", "ethernet", "vlan_tag", "inner_vlan_tag", "mpls", "ipv4", "tcp", "udp", "icmp"]
+ "order" : ["packet_in", "ethernet", "vlan_tag", "inner_vlan_tag", "eth_type", "mpls", "ipv4", "tcp", "udp", "icmp"]
}
],
"meter_arrays" : [],
@@ -903,20 +865,8 @@
}
},
{
- "name" : "FabricIngress.forwarding.routing_v4_counter",
- "id" : 4,
- "is_direct" : true,
- "binding" : "FabricIngress.forwarding.routing_v4",
- "source_info" : {
- "filename" : "include/control/forwarding.p4",
- "line" : 87,
- "column" : 50,
- "source_fragment" : "routing_v4_counter"
- }
- },
- {
"name" : "FabricIngress.acl.acl_counter",
- "id" : 5,
+ "id" : 4,
"is_direct" : true,
"binding" : "FabricIngress.acl.acl",
"source_info" : {
@@ -928,7 +878,7 @@
},
{
"name" : "FabricIngress.next.next_vlan_counter",
- "id" : 6,
+ "id" : 5,
"is_direct" : true,
"binding" : "FabricIngress.next.next_vlan",
"source_info" : {
@@ -940,7 +890,7 @@
},
{
"name" : "FabricIngress.next.xconnect_counter",
- "id" : 7,
+ "id" : 6,
"is_direct" : true,
"binding" : "FabricIngress.next.xconnect",
"source_info" : {
@@ -952,31 +902,31 @@
},
{
"name" : "FabricIngress.next.hashed_counter",
- "id" : 8,
+ "id" : 7,
"is_direct" : true,
"binding" : "FabricIngress.next.hashed",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 178,
+ "line" : 180,
"column" : 50,
"source_fragment" : "hashed_counter"
}
},
{
"name" : "FabricIngress.next.multicast_counter",
- "id" : 9,
+ "id" : 8,
"is_direct" : true,
"binding" : "FabricIngress.next.multicast",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 222,
+ "line" : 224,
"column" : 50,
"source_fragment" : "multicast_counter"
}
},
{
"name" : "FabricIngress.port_counters_control.egress_port_counter",
- "id" : 10,
+ "id" : 9,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 26,
@@ -988,7 +938,7 @@
},
{
"name" : "FabricIngress.port_counters_control.ingress_port_counter",
- "id" : 11,
+ "id" : 10,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 27,
@@ -1000,12 +950,12 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan_counter",
- "id" : 12,
+ "id" : 11,
"is_direct" : true,
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 310,
+ "line" : 309,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -1664,25 +1614,6 @@
"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; ..."
- }
}
]
},
@@ -1710,7 +1641,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 112,
+ "line" : 111,
"column" : 8,
"source_fragment" : "fabric_metadata.next_id = next_id"
}
@@ -1949,7 +1880,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 225,
+ "line" : 227,
"column" : 8,
"source_fragment" : "standard_metadata.mcast_grp = group_id"
}
@@ -1978,7 +1909,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 226,
+ "line" : 228,
"column" : 8,
"source_fragment" : "fabric_metadata.is_multicast = true"
}
@@ -2084,7 +2015,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 109,
"column" : 12,
"source_fragment" : "fabric_metadata.vlan_id = hdr.vlan_tag.vlan_id"
}
@@ -2103,7 +2034,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 111,
+ "line" : 110,
"column" : 12,
"source_fragment" : "fabric_metadata.vlan_pri = hdr.vlan_tag.pri"
}
@@ -2122,7 +2053,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 112,
+ "line" : 111,
"column" : 12,
"source_fragment" : "fabric_metadata.vlan_cfi = hdr.vlan_tag.cfi"
}
@@ -2148,7 +2079,7 @@
],
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 126,
+ "line" : 125,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_ttl = DEFAULT_MPLS_TTL + 1"
}
@@ -2165,110 +2096,6 @@
"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"]
},
{
@@ -2318,8 +2145,8 @@
]
},
{
- "name" : "act_7",
- "id" : 35,
+ "name" : "act_3",
+ "id" : 31,
"runtime_data" : [],
"primitives" : [
{
@@ -2327,7 +2154,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "tmp_1"]
+ "value" : ["scalars", "tmp_3"]
},
{
"type" : "expression",
@@ -2363,7 +2190,7 @@
},
{
"type" : "field",
- "value" : ["scalars", "tmp_1"]
+ "value" : ["scalars", "tmp_3"]
}
],
"source_info" : {
@@ -2377,13 +2204,13 @@
},
{
"name" : "nop",
- "id" : 36,
+ "id" : 32,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 37,
+ "id" : 33,
"runtime_data" : [],
"primitives" : [
{
@@ -2396,7 +2223,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 264,
+ "line" : 266,
"column" : 8,
"source_fragment" : "hdr.mpls.setInvalid()"
}
@@ -2406,7 +2233,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ "value" : ["eth_type", "value"]
},
{
"type" : "field",
@@ -2415,16 +2242,16 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 266,
+ "line" : 268,
"column" : 8,
- "source_fragment" : "fabric_metadata.last_eth_type = fabric_metadata.ip_eth_type"
+ "source_fragment" : "hdr.eth_type.value = fabric_metadata.ip_eth_type"
}
}
]
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 38,
+ "id" : 34,
"runtime_data" : [],
"primitives" : [
{
@@ -2437,7 +2264,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 271,
+ "line" : 273,
"column" : 8,
"source_fragment" : "hdr.mpls.setValid()"
}
@@ -2456,7 +2283,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 272,
+ "line" : 274,
"column" : 8,
"source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label"
}
@@ -2475,7 +2302,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 273,
+ "line" : 275,
"column" : 8,
"source_fragment" : "hdr.mpls.tc = 3w0"
}
@@ -2494,7 +2321,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 274,
+ "line" : 276,
"column" : 8,
"source_fragment" : "hdr.mpls.bos = 1w1"
}
@@ -2513,7 +2340,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 275,
+ "line" : 277,
"column" : 8,
"source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl"
}
@@ -2523,7 +2350,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ "value" : ["eth_type", "value"]
},
{
"type" : "hexstr",
@@ -2532,7 +2359,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 108,
+ "line" : 112,
"column" : 31,
"source_fragment" : "0x8847; ..."
}
@@ -2541,7 +2368,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 39,
+ "id" : 35,
"runtime_data" : [],
"primitives" : [
{
@@ -2554,7 +2381,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 283,
+ "line" : 285,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setValid()"
}
@@ -2573,7 +2400,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 284,
+ "line" : 286,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi"
}
@@ -2592,7 +2419,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 285,
+ "line" : 287,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri"
}
@@ -2605,15 +2432,15 @@
"value" : ["vlan_tag", "eth_type"]
},
{
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
+ "type" : "hexstr",
+ "value" : "0x8100"
}
],
"source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 286,
- "column" : 8,
- "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type"
+ "filename" : "include/control/../define.p4",
+ "line" : 111,
+ "column" : 31,
+ "source_fragment" : "0x8100; ..."
}
},
{
@@ -2630,57 +2457,19 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 287,
+ "line" : 289,
"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.pop_vlan",
- "id" : 40,
+ "id" : 36,
"runtime_data" : [],
"primitives" : [
{
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["ethernet", "eth_type"]
- },
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t.last_eth_type"]
- }
- ],
- "source_info" : {
- "filename" : "include/control/next.p4",
- "line" : 313,
- "column" : 8,
- "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type"
- }
- },
- {
"op" : "remove_header",
"parameters" : [
{
@@ -2690,7 +2479,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 314,
+ "line" : 312,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -2698,8 +2487,8 @@
]
},
{
- "name" : "act_8",
- "id" : 41,
+ "name" : "act_4",
+ "id" : 37,
"runtime_data" : [],
"primitives" : [
{
@@ -2715,8 +2504,8 @@
]
},
{
- "name" : "act_9",
- "id" : 42,
+ "name" : "act_5",
+ "id" : 38,
"runtime_data" : [],
"primitives" : [
{
@@ -2766,8 +2555,8 @@
]
},
{
- "name" : "act_10",
- "id" : 43,
+ "name" : "act_6",
+ "id" : 39,
"runtime_data" : [],
"primitives" : [
{
@@ -2780,7 +2569,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 335,
+ "line" : 333,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2788,8 +2577,8 @@
]
},
{
- "name" : "act_11",
- "id" : 44,
+ "name" : "act_7",
+ "id" : 40,
"runtime_data" : [],
"primitives" : [
{
@@ -2818,8 +2607,8 @@
]
},
{
- "name" : "act_12",
- "id" : 45,
+ "name" : "act_8",
+ "id" : 41,
"runtime_data" : [],
"primitives" : [
{
@@ -2848,8 +2637,8 @@
]
},
{
- "name" : "act_13",
- "id" : 46,
+ "name" : "act_9",
+ "id" : 42,
"runtime_data" : [],
"primitives" : [
{
@@ -2862,7 +2651,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 368,
+ "line" : 366,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2870,8 +2659,8 @@
]
},
{
- "name" : "act_14",
- "id" : 47,
+ "name" : "act_10",
+ "id" : 43,
"runtime_data" : [],
"primitives" : [
{
@@ -2911,7 +2700,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 367,
+ "line" : 365,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -2919,8 +2708,8 @@
]
},
{
- "name" : "act_15",
- "id" : 48,
+ "name" : "act_11",
+ "id" : 44,
"runtime_data" : [],
"primitives" : [
{
@@ -2933,7 +2722,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 372,
+ "line" : 370,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2941,8 +2730,8 @@
]
},
{
- "name" : "act_16",
- "id" : 49,
+ "name" : "act_12",
+ "id" : 45,
"runtime_data" : [],
"primitives" : [
{
@@ -2982,7 +2771,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 371,
+ "line" : 369,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -3036,7 +2825,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 110,
+ "line" : 109,
"column" : 36,
"source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
},
@@ -3065,7 +2854,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 126,
+ "line" : 125,
"column" : 37,
"source_fragment" : "="
},
@@ -3078,9 +2867,9 @@
"direct_meters" : null,
"action_ids" : [29],
"actions" : ["act_1"],
- "base_default_next" : "node_8",
+ "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
"next_tables" : {
- "act_1" : "node_8"
+ "act_1" : "FabricIngress.filtering.ingress_port_vlan"
},
"default_entry" : {
"action_id" : 29,
@@ -3090,124 +2879,8 @@
}
},
{
- "name" : "tbl_act_2",
- "id" : 3,
- "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" : [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,
+ "id" : 3,
"source_info" : {
"filename" : "include/control/filtering.p4",
"line" : 53,
@@ -3263,7 +2936,7 @@
},
{
"name" : "FabricIngress.filtering.fwd_classifier",
- "id" : 8,
+ "id" : 4,
"source_info" : {
"filename" : "include/control/filtering.p4",
"line" : 90,
@@ -3284,21 +2957,15 @@
"mask" : null
},
{
- "match_type" : "exact",
- "name" : "is_ipv4",
- "target" : ["scalars", "fabric_metadata_t.is_ipv4"],
+ "match_type" : "ternary",
+ "name" : "eth_type",
+ "target" : ["eth_type", "value"],
"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"],
+ "name" : "ip_eth_type",
+ "target" : ["scalars", "fabric_metadata_t.ip_eth_type"],
"mask" : null
}
],
@@ -3310,9 +2977,9 @@
"direct_meters" : null,
"action_ids" : [10],
"actions" : ["FabricIngress.filtering.set_forwarding_type"],
- "base_default_next" : "node_17",
+ "base_default_next" : "node_10",
"next_tables" : {
- "FabricIngress.filtering.set_forwarding_type" : "node_17"
+ "FabricIngress.filtering.set_forwarding_type" : "node_10"
},
"default_entry" : {
"action_id" : 10,
@@ -3323,7 +2990,7 @@
},
{
"name" : "FabricIngress.forwarding.bridging",
- "id" : 9,
+ "id" : 5,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 46,
@@ -3366,7 +3033,7 @@
},
{
"name" : "FabricIngress.forwarding.mpls",
- "id" : 10,
+ "id" : 6,
"source_info" : {
"filename" : "include/control/forwarding.p4",
"line" : 71,
@@ -3403,10 +3070,10 @@
},
{
"name" : "FabricIngress.forwarding.routing_v4",
- "id" : 11,
+ "id" : 7,
"source_info" : {
"filename" : "include/control/forwarding.p4",
- "line" : 101,
+ "line" : 108,
"column" : 10,
"source_fragment" : "routing_v4"
},
@@ -3421,7 +3088,7 @@
"match_type" : "lpm",
"type" : "simple",
"max_size" : 1024,
- "with_counters" : true,
+ "with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
"action_ids" : [13, 14, 2],
@@ -3441,7 +3108,7 @@
},
{
"name" : "FabricIngress.acl.acl",
- "id" : 12,
+ "id" : 8,
"source_info" : {
"filename" : "include/control/acl.p4",
"line" : 60,
@@ -3494,7 +3161,7 @@
{
"match_type" : "ternary",
"name" : "eth_type",
- "target" : ["scalars", "fabric_metadata_t.last_eth_type"],
+ "target" : ["eth_type", "value"],
"mask" : null
},
{
@@ -3530,13 +3197,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_25",
+ "base_default_next" : "node_18",
"next_tables" : {
- "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"
+ "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"
},
"default_entry" : {
"action_id" : 19,
@@ -3547,10 +3214,10 @@
},
{
"name" : "FabricIngress.next.xconnect",
- "id" : 13,
+ "id" : 9,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 116,
+ "line" : 115,
"column" : 10,
"source_fragment" : "xconnect"
},
@@ -3591,10 +3258,10 @@
},
{
"name" : "FabricIngress.next.hashed",
- "id" : 14,
+ "id" : 10,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 196,
+ "line" : 198,
"column" : 10,
"source_fragment" : "hashed"
},
@@ -3625,10 +3292,10 @@
},
{
"name" : "FabricIngress.next.multicast",
- "id" : 15,
+ "id" : 11,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 230,
+ "line" : 232,
"column" : 10,
"source_fragment" : "multicast"
},
@@ -3662,7 +3329,7 @@
},
{
"name" : "FabricIngress.next.next_vlan",
- "id" : 16,
+ "id" : 12,
"source_info" : {
"filename" : "include/control/next.p4",
"line" : 82,
@@ -3685,10 +3352,10 @@
"direct_meters" : null,
"action_ids" : [20, 3],
"actions" : ["FabricIngress.next.set_vlan", "nop"],
- "base_default_next" : "node_30",
+ "base_default_next" : "node_23",
"next_tables" : {
- "FabricIngress.next.set_vlan" : "node_30",
- "nop" : "node_30"
+ "FabricIngress.next.set_vlan" : "node_23",
+ "nop" : "node_23"
},
"default_entry" : {
"action_id" : 3,
@@ -3698,8 +3365,8 @@
}
},
{
- "name" : "tbl_act_6",
- "id" : 17,
+ "name" : "tbl_act_2",
+ "id" : 13,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 31,
@@ -3713,22 +3380,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [34],
- "actions" : ["act_6"],
- "base_default_next" : "node_32",
+ "action_ids" : [30],
+ "actions" : ["act_2"],
+ "base_default_next" : "node_25",
"next_tables" : {
- "act_6" : "node_32"
+ "act_2" : "node_25"
},
"default_entry" : {
- "action_id" : 34,
+ "action_id" : 30,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_7",
- "id" : 18,
+ "name" : "tbl_act_3",
+ "id" : 14,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 34,
@@ -3742,14 +3409,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [35],
- "actions" : ["act_7"],
+ "action_ids" : [31],
+ "actions" : ["act_3"],
"base_default_next" : null,
"next_tables" : {
- "act_7" : null
+ "act_3" : null
},
"default_entry" : {
- "action_id" : 35,
+ "action_id" : 31,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -3762,7 +3429,7 @@
"id" : 0,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 177,
+ "line" : 179,
"column" : 57,
"source_fragment" : "hashed_selector"
},
@@ -3823,7 +3490,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 109,
+ "line" : 108,
"column" : 12,
"source_fragment" : "hdr.vlan_tag.isValid()"
},
@@ -3846,7 +3513,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/filtering.p4",
- "line" : 121,
+ "line" : 120,
"column" : 12,
"source_fragment" : "!hdr.mpls.isValid()"
},
@@ -3869,80 +3536,11 @@
}
},
"true_next" : "tbl_act_1",
- "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"
+ "false_next" : "FabricIngress.filtering.ingress_port_vlan"
},
{
"name" : "node_10",
- "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,
+ "id" : 3,
"source_info" : {
"filename" : "fabric.p4",
"line" : 71,
@@ -3970,15 +3568,15 @@
}
}
},
- "true_next" : "node_18",
+ "true_next" : "node_11",
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_18",
- "id" : 7,
+ "name" : "node_11",
+ "id" : 4,
"source_info" : {
"filename" : "include/control/forwarding.p4",
- "line" : 141,
+ "line" : 150,
"column" : 12,
"source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
},
@@ -3997,14 +3595,14 @@
}
},
"true_next" : "FabricIngress.forwarding.bridging",
- "false_next" : "node_20"
+ "false_next" : "node_13"
},
{
- "name" : "node_20",
- "id" : 8,
+ "name" : "node_13",
+ "id" : 5,
"source_info" : {
"filename" : "include/control/forwarding.p4",
- "line" : 142,
+ "line" : 151,
"column" : 17,
"source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
},
@@ -4023,14 +3621,14 @@
}
},
"true_next" : "FabricIngress.forwarding.mpls",
- "false_next" : "node_22"
+ "false_next" : "node_15"
},
{
- "name" : "node_22",
- "id" : 9,
+ "name" : "node_15",
+ "id" : 6,
"source_info" : {
"filename" : "include/control/forwarding.p4",
- "line" : 143,
+ "line" : 152,
"column" : 17,
"source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
},
@@ -4052,8 +3650,8 @@
"false_next" : "FabricIngress.acl.acl"
},
{
- "name" : "node_25",
- "id" : 10,
+ "name" : "node_18",
+ "id" : 7,
"source_info" : {
"filename" : "fabric.p4",
"line" : 75,
@@ -4085,8 +3683,8 @@
"true_next" : "FabricIngress.next.xconnect"
},
{
- "name" : "node_30",
- "id" : 11,
+ "name" : "node_23",
+ "id" : 8,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 30,
@@ -4107,12 +3705,12 @@
}
}
},
- "true_next" : "tbl_act_6",
- "false_next" : "node_32"
+ "true_next" : "tbl_act_2",
+ "false_next" : "node_25"
},
{
- "name" : "node_32",
- "id" : 12,
+ "name" : "node_25",
+ "id" : 9,
"source_info" : {
"filename" : "include/control/port_counter.p4",
"line" : 33,
@@ -4134,7 +3732,7 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_7"
+ "true_next" : "tbl_act_3"
}
]
},
@@ -4147,11 +3745,11 @@
"column" : 8,
"source_fragment" : "FabricEgress"
},
- "init_table" : "node_36",
+ "init_table" : "node_29",
"tables" : [
{
- "name" : "tbl_act_8",
- "id" : 19,
+ "name" : "tbl_act_4",
+ "id" : 15,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 41,
@@ -4165,22 +3763,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41],
- "actions" : ["act_8"],
- "base_default_next" : "node_38",
+ "action_ids" : [37],
+ "actions" : ["act_4"],
+ "base_default_next" : "node_31",
"next_tables" : {
- "act_8" : "node_38"
+ "act_4" : "node_31"
},
"default_entry" : {
- "action_id" : 41,
+ "action_id" : 37,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_9",
- "id" : 20,
+ "name" : "tbl_act_5",
+ "id" : 16,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 44,
@@ -4194,25 +3792,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [42],
- "actions" : ["act_9"],
- "base_default_next" : "node_40",
+ "action_ids" : [38],
+ "actions" : ["act_5"],
+ "base_default_next" : "node_33",
"next_tables" : {
- "act_9" : "node_40"
+ "act_5" : "node_33"
},
"default_entry" : {
- "action_id" : 42,
+ "action_id" : 38,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_10",
- "id" : 21,
+ "name" : "tbl_act_6",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 335,
+ "line" : 333,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4223,14 +3821,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [43],
- "actions" : ["act_10"],
- "base_default_next" : "node_42",
+ "action_ids" : [39],
+ "actions" : ["act_6"],
+ "base_default_next" : "node_35",
"next_tables" : {
- "act_10" : "node_42"
+ "act_6" : "node_35"
},
"default_entry" : {
- "action_id" : 43,
+ "action_id" : 39,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4238,10 +3836,10 @@
},
{
"name" : "tbl_egress_next_pop_mpls_if_present",
- "id" : 22,
+ "id" : 18,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 339,
+ "line" : 337,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -4252,14 +3850,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [37],
+ "action_ids" : [33],
"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" : 37,
+ "action_id" : 33,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4267,10 +3865,10 @@
},
{
"name" : "tbl_egress_next_set_mpls",
- "id" : 23,
+ "id" : 19,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 341,
+ "line" : 339,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -4281,14 +3879,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [38],
+ "action_ids" : [34],
"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" : 38,
+ "action_id" : 34,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4296,10 +3894,10 @@
},
{
"name" : "FabricEgress.egress_next.egress_vlan",
- "id" : 24,
+ "id" : 20,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 318,
+ "line" : 316,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -4323,23 +3921,23 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [40, 36],
+ "action_ids" : [36, 32],
"actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
"base_default_next" : null,
"next_tables" : {
- "__HIT__" : "tbl_act_11",
- "__MISS__" : "tbl_act_12"
+ "__HIT__" : "tbl_act_7",
+ "__MISS__" : "tbl_act_8"
},
"default_entry" : {
- "action_id" : 36,
+ "action_id" : 32,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_11",
- "id" : 25,
+ "name" : "tbl_act_7",
+ "id" : 21,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -4347,22 +3945,22 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [44],
- "actions" : ["act_11"],
- "base_default_next" : "node_49",
+ "action_ids" : [40],
+ "actions" : ["act_7"],
+ "base_default_next" : "node_42",
"next_tables" : {
- "act_11" : "node_49"
+ "act_7" : "node_42"
},
"default_entry" : {
- "action_id" : 44,
+ "action_id" : 40,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_12",
- "id" : 26,
+ "name" : "tbl_act_8",
+ "id" : 22,
"key" : [],
"match_type" : "exact",
"type" : "simple",
@@ -4370,14 +3968,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [45],
- "actions" : ["act_12"],
- "base_default_next" : "node_49",
+ "action_ids" : [41],
+ "actions" : ["act_8"],
+ "base_default_next" : "node_42",
"next_tables" : {
- "act_12" : "node_49"
+ "act_8" : "node_42"
},
"default_entry" : {
- "action_id" : 45,
+ "action_id" : 41,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4385,10 +3983,10 @@
},
{
"name" : "tbl_egress_next_push_vlan",
- "id" : 27,
+ "id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 358,
+ "line" : 356,
"column" : 20,
"source_fragment" : "push_vlan()"
},
@@ -4399,25 +3997,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [39],
+ "action_ids" : [35],
"actions" : ["FabricEgress.egress_next.push_vlan"],
- "base_default_next" : "node_52",
+ "base_default_next" : "node_45",
"next_tables" : {
- "FabricEgress.egress_next.push_vlan" : "node_52"
+ "FabricEgress.egress_next.push_vlan" : "node_45"
},
"default_entry" : {
- "action_id" : 39,
+ "action_id" : 35,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_13",
- "id" : 28,
+ "name" : "tbl_act_9",
+ "id" : 24,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 367,
+ "line" : 365,
"column" : 25,
"source_fragment" : "="
},
@@ -4428,25 +4026,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [47],
- "actions" : ["act_14"],
- "base_default_next" : "node_54",
+ "action_ids" : [43],
+ "actions" : ["act_10"],
+ "base_default_next" : "node_47",
"next_tables" : {
- "act_14" : "node_54"
+ "act_10" : "node_47"
},
"default_entry" : {
- "action_id" : 47,
+ "action_id" : 43,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_14",
- "id" : 29,
+ "name" : "tbl_act_10",
+ "id" : 25,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 368,
+ "line" : 366,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4457,25 +4055,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [46],
- "actions" : ["act_13"],
+ "action_ids" : [42],
+ "actions" : ["act_9"],
"base_default_next" : null,
"next_tables" : {
- "act_13" : null
+ "act_9" : null
},
"default_entry" : {
- "action_id" : 46,
+ "action_id" : 42,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_15",
- "id" : 30,
+ "name" : "tbl_act_11",
+ "id" : 26,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 371,
+ "line" : 369,
"column" : 29,
"source_fragment" : "="
},
@@ -4486,25 +4084,25 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [49],
- "actions" : ["act_16"],
- "base_default_next" : "node_58",
+ "action_ids" : [45],
+ "actions" : ["act_12"],
+ "base_default_next" : "node_51",
"next_tables" : {
- "act_16" : "node_58"
+ "act_12" : "node_51"
},
"default_entry" : {
- "action_id" : 49,
+ "action_id" : 45,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
}
},
{
- "name" : "tbl_act_16",
- "id" : 31,
+ "name" : "tbl_act_12",
+ "id" : 27,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 372,
+ "line" : 370,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4515,14 +4113,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [48],
- "actions" : ["act_15"],
+ "action_ids" : [44],
+ "actions" : ["act_11"],
"base_default_next" : null,
"next_tables" : {
- "act_15" : null
+ "act_11" : null
},
"default_entry" : {
- "action_id" : 48,
+ "action_id" : 44,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -4532,8 +4130,8 @@
"action_profiles" : [],
"conditionals" : [
{
- "name" : "node_36",
- "id" : 13,
+ "name" : "node_29",
+ "id" : 10,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 39,
@@ -4561,12 +4159,12 @@
}
}
},
- "true_next" : "tbl_act_8",
- "false_next" : "node_38"
+ "true_next" : "tbl_act_4",
+ "false_next" : "node_31"
},
{
- "name" : "node_38",
- "id" : 14,
+ "name" : "node_31",
+ "id" : 11,
"source_info" : {
"filename" : "include/control/packetio.p4",
"line" : 43,
@@ -4587,15 +4185,15 @@
}
}
},
- "true_next" : "tbl_act_9",
- "false_next" : "node_40"
+ "true_next" : "tbl_act_5",
+ "false_next" : "node_33"
},
{
- "name" : "node_40",
- "id" : 15,
+ "name" : "node_33",
+ "id" : 12,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 333,
+ "line" : 331,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -4640,15 +4238,15 @@
}
}
},
- "true_next" : "tbl_act_10",
- "false_next" : "node_42"
+ "true_next" : "tbl_act_6",
+ "false_next" : "node_35"
},
{
- "name" : "node_42",
- "id" : 16,
+ "name" : "node_35",
+ "id" : 13,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 338,
+ "line" : 336,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -4666,15 +4264,15 @@
}
}
},
- "true_next" : "node_43",
+ "true_next" : "node_36",
"false_next" : "tbl_egress_next_set_mpls"
},
{
- "name" : "node_43",
- "id" : 17,
+ "name" : "node_36",
+ "id" : 14,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 339,
+ "line" : 337,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -4693,11 +4291,11 @@
"false_next" : "FabricEgress.egress_next.egress_vlan"
},
{
- "name" : "node_49",
- "id" : 18,
+ "name" : "node_42",
+ "id" : 15,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 355,
+ "line" : 353,
"column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
@@ -4719,15 +4317,15 @@
}
}
},
- "true_next" : "node_50",
- "false_next" : "node_52"
+ "true_next" : "node_43",
+ "false_next" : "node_45"
},
{
- "name" : "node_50",
- "id" : 19,
+ "name" : "node_43",
+ "id" : 16,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 357,
+ "line" : 355,
"column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
@@ -4746,14 +4344,14 @@
}
},
"true_next" : "tbl_egress_next_push_vlan",
- "false_next" : "node_52"
+ "false_next" : "node_45"
},
{
- "name" : "node_52",
- "id" : 20,
+ "name" : "node_45",
+ "id" : 17,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 366,
+ "line" : 364,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -4768,15 +4366,15 @@
}
}
},
- "true_next" : "tbl_act_13",
- "false_next" : "node_56"
+ "true_next" : "tbl_act_9",
+ "false_next" : "node_49"
},
{
- "name" : "node_54",
- "id" : 21,
+ "name" : "node_47",
+ "id" : 18,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 368,
+ "line" : 366,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -4795,14 +4393,14 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_14"
+ "true_next" : "tbl_act_10"
},
{
- "name" : "node_56",
- "id" : 22,
+ "name" : "node_49",
+ "id" : 19,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 370,
+ "line" : 368,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -4818,14 +4416,14 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_15"
+ "true_next" : "tbl_act_11"
},
{
- "name" : "node_58",
- "id" : 23,
+ "name" : "node_51",
+ "id" : 20,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 372,
+ "line" : 370,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},
@@ -4844,7 +4442,7 @@
}
},
"false_next" : null,
- "true_next" : "tbl_act_16"
+ "true_next" : "tbl_act_12"
}
]
}