Added ethertype QinQ when double VLAN tagged packets
Double VLAN tagged packets in Mininet uses QinQ Ethertype.
Change-Id: I7c3fa5f1db1ade768e1d998185d9eadded9ebb81
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 bc0e350..a51ce3a 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
@@ -377,6 +377,18 @@
"transitions" : [
{
"type" : "hexstr",
+ "value" : "0x88a8",
+ "mask" : null,
+ "next_state" : "parse_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x9100",
+ "mask" : null,
+ "next_state" : "parse_vlan_tag"
+ },
+ {
+ "type" : "hexstr",
"value" : "0x8100",
"mask" : null,
"next_state" : "parse_vlan_tag"
@@ -440,18 +452,6 @@
"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
@@ -1005,7 +1005,7 @@
"binding" : "FabricEgress.egress_next.egress_vlan",
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 309,
+ "line" : 310,
"column" : 50,
"source_fragment" : "egress_vlan_counter"
}
@@ -2675,7 +2675,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 312,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type"
}
@@ -2690,7 +2690,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 313,
+ "line" : 314,
"column" : 8,
"source_fragment" : "hdr.vlan_tag.setInvalid()"
}
@@ -2780,7 +2780,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 334,
+ "line" : 335,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2862,7 +2862,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 367,
+ "line" : 368,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2911,7 +2911,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 366,
+ "line" : 367,
"column" : 12,
"source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
}
@@ -2933,7 +2933,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 371,
+ "line" : 372,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
}
@@ -2982,7 +2982,7 @@
],
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 370,
+ "line" : 371,
"column" : 16,
"source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
}
@@ -4212,7 +4212,7 @@
"id" : 21,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 334,
+ "line" : 335,
"column" : 12,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4241,7 +4241,7 @@
"id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 338,
+ "line" : 339,
"column" : 36,
"source_fragment" : "pop_mpls_if_present()"
},
@@ -4270,7 +4270,7 @@
"id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 340,
+ "line" : 341,
"column" : 12,
"source_fragment" : "set_mpls()"
},
@@ -4299,7 +4299,7 @@
"id" : 24,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 317,
+ "line" : 318,
"column" : 10,
"source_fragment" : "egress_vlan"
},
@@ -4388,7 +4388,7 @@
"id" : 27,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 357,
+ "line" : 358,
"column" : 20,
"source_fragment" : "push_vlan()"
},
@@ -4417,7 +4417,7 @@
"id" : 28,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 366,
+ "line" : 367,
"column" : 25,
"source_fragment" : "="
},
@@ -4446,7 +4446,7 @@
"id" : 29,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 367,
+ "line" : 368,
"column" : 35,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4475,7 +4475,7 @@
"id" : 30,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 370,
+ "line" : 371,
"column" : 29,
"source_fragment" : "="
},
@@ -4504,7 +4504,7 @@
"id" : 31,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 371,
+ "line" : 372,
"column" : 39,
"source_fragment" : "mark_to_drop(standard_metadata)"
},
@@ -4595,7 +4595,7 @@
"id" : 15,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 332,
+ "line" : 333,
"column" : 12,
"source_fragment" : "fabric_metadata.is_multicast == true ..."
},
@@ -4648,7 +4648,7 @@
"id" : 16,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 337,
+ "line" : 338,
"column" : 12,
"source_fragment" : "fabric_metadata.mpls_label == 0"
},
@@ -4674,7 +4674,7 @@
"id" : 17,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 338,
+ "line" : 339,
"column" : 16,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -4697,7 +4697,7 @@
"id" : 18,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 354,
+ "line" : 355,
"column" : 16,
"source_fragment" : "!egress_vlan.apply().hit"
},
@@ -4727,7 +4727,7 @@
"id" : 19,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 356,
+ "line" : 357,
"column" : 20,
"source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
},
@@ -4753,7 +4753,7 @@
"id" : 20,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 365,
+ "line" : 366,
"column" : 12,
"source_fragment" : "hdr.mpls.isValid()"
},
@@ -4776,7 +4776,7 @@
"id" : 21,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 367,
+ "line" : 368,
"column" : 16,
"source_fragment" : "hdr.mpls.ttl == 0"
},
@@ -4802,7 +4802,7 @@
"id" : 22,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 369,
+ "line" : 370,
"column" : 15,
"source_fragment" : "hdr.ipv4.isValid()"
},
@@ -4825,7 +4825,7 @@
"id" : 23,
"source_info" : {
"filename" : "include/control/next.p4",
- "line" : 371,
+ "line" : 372,
"column" : 20,
"source_fragment" : "hdr.ipv4.ttl == 0"
},