Add action in pdrs tables to pass qid parameter
Change-Id: Id3ee76ba1fc659a1e4ca78b21481da1fe823f407
diff --git a/pipelines/fabric/api/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java b/pipelines/fabric/api/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java
index 05e738f..00f5590 100644
--- a/pipelines/fabric/api/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java
+++ b/pipelines/fabric/api/src/main/java/org/onosproject/pipelines/fabric/FabricConstants.java
@@ -266,6 +266,8 @@
PiActionId.of("FabricIngress.forwarding.set_next_id_routing_v6");
public static final PiActionId FABRIC_INGRESS_NEXT_ROUTING_SIMPLE =
PiActionId.of("FabricIngress.next.routing_simple");
+ public static final PiActionId FABRIC_INGRESS_SPGW_LOAD_PDR_QOS =
+ PiActionId.of("FabricIngress.spgw.load_pdr_qos");
public static final PiActionId FABRIC_EGRESS_EGRESS_NEXT_PUSH_VLAN =
PiActionId.of("FabricEgress.egress_next.push_vlan");
public static final PiActionId FABRIC_EGRESS_BNG_EGRESS_DOWNSTREAM_ENCAP_V4 =
@@ -322,6 +324,7 @@
public static final PiActionParamId DMAC = PiActionParamId.of("dmac");
public static final PiActionParamId MON_PORT =
PiActionParamId.of("mon_port");
+ public static final PiActionParamId QID = PiActionParamId.of("qid");
public static final PiActionParamId NOTIFY_CP =
PiActionParamId.of("notify_cp");
public static final PiActionParamId SRC_IFACE =
diff --git a/pipelines/fabric/impl/src/main/resources/include/control/spgw.p4 b/pipelines/fabric/impl/src/main/resources/include/control/spgw.p4
index 00bfd94..a27f9a0 100644
--- a/pipelines/fabric/impl/src/main/resources/include/control/spgw.p4
+++ b/pipelines/fabric/impl/src/main/resources/include/control/spgw.p4
@@ -145,14 +145,22 @@
//===== PDR Tables ======//
//=============================//
- action load_pdr(pdr_ctr_id_t ctr_id,
- far_id_t far_id,
- bit<1> needs_gtpu_decap) {
+ action load_pdr(pdr_ctr_id_t ctr_id,
+ far_id_t far_id,
+ bit<1> needs_gtpu_decap) {
fabric_md.spgw.ctr_id = ctr_id;
fabric_md.spgw.far_id = far_id;
fabric_md.spgw.needs_gtpu_decap = (_BOOL)needs_gtpu_decap;
}
+ action load_pdr_qos(pdr_ctr_id_t ctr_id,
+ far_id_t far_id,
+ bit<1> needs_gtpu_decap,
+ qid_t qid) {
+ load_pdr(ctr_id, far_id, needs_gtpu_decap);
+ // we cannot set the qid, since bmv2 does not support it
+ }
+
// These two tables scale well and cover the average case PDR
table downlink_pdrs {
key = {
@@ -161,6 +169,7 @@
}
actions = {
load_pdr;
+ load_pdr_qos;
}
size = MAX_DOWNLINK_PDRS;
}
@@ -172,6 +181,7 @@
}
actions = {
load_pdr;
+ load_pdr_qos;
}
size = MAX_UPLINK_PDRS;
}
diff --git a/pipelines/fabric/impl/src/main/resources/include/define.p4 b/pipelines/fabric/impl/src/main/resources/include/define.p4
index 8b1fd9d..08487c7 100644
--- a/pipelines/fabric/impl/src/main/resources/include/define.p4
+++ b/pipelines/fabric/impl/src/main/resources/include/define.p4
@@ -104,6 +104,7 @@
typedef bit<32> far_id_t;
typedef bit<32> pdr_ctr_id_t;
typedef bit<32> teid_t;
+typedef bit<5> qid_t;
const spgw_interface_t SPGW_IFACE_UNKNOWN = 8w0;
const spgw_interface_t SPGW_IFACE_ACCESS = 8w1;
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
index 9086045..78933e1 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
@@ -1475,7 +1475,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3193,7 +3193,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 122,
+ "line" : 123,
"column" : 33,
"source_fragment" : "0x8864; ..."
}
@@ -3364,7 +3364,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 124,
+ "line" : 125,
"column" : 35,
"source_fragment" : "0x0021; ..."
}
@@ -3522,7 +3522,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 116,
+ "line" : 117,
"column" : 31,
"source_fragment" : "0x8847; ..."
}
@@ -3601,7 +3601,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -3718,7 +3718,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -3737,7 +3737,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -3816,7 +3816,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
index 7ff2d8a..473ae1e 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
@@ -2066,7 +2066,7 @@
"id" : 23,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 286,
+ "line" : 296,
"column" : 53,
"source_fragment" : "pdr_counter"
},
@@ -2142,7 +2142,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 349,
+ "line" : 359,
"column" : 8,
"source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
},
@@ -2589,7 +2589,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -2649,7 +2649,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 119,
+ "line" : 120,
"column" : 31,
"source_fragment" : "0x86dd; ..."
}
@@ -4039,7 +4039,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -4258,7 +4258,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -4462,7 +4462,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -4681,7 +4681,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -4866,7 +4866,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -5085,7 +5085,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -5289,7 +5289,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -5508,7 +5508,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -5753,7 +5753,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 108,
+ "line" : 109,
"column" : 44,
"source_fragment" : "8w0; ..."
}
@@ -5984,16 +5984,24 @@
]
},
{
- "name" : "FabricIngress.spgw.load_normal_far",
+ "name" : "FabricIngress.spgw.load_pdr_qos",
"id" : 66,
"runtime_data" : [
{
- "name" : "drop",
+ "name" : "ctr_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "far_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "needs_gtpu_decap",
"bitwidth" : 1
},
{
- "name" : "notify_cp",
- "bitwidth" : 1
+ "name" : "qid",
+ "bitwidth" : 5
}
],
"primitives" : [
@@ -6002,38 +6010,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ctr_id28"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
+ "type" : "runtime_data",
+ "value" : 0
}
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 186,
- "column" : 34,
- "source_fragment" : "= (bool)drop; ..."
+ "line" : 151,
+ "column" : 30,
+ "source_fragment" : "= ctr_id; ..."
}
},
{
@@ -6041,38 +6029,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next11"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_far_id29"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
+ "type" : "runtime_data",
+ "value" : 1
}
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 187,
- "column" : 28,
- "source_fragment" : "= (bool)drop; ..."
+ "line" : 152,
+ "column" : 30,
+ "source_fragment" : "= far_id; ..."
}
},
{
@@ -6080,7 +6048,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc32"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_decap34"]
},
{
"type" : "expression",
@@ -6095,7 +6063,7 @@
"op" : "!=",
"left" : {
"type" : "local",
- "value" : 1
+ "value" : 2
},
"right" : {
"type" : "hexstr",
@@ -6109,40 +6077,32 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 188,
- "column" : 36,
- "source_fragment" : "= (bool)notify_cp; ..."
+ "line" : 153,
+ "column" : 40,
+ "source_fragment" : "= (bool)needs_gtpu_decap; ..."
}
}
]
},
{
- "name" : "FabricIngress.spgw.load_tunnel_far",
+ "name" : "FabricIngress.spgw.load_pdr_qos",
"id" : 67,
"runtime_data" : [
{
- "name" : "drop",
+ "name" : "ctr_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "far_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "needs_gtpu_decap",
"bitwidth" : 1
},
{
- "name" : "notify_cp",
- "bitwidth" : 1
- },
- {
- "name" : "tunnel_src_port",
- "bitwidth" : 16
- },
- {
- "name" : "tunnel_src_addr",
- "bitwidth" : 32
- },
- {
- "name" : "tunnel_dst_addr",
- "bitwidth" : 32
- },
- {
- "name" : "teid",
- "bitwidth" : 32
+ "name" : "qid",
+ "bitwidth" : 5
}
],
"primitives" : [
@@ -6151,7 +6111,45 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ctr_id28"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 151,
+ "column" : 30,
+ "source_fragment" : "= ctr_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_far_id29"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 1
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 152,
+ "column" : 30,
+ "source_fragment" : "= far_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_decap34"]
},
{
"type" : "expression",
@@ -6166,7 +6164,7 @@
"op" : "!=",
"left" : {
"type" : "local",
- "value" : 0
+ "value" : 2
},
"right" : {
"type" : "hexstr",
@@ -6180,274 +6178,15 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 197,
- "column" : 34,
- "source_fragment" : "= (bool)drop; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next11"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 198,
- "column" : 28,
- "source_fragment" : "= (bool)drop; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc32"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 1
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 199,
- "column" : 36,
- "source_fragment" : "= (bool)notify_cp; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_encap33"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 201,
+ "line" : 153,
"column" : 40,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid24"]
- },
- {
- "type" : "runtime_data",
- "value" : 5
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 202,
- "column" : 28,
- "source_fragment" : "= teid; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_port25"]
- },
- {
- "type" : "runtime_data",
- "value" : 2
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 203,
- "column" : 39,
- "source_fragment" : "= tunnel_src_port; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_addr26"]
- },
- {
- "type" : "runtime_data",
- "value" : 3
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 204,
- "column" : 39,
- "source_fragment" : "= tunnel_src_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_dst_addr27"]
- },
- {
- "type" : "runtime_data",
- "value" : 4
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 205,
- "column" : 39,
- "source_fragment" : "= tunnel_dst_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ipv4_src_addr19"]
- },
- {
- "type" : "runtime_data",
- "value" : 3
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 207,
- "column" : 32,
- "source_fragment" : "= tunnel_src_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ipv4_dst_addr20"]
- },
- {
- "type" : "runtime_data",
- "value" : 4
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 208,
- "column" : 32,
- "source_fragment" : "= tunnel_dst_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
- },
- {
- "type" : "runtime_data",
- "value" : 2
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 209,
- "column" : 27,
- "source_fragment" : "= tunnel_src_port; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
- },
- {
- "type" : "hexstr",
- "value" : "0x0868"
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 210,
- "column" : 27,
- "source_fragment" : "= 2152; ..."
+ "source_fragment" : "= (bool)needs_gtpu_decap; ..."
}
}
]
},
{
- "name" : "FabricIngress.spgw.load_dbuf_far",
+ "name" : "FabricIngress.spgw.load_normal_far",
"id" : 68,
"runtime_data" : [
{
@@ -6457,6 +6196,139 @@
{
"name" : "notify_cp",
"bitwidth" : 1
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 196,
+ "column" : 34,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 197,
+ "column" : 28,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc32"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 1
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 198,
+ "column" : 36,
+ "source_fragment" : "= (bool)notify_cp; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.spgw.load_tunnel_far",
+ "id" : 69,
+ "runtime_data" : [
+ {
+ "name" : "drop",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "notify_cp",
+ "bitwidth" : 1
},
{
"name" : "tunnel_src_port",
@@ -6510,7 +6382,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 197,
+ "line" : 207,
"column" : 34,
"source_fragment" : "= (bool)drop; ..."
}
@@ -6549,7 +6421,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 198,
+ "line" : 208,
"column" : 28,
"source_fragment" : "= (bool)drop; ..."
}
@@ -6588,7 +6460,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 199,
+ "line" : 209,
"column" : 36,
"source_fragment" : "= (bool)notify_cp; ..."
}
@@ -6617,7 +6489,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 201,
+ "line" : 211,
"column" : 40,
"source_fragment" : "= true; ..."
}
@@ -6636,7 +6508,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 202,
+ "line" : 212,
"column" : 28,
"source_fragment" : "= teid; ..."
}
@@ -6655,7 +6527,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 203,
+ "line" : 213,
"column" : 39,
"source_fragment" : "= tunnel_src_port; ..."
}
@@ -6674,7 +6546,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 204,
+ "line" : 214,
"column" : 39,
"source_fragment" : "= tunnel_src_addr; ..."
}
@@ -6693,7 +6565,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 205,
+ "line" : 215,
"column" : 39,
"source_fragment" : "= tunnel_dst_addr; ..."
}
@@ -6712,7 +6584,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 207,
+ "line" : 217,
"column" : 32,
"source_fragment" : "= tunnel_src_addr; ..."
}
@@ -6731,7 +6603,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 208,
+ "line" : 218,
"column" : 32,
"source_fragment" : "= tunnel_dst_addr; ..."
}
@@ -6750,7 +6622,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 209,
+ "line" : 219,
"column" : 27,
"source_fragment" : "= tunnel_src_port; ..."
}
@@ -6769,7 +6641,337 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 210,
+ "line" : 220,
+ "column" : 27,
+ "source_fragment" : "= 2152; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.spgw.load_dbuf_far",
+ "id" : 70,
+ "runtime_data" : [
+ {
+ "name" : "drop",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "notify_cp",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "tunnel_src_port",
+ "bitwidth" : 16
+ },
+ {
+ "name" : "tunnel_src_addr",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "tunnel_dst_addr",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "teid",
+ "bitwidth" : 32
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 207,
+ "column" : 34,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_next11"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 208,
+ "column" : 28,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc32"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 1
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 209,
+ "column" : 36,
+ "source_fragment" : "= (bool)notify_cp; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_encap33"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 211,
+ "column" : 40,
+ "source_fragment" : "= true; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid24"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 5
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 212,
+ "column" : 28,
+ "source_fragment" : "= teid; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_port25"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 2
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 213,
+ "column" : 39,
+ "source_fragment" : "= tunnel_src_port; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_addr26"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 3
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 214,
+ "column" : 39,
+ "source_fragment" : "= tunnel_src_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_dst_addr27"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 4
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 215,
+ "column" : 39,
+ "source_fragment" : "= tunnel_dst_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._ipv4_src_addr19"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 3
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 217,
+ "column" : 32,
+ "source_fragment" : "= tunnel_src_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._ipv4_dst_addr20"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 4
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 218,
+ "column" : 32,
+ "source_fragment" : "= tunnel_dst_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 2
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 219,
+ "column" : 27,
+ "source_fragment" : "= tunnel_src_port; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x0868"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 220,
"column" : 27,
"source_fragment" : "= 2152; ..."
}
@@ -6798,7 +7000,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 221,
+ "line" : 231,
"column" : 43,
"source_fragment" : "= true; ..."
}
@@ -6807,7 +7009,7 @@
},
{
"name" : "act",
- "id" : 69,
+ "id" : 71,
"runtime_data" : [],
"primitives" : [
{
@@ -6887,7 +7089,7 @@
},
{
"name" : "act_0",
- "id" : 70,
+ "id" : 72,
"runtime_data" : [],
"primitives" : [
{
@@ -6917,7 +7119,7 @@
},
{
"name" : "act_1",
- "id" : 71,
+ "id" : 73,
"runtime_data" : [],
"primitives" : [
{
@@ -6947,7 +7149,7 @@
},
{
"name" : "act_2",
- "id" : 72,
+ "id" : 74,
"runtime_data" : [],
"primitives" : [
{
@@ -6964,7 +7166,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 256,
+ "line" : 266,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
}
@@ -6973,7 +7175,7 @@
},
{
"name" : "act_3",
- "id" : 73,
+ "id" : 75,
"runtime_data" : [],
"primitives" : [
{
@@ -6990,7 +7192,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 273,
+ "line" : 283,
"column" : 36,
"source_fragment" : "= hdr.ipv4.total_len; ..."
}
@@ -6999,7 +7201,7 @@
},
{
"name" : "act_4",
- "id" : 74,
+ "id" : 76,
"runtime_data" : [],
"primitives" : [
{
@@ -7063,7 +7265,7 @@
},
{
"name" : "act_5",
- "id" : 75,
+ "id" : 77,
"runtime_data" : [],
"primitives" : [
{
@@ -7127,7 +7329,7 @@
},
{
"name" : "act_6",
- "id" : 76,
+ "id" : 78,
"runtime_data" : [],
"primitives" : [
{
@@ -7153,7 +7355,7 @@
},
{
"name" : "act_7",
- "id" : 77,
+ "id" : 79,
"runtime_data" : [],
"primitives" : [
{
@@ -7211,7 +7413,7 @@
},
{
"name" : "act_8",
- "id" : 78,
+ "id" : 80,
"runtime_data" : [],
"primitives" : [
{
@@ -7269,7 +7471,7 @@
},
{
"name" : "act_9",
- "id" : 79,
+ "id" : 81,
"runtime_data" : [],
"primitives" : [
{
@@ -7295,7 +7497,7 @@
},
{
"name" : "act_10",
- "id" : 80,
+ "id" : 82,
"runtime_data" : [],
"primitives" : [
{
@@ -7325,7 +7527,7 @@
},
{
"name" : "act_11",
- "id" : 81,
+ "id" : 83,
"runtime_data" : [],
"primitives" : [
{
@@ -7355,7 +7557,7 @@
},
{
"name" : "act_12",
- "id" : 82,
+ "id" : 84,
"runtime_data" : [],
"primitives" : [
{
@@ -7404,7 +7606,7 @@
},
{
"name" : "act_13",
- "id" : 83,
+ "id" : 85,
"runtime_data" : [],
"primitives" : [
{
@@ -7440,7 +7642,7 @@
},
{
"name" : "act_14",
- "id" : 84,
+ "id" : 86,
"runtime_data" : [],
"primitives" : [
{
@@ -7466,7 +7668,7 @@
},
{
"name" : "act_15",
- "id" : 85,
+ "id" : 87,
"runtime_data" : [],
"primitives" : [
{
@@ -7492,7 +7694,7 @@
},
{
"name" : "act_16",
- "id" : 86,
+ "id" : 88,
"runtime_data" : [],
"primitives" : [
{
@@ -7551,7 +7753,7 @@
},
{
"name" : "act_17",
- "id" : 87,
+ "id" : 89,
"runtime_data" : [],
"primitives" : [
{
@@ -7581,7 +7783,7 @@
},
{
"name" : "act_18",
- "id" : 88,
+ "id" : 90,
"runtime_data" : [],
"primitives" : [
{
@@ -7611,7 +7813,7 @@
},
{
"name" : "act_19",
- "id" : 89,
+ "id" : 91,
"runtime_data" : [],
"primitives" : [
{
@@ -7641,7 +7843,7 @@
},
{
"name" : "act_20",
- "id" : 90,
+ "id" : 92,
"runtime_data" : [],
"primitives" : [
{
@@ -7671,7 +7873,7 @@
},
{
"name" : "act_21",
- "id" : 91,
+ "id" : 93,
"runtime_data" : [],
"primitives" : [
{
@@ -7701,7 +7903,7 @@
},
{
"name" : "act_22",
- "id" : 92,
+ "id" : 94,
"runtime_data" : [],
"primitives" : [
{
@@ -7731,38 +7933,38 @@
},
{
"name" : "nop",
- "id" : 93,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
- "id" : 94,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
"id" : 95,
"runtime_data" : [],
"primitives" : []
},
{
- "name" : "NoAction",
+ "name" : "nop",
"id" : 96,
"runtime_data" : [],
"primitives" : []
},
{
- "name" : "NoAction",
+ "name" : "nop",
"id" : 97,
"runtime_data" : [],
"primitives" : []
},
{
- "name" : "FabricEgress.bng_egress.downstream.encap_v4",
+ "name" : "NoAction",
"id" : 98,
"runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "NoAction",
+ "id" : 99,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricEgress.bng_egress.downstream.encap_v4",
+ "id" : 100,
+ "runtime_data" : [],
"primitives" : [
{
"op" : "assign",
@@ -7778,7 +7980,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 122,
+ "line" : 123,
"column" : 33,
"source_fragment" : "0x8864; ..."
}
@@ -7949,7 +8151,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 124,
+ "line" : 125,
"column" : 35,
"source_fragment" : "0x0021; ..."
}
@@ -7958,7 +8160,7 @@
},
{
"name" : "FabricEgress.bng_egress.downstream.encap_v6",
- "id" : 99,
+ "id" : 101,
"runtime_data" : [],
"primitives" : [
{
@@ -7975,7 +8177,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 122,
+ "line" : 123,
"column" : 33,
"source_fragment" : "0x8864; ..."
}
@@ -8146,7 +8348,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 125,
+ "line" : 126,
"column" : 35,
"source_fragment" : "0x0057; ..."
}
@@ -8155,7 +8357,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
- "id" : 100,
+ "id" : 102,
"runtime_data" : [
{
"name" : "max_hop",
@@ -8223,7 +8425,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 155,
+ "line" : 156,
"column" : 36,
"source_fragment" : "4; ..."
}
@@ -8641,7 +8843,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 151,
+ "line" : 152,
"column" : 24,
"source_fragment" : "0x1; ..."
}
@@ -8650,7 +8852,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
- "id" : 101,
+ "id" : 103,
"runtime_data" : [
{
"name" : "switch_id",
@@ -8710,13 +8912,13 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
- "id" : 102,
+ "id" : 104,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
- "id" : 103,
+ "id" : 105,
"runtime_data" : [],
"primitives" : [
{
@@ -8873,7 +9075,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
- "id" : 104,
+ "id" : 106,
"runtime_data" : [],
"primitives" : [
{
@@ -8998,7 +9200,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
- "id" : 105,
+ "id" : 107,
"runtime_data" : [],
"primitives" : [
{
@@ -9189,7 +9391,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
- "id" : 106,
+ "id" : 108,
"runtime_data" : [],
"primitives" : [
{
@@ -9359,7 +9561,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
- "id" : 107,
+ "id" : 109,
"runtime_data" : [],
"primitives" : [
{
@@ -9595,7 +9797,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
- "id" : 108,
+ "id" : 110,
"runtime_data" : [],
"primitives" : [
{
@@ -9799,7 +10001,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
- "id" : 109,
+ "id" : 111,
"runtime_data" : [],
"primitives" : [
{
@@ -10069,7 +10271,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
- "id" : 110,
+ "id" : 112,
"runtime_data" : [],
"primitives" : [
{
@@ -10194,7 +10396,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
- "id" : 111,
+ "id" : 113,
"runtime_data" : [],
"primitives" : [
{
@@ -10385,7 +10587,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
- "id" : 112,
+ "id" : 114,
"runtime_data" : [],
"primitives" : [
{
@@ -10544,7 +10746,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
- "id" : 113,
+ "id" : 115,
"runtime_data" : [],
"primitives" : [
{
@@ -10769,7 +10971,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
- "id" : 114,
+ "id" : 116,
"runtime_data" : [],
"primitives" : [
{
@@ -10973,7 +11175,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
- "id" : 115,
+ "id" : 117,
"runtime_data" : [],
"primitives" : [
{
@@ -11243,7 +11445,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
- "id" : 116,
+ "id" : 118,
"runtime_data" : [],
"primitives" : [
{
@@ -11481,7 +11683,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
- "id" : 117,
+ "id" : 119,
"runtime_data" : [],
"primitives" : [
{
@@ -11785,13 +11987,13 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
- "id" : 118,
+ "id" : 120,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
- "id" : 119,
+ "id" : 121,
"runtime_data" : [],
"primitives" : [
{
@@ -11916,7 +12118,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
- "id" : 120,
+ "id" : 122,
"runtime_data" : [],
"primitives" : [
{
@@ -12060,7 +12262,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
- "id" : 121,
+ "id" : 123,
"runtime_data" : [],
"primitives" : [
{
@@ -12238,7 +12440,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
- "id" : 122,
+ "id" : 124,
"runtime_data" : [],
"primitives" : [
{
@@ -12386,7 +12588,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
- "id" : 123,
+ "id" : 125,
"runtime_data" : [],
"primitives" : [
{
@@ -12568,7 +12770,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
- "id" : 124,
+ "id" : 126,
"runtime_data" : [],
"primitives" : [
{
@@ -12769,7 +12971,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
- "id" : 125,
+ "id" : 127,
"runtime_data" : [],
"primitives" : [
{
@@ -13004,7 +13206,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
- "id" : 126,
+ "id" : 128,
"runtime_data" : [],
"primitives" : [
{
@@ -13129,7 +13331,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
- "id" : 127,
+ "id" : 129,
"runtime_data" : [],
"primitives" : [
{
@@ -13288,7 +13490,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
- "id" : 128,
+ "id" : 130,
"runtime_data" : [],
"primitives" : [
{
@@ -13466,7 +13668,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
- "id" : 129,
+ "id" : 131,
"runtime_data" : [],
"primitives" : [
{
@@ -13678,7 +13880,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
- "id" : 130,
+ "id" : 132,
"runtime_data" : [],
"primitives" : [
{
@@ -13860,7 +14062,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
- "id" : 131,
+ "id" : 133,
"runtime_data" : [],
"primitives" : [
{
@@ -14076,7 +14278,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
- "id" : 132,
+ "id" : 134,
"runtime_data" : [],
"primitives" : [
{
@@ -14311,7 +14513,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
- "id" : 133,
+ "id" : 135,
"runtime_data" : [],
"primitives" : [
{
@@ -14580,7 +14782,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_report.do_report_encapsulation",
- "id" : 134,
+ "id" : 136,
"runtime_data" : [
{
"name" : "src_mac",
@@ -14686,7 +14888,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -14914,7 +15116,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 130,
+ "line" : 131,
"column" : 25,
"source_fragment" : "17; ..."
}
@@ -15100,7 +15302,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 161,
+ "line" : 162,
"column" : 31,
"source_fragment" : "0; ..."
}
@@ -15195,7 +15397,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 165,
+ "line" : 166,
"column" : 21,
"source_fragment" : "1; ..."
}
@@ -15242,7 +15444,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_sink.restore_header",
- "id" : 135,
+ "id" : 137,
"runtime_data" : [],
"primitives" : [
{
@@ -15287,7 +15489,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_sink.int_sink",
- "id" : 136,
+ "id" : 138,
"runtime_data" : [],
"primitives" : [
{
@@ -15618,7 +15820,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 137,
+ "id" : 139,
"runtime_data" : [],
"primitives" : [
{
@@ -15659,7 +15861,7 @@
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 138,
+ "id" : 140,
"runtime_data" : [],
"primitives" : [
{
@@ -15767,7 +15969,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 116,
+ "line" : 117,
"column" : 31,
"source_fragment" : "0x8847; ..."
}
@@ -15776,7 +15978,7 @@
},
{
"name" : "FabricEgress.egress_next.push_outer_vlan",
- "id" : 139,
+ "id" : 141,
"runtime_data" : [],
"primitives" : [
{
@@ -15846,7 +16048,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -15874,7 +16076,7 @@
},
{
"name" : "FabricEgress.egress_next.push_inner_vlan",
- "id" : 140,
+ "id" : 142,
"runtime_data" : [],
"primitives" : [
{
@@ -15963,7 +16165,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -15982,7 +16184,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -15991,7 +16193,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 141,
+ "id" : 143,
"runtime_data" : [],
"primitives" : [
{
@@ -16061,7 +16263,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -16089,7 +16291,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 142,
+ "id" : 144,
"runtime_data" : [],
"primitives" : [
{
@@ -16111,7 +16313,7 @@
},
{
"name" : "FabricEgress.egress_next.drop",
- "id" : 143,
+ "id" : 145,
"runtime_data" : [],
"primitives" : [
{
@@ -16133,7 +16335,7 @@
},
{
"name" : "FabricEgress.spgw.gtpu_encap",
- "id" : 144,
+ "id" : 146,
"runtime_data" : [],
"primitives" : [
{
@@ -16146,7 +16348,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 291,
+ "line" : 301,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.setValid()"
}
@@ -16165,7 +16367,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 292,
+ "line" : 302,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.version = 4"
}
@@ -16184,7 +16386,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 133,
+ "line" : 134,
"column" : 28,
"source_fragment" : "5; ..."
}
@@ -16203,7 +16405,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 294,
+ "line" : 304,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.dscp = 0"
}
@@ -16222,7 +16424,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 295,
+ "line" : 305,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.ecn = 0"
}
@@ -16264,7 +16466,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 296,
+ "line" : 306,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.total_len = hdr.ipv4.total_len ..."
}
@@ -16283,7 +16485,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 298,
+ "line" : 308,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.identification = 0x1513"
}
@@ -16302,7 +16504,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 299,
+ "line" : 309,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.flags = 0"
}
@@ -16321,7 +16523,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 300,
+ "line" : 310,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.frag_offset = 0"
}
@@ -16340,7 +16542,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 146,
+ "line" : 147,
"column" : 32,
"source_fragment" : "64; ..."
}
@@ -16359,7 +16561,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 130,
+ "line" : 131,
"column" : 25,
"source_fragment" : "17; ..."
}
@@ -16378,7 +16580,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 303,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.src_addr = fabric_md.spgw.tunnel_src_addr; ..."
}
@@ -16397,7 +16599,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 304,
+ "line" : 314,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.dst_addr = fabric_md.spgw.tunnel_dst_addr; ..."
}
@@ -16416,7 +16618,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 305,
+ "line" : 315,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.hdr_checksum = 0"
}
@@ -16431,7 +16633,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 307,
+ "line" : 317,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.setValid()"
}
@@ -16450,7 +16652,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 308,
+ "line" : 318,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.sport = fabric_md.spgw.tunnel_src_port; ..."
}
@@ -16469,7 +16671,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 309,
+ "line" : 319,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.dport = 2152"
}
@@ -16511,7 +16713,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 310,
+ "line" : 320,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.len = fabric_md.spgw.ipv4_len ..."
}
@@ -16530,7 +16732,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 312,
+ "line" : 322,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.checksum = 0"
}
@@ -16545,7 +16747,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 315,
+ "line" : 325,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.setValid()"
}
@@ -16564,7 +16766,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 316,
+ "line" : 326,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.version = 0x01"
}
@@ -16583,7 +16785,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 317,
+ "line" : 327,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.pt = 0x01"
}
@@ -16602,7 +16804,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 318,
+ "line" : 328,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.spare = 0"
}
@@ -16621,7 +16823,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 319,
+ "line" : 329,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.ex_flag = 0"
}
@@ -16640,7 +16842,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 320,
+ "line" : 330,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.seq_flag = 0"
}
@@ -16659,7 +16861,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 321,
+ "line" : 331,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.npdu_flag = 0"
}
@@ -16678,7 +16880,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 322,
+ "line" : 332,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.msgtype = 0xff"
}
@@ -16697,7 +16899,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 323,
+ "line" : 333,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.msglen = fabric_md.spgw.ipv4_len; ..."
}
@@ -16716,7 +16918,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 324,
+ "line" : 334,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.teid = fabric_md.spgw.teid; ..."
}
@@ -16725,7 +16927,7 @@
},
{
"name" : "act_23",
- "id" : 145,
+ "id" : 147,
"runtime_data" : [],
"primitives" : [
{
@@ -16742,7 +16944,7 @@
},
{
"name" : "act_24",
- "id" : 146,
+ "id" : 148,
"runtime_data" : [],
"primitives" : [
{
@@ -16793,7 +16995,7 @@
},
{
"name" : "act_25",
- "id" : 147,
+ "id" : 149,
"runtime_data" : [],
"primitives" : [
{
@@ -16815,7 +17017,7 @@
},
{
"name" : "act_26",
- "id" : 148,
+ "id" : 150,
"runtime_data" : [],
"primitives" : [
{
@@ -16837,7 +17039,7 @@
},
{
"name" : "act_27",
- "id" : 149,
+ "id" : 151,
"runtime_data" : [],
"primitives" : [
{
@@ -16859,7 +17061,7 @@
},
{
"name" : "act_28",
- "id" : 150,
+ "id" : 152,
"runtime_data" : [],
"primitives" : [
{
@@ -16908,7 +17110,7 @@
},
{
"name" : "act_29",
- "id" : 151,
+ "id" : 153,
"runtime_data" : [],
"primitives" : [
{
@@ -16930,7 +17132,7 @@
},
{
"name" : "act_30",
- "id" : 152,
+ "id" : 154,
"runtime_data" : [],
"primitives" : [
{
@@ -16979,7 +17181,7 @@
},
{
"name" : "act_31",
- "id" : 153,
+ "id" : 155,
"runtime_data" : [],
"primitives" : [
{
@@ -17001,7 +17203,7 @@
},
{
"name" : "act_32",
- "id" : 154,
+ "id" : 156,
"runtime_data" : [],
"primitives" : [
{
@@ -17050,7 +17252,7 @@
},
{
"name" : "act_33",
- "id" : 155,
+ "id" : 157,
"runtime_data" : [],
"primitives" : [
{
@@ -17067,7 +17269,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 333,
+ "line" : 343,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
}
@@ -17076,7 +17278,7 @@
},
{
"name" : "act_34",
- "id" : 156,
+ "id" : 158,
"runtime_data" : [],
"primitives" : [
{
@@ -17106,7 +17308,7 @@
},
{
"name" : "act_35",
- "id" : 157,
+ "id" : 159,
"runtime_data" : [],
"primitives" : [
{
@@ -17142,7 +17344,7 @@
},
{
"name" : "act_36",
- "id" : 158,
+ "id" : 160,
"runtime_data" : [],
"primitives" : [
{
@@ -17191,7 +17393,7 @@
},
{
"name" : "act_37",
- "id" : 159,
+ "id" : 161,
"runtime_data" : [],
"primitives" : [
{
@@ -17240,7 +17442,7 @@
},
{
"name" : "act_38",
- "id" : 160,
+ "id" : 162,
"runtime_data" : [],
"primitives" : [
{
@@ -17289,7 +17491,7 @@
},
{
"name" : "act_39",
- "id" : 161,
+ "id" : 163,
"runtime_data" : [],
"primitives" : [
{
@@ -17365,14 +17567,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [69],
+ "action_ids" : [71],
"actions" : ["act"],
"base_default_next" : "FabricIngress.spgw.interfaces",
"next_tables" : {
"act" : "FabricIngress.spgw.interfaces"
},
"default_entry" : {
- "action_id" : 69,
+ "action_id" : 71,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17431,14 +17633,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [70],
+ "action_ids" : [72],
"actions" : ["act_0"],
"base_default_next" : "node_7",
"next_tables" : {
"act_0" : "node_7"
},
"default_entry" : {
- "action_id" : 70,
+ "action_id" : 72,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17454,14 +17656,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [71],
+ "action_ids" : [73],
"actions" : ["act_1"],
"base_default_next" : "node_7",
"next_tables" : {
"act_1" : "node_7"
},
"default_entry" : {
- "action_id" : 71,
+ "action_id" : 73,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17606,7 +17808,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 168,
+ "line" : 177,
"column" : 10,
"source_fragment" : "uplink_pdrs"
},
@@ -17630,11 +17832,12 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [65, 14],
- "actions" : ["FabricIngress.spgw.load_pdr", "NoAction"],
+ "action_ids" : [65, 67, 14],
+ "actions" : ["FabricIngress.spgw.load_pdr", "FabricIngress.spgw.load_pdr_qos", "NoAction"],
"base_default_next" : "node_13",
"next_tables" : {
"FabricIngress.spgw.load_pdr" : "node_13",
+ "FabricIngress.spgw.load_pdr_qos" : "node_13",
"NoAction" : "node_13"
},
"default_entry" : {
@@ -17649,7 +17852,7 @@
"id" : 6,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 157,
+ "line" : 165,
"column" : 10,
"source_fragment" : "downlink_pdrs"
},
@@ -17667,11 +17870,12 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [64, 13],
- "actions" : ["FabricIngress.spgw.load_pdr", "NoAction"],
+ "action_ids" : [64, 66, 13],
+ "actions" : ["FabricIngress.spgw.load_pdr", "FabricIngress.spgw.load_pdr_qos", "NoAction"],
"base_default_next" : "node_13",
"next_tables" : {
"FabricIngress.spgw.load_pdr" : "node_13",
+ "FabricIngress.spgw.load_pdr_qos" : "node_13",
"NoAction" : "node_13"
},
"default_entry" : {
@@ -17686,7 +17890,7 @@
"id" : 7,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 256,
+ "line" : 266,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
},
@@ -17697,14 +17901,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [72],
+ "action_ids" : [74],
"actions" : ["act_2"],
"base_default_next" : "node_15",
"next_tables" : {
"act_2" : "node_15"
},
"default_entry" : {
- "action_id" : 72,
+ "action_id" : 74,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17849,7 +18053,7 @@
"id" : 9,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 224,
+ "line" : 234,
"column" : 10,
"source_fragment" : "fars"
},
@@ -17867,7 +18071,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [66, 67, 68],
+ "action_ids" : [68, 69, 70],
"actions" : ["FabricIngress.spgw.load_normal_far", "FabricIngress.spgw.load_tunnel_far", "FabricIngress.spgw.load_dbuf_far"],
"base_default_next" : "tbl_act_3",
"next_tables" : {
@@ -17876,7 +18080,7 @@
"FabricIngress.spgw.load_dbuf_far" : "tbl_act_3"
},
"default_entry" : {
- "action_id" : 66,
+ "action_id" : 68,
"action_const" : true,
"action_data" : ["0x1", "0x0"],
"action_entry_const" : true
@@ -17887,7 +18091,7 @@
"id" : 10,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 273,
+ "line" : 283,
"column" : 36,
"source_fragment" : "="
},
@@ -17898,14 +18102,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [73],
+ "action_ids" : [75],
"actions" : ["act_3"],
"base_default_next" : "node_19",
"next_tables" : {
"act_3" : "node_19"
},
"default_entry" : {
- "action_id" : 73,
+ "action_id" : 75,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17927,14 +18131,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [74],
+ "action_ids" : [76],
"actions" : ["act_4"],
"base_default_next" : "node_21",
"next_tables" : {
"act_4" : "node_21"
},
"default_entry" : {
- "action_id" : 74,
+ "action_id" : 76,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17956,14 +18160,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [75],
+ "action_ids" : [77],
"actions" : ["act_5"],
"base_default_next" : "node_23",
"next_tables" : {
"act_5" : "node_23"
},
"default_entry" : {
- "action_id" : 75,
+ "action_id" : 77,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -17985,14 +18189,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [76],
+ "action_ids" : [78],
"actions" : ["act_6"],
"base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
"next_tables" : {
"act_6" : "FabricIngress.filtering.ingress_port_vlan"
},
"default_entry" : {
- "action_id" : 76,
+ "action_id" : 78,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18577,14 +18781,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [77],
+ "action_ids" : [79],
"actions" : ["act_7"],
"base_default_next" : "node_45",
"next_tables" : {
"act_7" : "node_45"
},
"default_entry" : {
- "action_id" : 77,
+ "action_id" : 79,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18606,14 +18810,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [78],
+ "action_ids" : [80],
"actions" : ["act_8"],
"base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
"next_tables" : {
"act_8" : "FabricIngress.process_set_source_sink.tb_set_source"
},
"default_entry" : {
- "action_id" : 78,
+ "action_id" : 80,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18709,14 +18913,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [79],
+ "action_ids" : [81],
"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" : 79,
+ "action_id" : 81,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18780,14 +18984,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [82],
+ "action_ids" : [84],
"actions" : ["act_12"],
"base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
"next_tables" : {
"act_12" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp"
},
"default_entry" : {
- "action_id" : 82,
+ "action_id" : 84,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18846,14 +19050,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [80],
+ "action_ids" : [82],
"actions" : ["act_10"],
"base_default_next" : "node_57",
"next_tables" : {
"act_10" : "node_57"
},
"default_entry" : {
- "action_id" : 80,
+ "action_id" : 82,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18869,14 +19073,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [81],
+ "action_ids" : [83],
"actions" : ["act_11"],
"base_default_next" : "node_57",
"next_tables" : {
"act_11" : "node_57"
},
"default_entry" : {
- "action_id" : 81,
+ "action_id" : 83,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18898,14 +19102,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [83],
+ "action_ids" : [85],
"actions" : ["act_13"],
"base_default_next" : "node_59",
"next_tables" : {
"act_13" : "node_59"
},
"default_entry" : {
- "action_id" : 83,
+ "action_id" : 85,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -18976,14 +19180,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [84],
+ "action_ids" : [86],
"actions" : ["act_14"],
"base_default_next" : null,
"next_tables" : {
"act_14" : null
},
"default_entry" : {
- "action_id" : 84,
+ "action_id" : 86,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19005,14 +19209,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [86],
+ "action_ids" : [88],
"actions" : ["act_16"],
"base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6",
"next_tables" : {
"act_16" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v6"
},
"default_entry" : {
- "action_id" : 86,
+ "action_id" : 88,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19083,14 +19287,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [85],
+ "action_ids" : [87],
"actions" : ["act_15"],
"base_default_next" : null,
"next_tables" : {
"act_15" : null
},
"default_entry" : {
- "action_id" : 85,
+ "action_id" : 87,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19143,14 +19347,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [87],
+ "action_ids" : [89],
"actions" : ["act_17"],
"base_default_next" : "node_70",
"next_tables" : {
"act_17" : "node_70"
},
"default_entry" : {
- "action_id" : 87,
+ "action_id" : 89,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19166,14 +19370,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [88],
+ "action_ids" : [90],
"actions" : ["act_18"],
"base_default_next" : "node_70",
"next_tables" : {
"act_18" : "node_70"
},
"default_entry" : {
- "action_id" : 88,
+ "action_id" : 90,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19250,14 +19454,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [89],
+ "action_ids" : [91],
"actions" : ["act_19"],
"base_default_next" : null,
"next_tables" : {
"act_19" : null
},
"default_entry" : {
- "action_id" : 89,
+ "action_id" : 91,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19279,14 +19483,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [90],
+ "action_ids" : [92],
"actions" : ["act_20"],
"base_default_next" : null,
"next_tables" : {
"act_20" : null
},
"default_entry" : {
- "action_id" : 90,
+ "action_id" : 92,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19357,14 +19561,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [91],
+ "action_ids" : [93],
"actions" : ["act_21"],
"base_default_next" : null,
"next_tables" : {
"act_21" : null
},
"default_entry" : {
- "action_id" : 91,
+ "action_id" : 93,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19386,14 +19590,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [92],
+ "action_ids" : [94],
"actions" : ["act_22"],
"base_default_next" : null,
"next_tables" : {
"act_22" : null
},
"default_entry" : {
- "action_id" : 92,
+ "action_id" : 94,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -19484,7 +19688,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 246,
+ "line" : 256,
"column" : 16,
"source_fragment" : "fabric_md.spgw.src_iface == SPGW_IFACE_FROM_DBUF"
},
@@ -19510,7 +19714,7 @@
"id" : 3,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 250,
+ "line" : 260,
"column" : 16,
"source_fragment" : "hdr.gtpu.isValid()"
},
@@ -19533,7 +19737,7 @@
"id" : 4,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 255,
+ "line" : 265,
"column" : 16,
"source_fragment" : "fabric_md.spgw.src_iface != SPGW_IFACE_FROM_DBUF"
},
@@ -19559,7 +19763,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 260,
+ "line" : 270,
"column" : 16,
"source_fragment" : "fabric_md.spgw.needs_gtpu_decap == true"
},
@@ -20120,14 +20324,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [145],
+ "action_ids" : [147],
"actions" : ["act_23"],
"base_default_next" : "node_83",
"next_tables" : {
"act_23" : "node_83"
},
"default_entry" : {
- "action_id" : 145,
+ "action_id" : 147,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20149,14 +20353,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [146],
+ "action_ids" : [148],
"actions" : ["act_24"],
"base_default_next" : "node_85",
"next_tables" : {
"act_24" : "node_85"
},
"default_entry" : {
- "action_id" : 146,
+ "action_id" : 148,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20178,14 +20382,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [147],
+ "action_ids" : [149],
"actions" : ["act_25"],
"base_default_next" : "node_87",
"next_tables" : {
"act_25" : "node_87"
},
"default_entry" : {
- "action_id" : 147,
+ "action_id" : 149,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20207,14 +20411,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [137],
+ "action_ids" : [139],
"actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
"base_default_next" : "node_91",
"next_tables" : {
"FabricEgress.egress_next.pop_mpls_if_present" : "node_91"
},
"default_entry" : {
- "action_id" : 137,
+ "action_id" : 139,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20236,14 +20440,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [138],
+ "action_ids" : [140],
"actions" : ["FabricEgress.egress_next.set_mpls"],
"base_default_next" : "node_91",
"next_tables" : {
"FabricEgress.egress_next.set_mpls" : "node_91"
},
"default_entry" : {
- "action_id" : 138,
+ "action_id" : 140,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20265,14 +20469,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [139],
+ "action_ids" : [141],
"actions" : ["FabricEgress.egress_next.push_outer_vlan"],
"base_default_next" : "tbl_egress_next_push_inner_vlan",
"next_tables" : {
"FabricEgress.egress_next.push_outer_vlan" : "tbl_egress_next_push_inner_vlan"
},
"default_entry" : {
- "action_id" : 139,
+ "action_id" : 141,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20294,14 +20498,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [140],
+ "action_ids" : [142],
"actions" : ["FabricEgress.egress_next.push_inner_vlan"],
"base_default_next" : "node_96",
"next_tables" : {
"FabricEgress.egress_next.push_inner_vlan" : "node_96"
},
"default_entry" : {
- "action_id" : 140,
+ "action_id" : 142,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20323,14 +20527,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [148],
+ "action_ids" : [150],
"actions" : ["act_26"],
"base_default_next" : "FabricEgress.egress_next.egress_vlan",
"next_tables" : {
"act_26" : "FabricEgress.egress_next.egress_vlan"
},
"default_entry" : {
- "action_id" : 148,
+ "action_id" : 150,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20365,7 +20569,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [141, 142, 143],
+ "action_ids" : [143, 144, 145],
"actions" : ["FabricEgress.egress_next.push_vlan", "FabricEgress.egress_next.pop_vlan", "FabricEgress.egress_next.drop"],
"base_default_next" : "node_96",
"next_tables" : {
@@ -20374,7 +20578,7 @@
"FabricEgress.egress_next.drop" : "node_96"
},
"default_entry" : {
- "action_id" : 143,
+ "action_id" : 145,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20396,14 +20600,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [150],
+ "action_ids" : [152],
"actions" : ["act_28"],
"base_default_next" : "node_98",
"next_tables" : {
"act_28" : "node_98"
},
"default_entry" : {
- "action_id" : 150,
+ "action_id" : 152,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20425,14 +20629,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [149],
+ "action_ids" : [151],
"actions" : ["act_27"],
"base_default_next" : "node_108",
"next_tables" : {
"act_27" : "node_108"
},
"default_entry" : {
- "action_id" : 149,
+ "action_id" : 151,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20454,14 +20658,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [152],
+ "action_ids" : [154],
"actions" : ["act_30"],
"base_default_next" : "node_102",
"next_tables" : {
"act_30" : "node_102"
},
"default_entry" : {
- "action_id" : 152,
+ "action_id" : 154,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20483,14 +20687,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [151],
+ "action_ids" : [153],
"actions" : ["act_29"],
"base_default_next" : "node_108",
"next_tables" : {
"act_29" : "node_108"
},
"default_entry" : {
- "action_id" : 151,
+ "action_id" : 153,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20512,14 +20716,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [154],
+ "action_ids" : [156],
"actions" : ["act_32"],
"base_default_next" : "node_106",
"next_tables" : {
"act_32" : "node_106"
},
"default_entry" : {
- "action_id" : 154,
+ "action_id" : 156,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20541,14 +20745,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [153],
+ "action_ids" : [155],
"actions" : ["act_31"],
"base_default_next" : "node_108",
"next_tables" : {
"act_31" : "node_108"
},
"default_entry" : {
- "action_id" : 153,
+ "action_id" : 155,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20559,7 +20763,7 @@
"id" : 66,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 330,
+ "line" : 340,
"column" : 16,
"source_fragment" : "gtpu_encap()"
},
@@ -20570,14 +20774,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [144],
+ "action_ids" : [146],
"actions" : ["FabricEgress.spgw.gtpu_encap"],
"base_default_next" : "node_111",
"next_tables" : {
"FabricEgress.spgw.gtpu_encap" : "node_111"
},
"default_entry" : {
- "action_id" : 144,
+ "action_id" : 146,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20588,7 +20792,7 @@
"id" : 67,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 333,
+ "line" : 343,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
},
@@ -20599,14 +20803,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [155],
+ "action_ids" : [157],
"actions" : ["act_33"],
"base_default_next" : "node_113",
"next_tables" : {
"act_33" : "node_113"
},
"default_entry" : {
- "action_id" : 155,
+ "action_id" : 157,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20628,14 +20832,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [98],
+ "action_ids" : [100],
"actions" : ["FabricEgress.bng_egress.downstream.encap_v4"],
"base_default_next" : "node_118",
"next_tables" : {
"FabricEgress.bng_egress.downstream.encap_v4" : "node_118"
},
"default_entry" : {
- "action_id" : 98,
+ "action_id" : 100,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20657,14 +20861,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [99],
+ "action_ids" : [101],
"actions" : ["FabricEgress.bng_egress.downstream.encap_v6"],
"base_default_next" : "node_118",
"next_tables" : {
"FabricEgress.bng_egress.downstream.encap_v6" : "node_118"
},
"default_entry" : {
- "action_id" : 99,
+ "action_id" : 101,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20711,7 +20915,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [100, 93],
+ "action_ids" : [102, 95],
"actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
"base_default_next" : "node_121",
"next_tables" : {
@@ -20719,7 +20923,7 @@
"nop" : "node_121"
},
"default_entry" : {
- "action_id" : 93,
+ "action_id" : 95,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20735,14 +20939,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [156],
+ "action_ids" : [158],
"actions" : ["act_34"],
"base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
"next_tables" : {
"act_34" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
},
"default_entry" : {
- "action_id" : 156,
+ "action_id" : 158,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20771,7 +20975,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [101, 94],
+ "action_ids" : [103, 96],
"actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
"base_default_next" : "node_124",
"next_tables" : {
@@ -20779,7 +20983,7 @@
"nop" : "node_124"
},
"default_entry" : {
- "action_id" : 94,
+ "action_id" : 96,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20801,14 +21005,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [157],
+ "action_ids" : [159],
"actions" : ["act_35"],
"base_default_next" : "node_126",
"next_tables" : {
"act_35" : "node_126"
},
"default_entry" : {
- "action_id" : 157,
+ "action_id" : 159,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -20837,7 +21041,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 96],
+ "action_ids" : [104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 98],
"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" : {
@@ -20860,7 +21064,7 @@
"NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
},
"default_entry" : {
- "action_id" : 96,
+ "action_id" : 98,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -20880,7 +21084,7 @@
}
],
"action_entry" : {
- "action_id" : 102,
+ "action_id" : 104,
"action_data" : []
},
"priority" : 1
@@ -20899,7 +21103,7 @@
}
],
"action_entry" : {
- "action_id" : 103,
+ "action_id" : 105,
"action_data" : []
},
"priority" : 2
@@ -20918,7 +21122,7 @@
}
],
"action_entry" : {
- "action_id" : 104,
+ "action_id" : 106,
"action_data" : []
},
"priority" : 3
@@ -20937,7 +21141,7 @@
}
],
"action_entry" : {
- "action_id" : 105,
+ "action_id" : 107,
"action_data" : []
},
"priority" : 4
@@ -20956,7 +21160,7 @@
}
],
"action_entry" : {
- "action_id" : 106,
+ "action_id" : 108,
"action_data" : []
},
"priority" : 5
@@ -20975,7 +21179,7 @@
}
],
"action_entry" : {
- "action_id" : 107,
+ "action_id" : 109,
"action_data" : []
},
"priority" : 6
@@ -20994,7 +21198,7 @@
}
],
"action_entry" : {
- "action_id" : 108,
+ "action_id" : 110,
"action_data" : []
},
"priority" : 7
@@ -21013,7 +21217,7 @@
}
],
"action_entry" : {
- "action_id" : 109,
+ "action_id" : 111,
"action_data" : []
},
"priority" : 8
@@ -21032,7 +21236,7 @@
}
],
"action_entry" : {
- "action_id" : 110,
+ "action_id" : 112,
"action_data" : []
},
"priority" : 9
@@ -21051,7 +21255,7 @@
}
],
"action_entry" : {
- "action_id" : 111,
+ "action_id" : 113,
"action_data" : []
},
"priority" : 10
@@ -21070,7 +21274,7 @@
}
],
"action_entry" : {
- "action_id" : 112,
+ "action_id" : 114,
"action_data" : []
},
"priority" : 11
@@ -21089,7 +21293,7 @@
}
],
"action_entry" : {
- "action_id" : 113,
+ "action_id" : 115,
"action_data" : []
},
"priority" : 12
@@ -21108,7 +21312,7 @@
}
],
"action_entry" : {
- "action_id" : 114,
+ "action_id" : 116,
"action_data" : []
},
"priority" : 13
@@ -21127,7 +21331,7 @@
}
],
"action_entry" : {
- "action_id" : 115,
+ "action_id" : 117,
"action_data" : []
},
"priority" : 14
@@ -21146,7 +21350,7 @@
}
],
"action_entry" : {
- "action_id" : 116,
+ "action_id" : 118,
"action_data" : []
},
"priority" : 15
@@ -21165,7 +21369,7 @@
}
],
"action_entry" : {
- "action_id" : 117,
+ "action_id" : 119,
"action_data" : []
},
"priority" : 16
@@ -21195,7 +21399,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 97],
+ "action_ids" : [120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 99],
"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_36",
"next_tables" : {
@@ -21218,7 +21422,7 @@
"NoAction" : "tbl_act_36"
},
"default_entry" : {
- "action_id" : 97,
+ "action_id" : 99,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -21238,7 +21442,7 @@
}
],
"action_entry" : {
- "action_id" : 118,
+ "action_id" : 120,
"action_data" : []
},
"priority" : 1
@@ -21257,7 +21461,7 @@
}
],
"action_entry" : {
- "action_id" : 119,
+ "action_id" : 121,
"action_data" : []
},
"priority" : 2
@@ -21276,7 +21480,7 @@
}
],
"action_entry" : {
- "action_id" : 120,
+ "action_id" : 122,
"action_data" : []
},
"priority" : 3
@@ -21295,7 +21499,7 @@
}
],
"action_entry" : {
- "action_id" : 121,
+ "action_id" : 123,
"action_data" : []
},
"priority" : 4
@@ -21314,7 +21518,7 @@
}
],
"action_entry" : {
- "action_id" : 122,
+ "action_id" : 124,
"action_data" : []
},
"priority" : 5
@@ -21333,7 +21537,7 @@
}
],
"action_entry" : {
- "action_id" : 123,
+ "action_id" : 125,
"action_data" : []
},
"priority" : 6
@@ -21352,7 +21556,7 @@
}
],
"action_entry" : {
- "action_id" : 124,
+ "action_id" : 126,
"action_data" : []
},
"priority" : 7
@@ -21371,7 +21575,7 @@
}
],
"action_entry" : {
- "action_id" : 125,
+ "action_id" : 127,
"action_data" : []
},
"priority" : 8
@@ -21390,7 +21594,7 @@
}
],
"action_entry" : {
- "action_id" : 126,
+ "action_id" : 128,
"action_data" : []
},
"priority" : 9
@@ -21409,7 +21613,7 @@
}
],
"action_entry" : {
- "action_id" : 127,
+ "action_id" : 129,
"action_data" : []
},
"priority" : 10
@@ -21428,7 +21632,7 @@
}
],
"action_entry" : {
- "action_id" : 128,
+ "action_id" : 130,
"action_data" : []
},
"priority" : 11
@@ -21447,7 +21651,7 @@
}
],
"action_entry" : {
- "action_id" : 129,
+ "action_id" : 131,
"action_data" : []
},
"priority" : 12
@@ -21466,7 +21670,7 @@
}
],
"action_entry" : {
- "action_id" : 130,
+ "action_id" : 132,
"action_data" : []
},
"priority" : 13
@@ -21485,7 +21689,7 @@
}
],
"action_entry" : {
- "action_id" : 131,
+ "action_id" : 133,
"action_data" : []
},
"priority" : 14
@@ -21504,7 +21708,7 @@
}
],
"action_entry" : {
- "action_id" : 132,
+ "action_id" : 134,
"action_data" : []
},
"priority" : 15
@@ -21523,7 +21727,7 @@
}
],
"action_entry" : {
- "action_id" : 133,
+ "action_id" : 135,
"action_data" : []
},
"priority" : 16
@@ -21546,14 +21750,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [159],
+ "action_ids" : [161],
"actions" : ["act_37"],
"base_default_next" : "node_130",
"next_tables" : {
"act_37" : "node_130"
},
"default_entry" : {
- "action_id" : 159,
+ "action_id" : 161,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -21575,14 +21779,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [158],
+ "action_ids" : [160],
"actions" : ["act_36"],
"base_default_next" : "node_132",
"next_tables" : {
"act_36" : "node_132"
},
"default_entry" : {
- "action_id" : 158,
+ "action_id" : 160,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -21604,14 +21808,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [160],
+ "action_ids" : [162],
"actions" : ["act_38"],
"base_default_next" : "node_134",
"next_tables" : {
"act_38" : "node_134"
},
"default_entry" : {
- "action_id" : 160,
+ "action_id" : 162,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -21633,14 +21837,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [161],
+ "action_ids" : [163],
"actions" : ["act_39"],
"base_default_next" : "node_136",
"next_tables" : {
"act_39" : "node_136"
},
"default_entry" : {
- "action_id" : 161,
+ "action_id" : 163,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -21662,7 +21866,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [134, 95],
+ "action_ids" : [136, 97],
"actions" : ["FabricEgress.process_int_main.process_int_report.do_report_encapsulation", "nop"],
"base_default_next" : "node_138",
"next_tables" : {
@@ -21670,7 +21874,7 @@
"nop" : "node_138"
},
"default_entry" : {
- "action_id" : 95,
+ "action_id" : 97,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -21692,14 +21896,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [135],
+ "action_ids" : [137],
"actions" : ["FabricEgress.process_int_main.process_int_sink.restore_header"],
"base_default_next" : "tbl_process_int_main_process_int_sink_int_sink",
"next_tables" : {
"FabricEgress.process_int_main.process_int_sink.restore_header" : "tbl_process_int_main_process_int_sink_int_sink"
},
"default_entry" : {
- "action_id" : 135,
+ "action_id" : 137,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -21721,14 +21925,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [136],
+ "action_ids" : [138],
"actions" : ["FabricEgress.process_int_main.process_int_sink.int_sink"],
"base_default_next" : null,
"next_tables" : {
"FabricEgress.process_int_main.process_int_sink.int_sink" : null
},
"default_entry" : {
- "action_id" : 136,
+ "action_id" : 138,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -22123,7 +22327,7 @@
"id" : 38,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 328,
+ "line" : 338,
"column" : 12,
"source_fragment" : "fabric_md.spgw.skip_spgw == false"
},
@@ -22156,7 +22360,7 @@
"id" : 39,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 329,
+ "line" : 339,
"column" : 16,
"source_fragment" : "fabric_md.spgw.needs_gtpu_encap == true"
},
@@ -22189,7 +22393,7 @@
"id" : 40,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 332,
+ "line" : 342,
"column" : 16,
"source_fragment" : "fabric_md.spgw.skip_egress_pdr_ctr == false"
},
@@ -22645,7 +22849,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 349,
+ "line" : 359,
"column" : 8,
"source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
},
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
index c02e04b..7e482b4 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
@@ -740,6 +740,9 @@
id: 16800614
}
action_refs {
+ id: 16785920
+ }
+ action_refs {
id: 16800567
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -768,6 +771,9 @@
id: 16800614
}
action_refs {
+ id: 16785920
+ }
+ action_refs {
id: 16800567
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -1381,6 +1387,33 @@
}
actions {
preamble {
+ id: 16785920
+ name: "FabricIngress.spgw.load_pdr_qos"
+ alias: "load_pdr_qos"
+ }
+ params {
+ id: 1
+ name: "ctr_id"
+ bitwidth: 32
+ }
+ params {
+ id: 2
+ name: "far_id"
+ bitwidth: 32
+ }
+ params {
+ id: 3
+ name: "needs_gtpu_decap"
+ bitwidth: 1
+ }
+ params {
+ id: 4
+ name: "qid"
+ bitwidth: 5
+ }
+}
+actions {
+ preamble {
id: 16820307
name: "FabricIngress.spgw.load_normal_far"
alias: "load_normal_far"
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
index 739695a..f61bb56 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
@@ -2691,7 +2691,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 155,
+ "line" : 156,
"column" : 36,
"source_fragment" : "4; ..."
}
@@ -3109,7 +3109,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 151,
+ "line" : 152,
"column" : 24,
"source_fragment" : "0x1; ..."
}
@@ -9197,7 +9197,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 116,
+ "line" : 117,
"column" : 31,
"source_fragment" : "0x8847; ..."
}
@@ -9276,7 +9276,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
index 0f817fa..dfe1598 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/bmv2.json
@@ -1540,7 +1540,7 @@
"id" : 15,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 286,
+ "line" : 296,
"column" : 53,
"source_fragment" : "pdr_counter"
},
@@ -1616,7 +1616,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 349,
+ "line" : 359,
"column" : 8,
"source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
},
@@ -2637,7 +2637,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -2856,7 +2856,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3060,7 +3060,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3279,7 +3279,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3464,7 +3464,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3683,7 +3683,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3887,7 +3887,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -4106,7 +4106,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -4351,7 +4351,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 108,
+ "line" : 109,
"column" : 44,
"source_fragment" : "8w0; ..."
}
@@ -4582,16 +4582,24 @@
]
},
{
- "name" : "FabricIngress.spgw.load_normal_far",
+ "name" : "FabricIngress.spgw.load_pdr_qos",
"id" : 43,
"runtime_data" : [
{
- "name" : "drop",
+ "name" : "ctr_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "far_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "needs_gtpu_decap",
"bitwidth" : 1
},
{
- "name" : "notify_cp",
- "bitwidth" : 1
+ "name" : "qid",
+ "bitwidth" : 5
}
],
"primitives" : [
@@ -4600,38 +4608,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ctr_id24"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
+ "type" : "runtime_data",
+ "value" : 0
}
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 186,
- "column" : 34,
- "source_fragment" : "= (bool)drop; ..."
+ "line" : 151,
+ "column" : 30,
+ "source_fragment" : "= ctr_id; ..."
}
},
{
@@ -4639,38 +4627,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next7"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_far_id25"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
+ "type" : "runtime_data",
+ "value" : 1
}
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 187,
- "column" : 28,
- "source_fragment" : "= (bool)drop; ..."
+ "line" : 152,
+ "column" : 30,
+ "source_fragment" : "= far_id; ..."
}
},
{
@@ -4678,7 +4646,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_decap30"]
},
{
"type" : "expression",
@@ -4693,7 +4661,7 @@
"op" : "!=",
"left" : {
"type" : "local",
- "value" : 1
+ "value" : 2
},
"right" : {
"type" : "hexstr",
@@ -4707,40 +4675,32 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 188,
- "column" : 36,
- "source_fragment" : "= (bool)notify_cp; ..."
+ "line" : 153,
+ "column" : 40,
+ "source_fragment" : "= (bool)needs_gtpu_decap; ..."
}
}
]
},
{
- "name" : "FabricIngress.spgw.load_tunnel_far",
+ "name" : "FabricIngress.spgw.load_pdr_qos",
"id" : 44,
"runtime_data" : [
{
- "name" : "drop",
+ "name" : "ctr_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "far_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "needs_gtpu_decap",
"bitwidth" : 1
},
{
- "name" : "notify_cp",
- "bitwidth" : 1
- },
- {
- "name" : "tunnel_src_port",
- "bitwidth" : 16
- },
- {
- "name" : "tunnel_src_addr",
- "bitwidth" : 32
- },
- {
- "name" : "tunnel_dst_addr",
- "bitwidth" : 32
- },
- {
- "name" : "teid",
- "bitwidth" : 32
+ "name" : "qid",
+ "bitwidth" : 5
}
],
"primitives" : [
@@ -4749,7 +4709,45 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ctr_id24"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 151,
+ "column" : 30,
+ "source_fragment" : "= ctr_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_far_id25"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 1
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 152,
+ "column" : 30,
+ "source_fragment" : "= far_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_decap30"]
},
{
"type" : "expression",
@@ -4764,7 +4762,7 @@
"op" : "!=",
"left" : {
"type" : "local",
- "value" : 0
+ "value" : 2
},
"right" : {
"type" : "hexstr",
@@ -4778,274 +4776,15 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 197,
- "column" : 34,
- "source_fragment" : "= (bool)drop; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 198,
- "column" : 28,
- "source_fragment" : "= (bool)drop; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 1
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 199,
- "column" : 36,
- "source_fragment" : "= (bool)notify_cp; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_encap29"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 201,
+ "line" : 153,
"column" : 40,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid20"]
- },
- {
- "type" : "runtime_data",
- "value" : 5
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 202,
- "column" : 28,
- "source_fragment" : "= teid; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_port21"]
- },
- {
- "type" : "runtime_data",
- "value" : 2
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 203,
- "column" : 39,
- "source_fragment" : "= tunnel_src_port; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_addr22"]
- },
- {
- "type" : "runtime_data",
- "value" : 3
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 204,
- "column" : 39,
- "source_fragment" : "= tunnel_src_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_dst_addr23"]
- },
- {
- "type" : "runtime_data",
- "value" : 4
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 205,
- "column" : 39,
- "source_fragment" : "= tunnel_dst_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ipv4_src_addr15"]
- },
- {
- "type" : "runtime_data",
- "value" : 3
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 207,
- "column" : 32,
- "source_fragment" : "= tunnel_src_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ipv4_dst_addr16"]
- },
- {
- "type" : "runtime_data",
- "value" : 4
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 208,
- "column" : 32,
- "source_fragment" : "= tunnel_dst_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
- },
- {
- "type" : "runtime_data",
- "value" : 2
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 209,
- "column" : 27,
- "source_fragment" : "= tunnel_src_port; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
- },
- {
- "type" : "hexstr",
- "value" : "0x0868"
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 210,
- "column" : 27,
- "source_fragment" : "= 2152; ..."
+ "source_fragment" : "= (bool)needs_gtpu_decap; ..."
}
}
]
},
{
- "name" : "FabricIngress.spgw.load_dbuf_far",
+ "name" : "FabricIngress.spgw.load_normal_far",
"id" : 45,
"runtime_data" : [
{
@@ -5055,6 +4794,139 @@
{
"name" : "notify_cp",
"bitwidth" : 1
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 196,
+ "column" : 34,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_next7"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 197,
+ "column" : 28,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 1
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 198,
+ "column" : 36,
+ "source_fragment" : "= (bool)notify_cp; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.spgw.load_tunnel_far",
+ "id" : 46,
+ "runtime_data" : [
+ {
+ "name" : "drop",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "notify_cp",
+ "bitwidth" : 1
},
{
"name" : "tunnel_src_port",
@@ -5108,7 +4980,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 197,
+ "line" : 207,
"column" : 34,
"source_fragment" : "= (bool)drop; ..."
}
@@ -5147,7 +5019,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 198,
+ "line" : 208,
"column" : 28,
"source_fragment" : "= (bool)drop; ..."
}
@@ -5186,7 +5058,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 199,
+ "line" : 209,
"column" : 36,
"source_fragment" : "= (bool)notify_cp; ..."
}
@@ -5215,7 +5087,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 201,
+ "line" : 211,
"column" : 40,
"source_fragment" : "= true; ..."
}
@@ -5234,7 +5106,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 202,
+ "line" : 212,
"column" : 28,
"source_fragment" : "= teid; ..."
}
@@ -5253,7 +5125,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 203,
+ "line" : 213,
"column" : 39,
"source_fragment" : "= tunnel_src_port; ..."
}
@@ -5272,7 +5144,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 204,
+ "line" : 214,
"column" : 39,
"source_fragment" : "= tunnel_src_addr; ..."
}
@@ -5291,7 +5163,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 205,
+ "line" : 215,
"column" : 39,
"source_fragment" : "= tunnel_dst_addr; ..."
}
@@ -5310,7 +5182,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 207,
+ "line" : 217,
"column" : 32,
"source_fragment" : "= tunnel_src_addr; ..."
}
@@ -5329,7 +5201,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 208,
+ "line" : 218,
"column" : 32,
"source_fragment" : "= tunnel_dst_addr; ..."
}
@@ -5348,7 +5220,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 209,
+ "line" : 219,
"column" : 27,
"source_fragment" : "= tunnel_src_port; ..."
}
@@ -5367,7 +5239,337 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 210,
+ "line" : 220,
+ "column" : 27,
+ "source_fragment" : "= 2152; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.spgw.load_dbuf_far",
+ "id" : 47,
+ "runtime_data" : [
+ {
+ "name" : "drop",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "notify_cp",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "tunnel_src_port",
+ "bitwidth" : 16
+ },
+ {
+ "name" : "tunnel_src_addr",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "tunnel_dst_addr",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "teid",
+ "bitwidth" : 32
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 207,
+ "column" : 34,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_next7"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 208,
+ "column" : 28,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 1
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 209,
+ "column" : 36,
+ "source_fragment" : "= (bool)notify_cp; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_encap29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 211,
+ "column" : 40,
+ "source_fragment" : "= true; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid20"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 5
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 212,
+ "column" : 28,
+ "source_fragment" : "= teid; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_port21"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 2
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 213,
+ "column" : 39,
+ "source_fragment" : "= tunnel_src_port; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_addr22"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 3
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 214,
+ "column" : 39,
+ "source_fragment" : "= tunnel_src_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_dst_addr23"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 4
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 215,
+ "column" : 39,
+ "source_fragment" : "= tunnel_dst_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._ipv4_src_addr15"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 3
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 217,
+ "column" : 32,
+ "source_fragment" : "= tunnel_src_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._ipv4_dst_addr16"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 4
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 218,
+ "column" : 32,
+ "source_fragment" : "= tunnel_dst_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 2
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 219,
+ "column" : 27,
+ "source_fragment" : "= tunnel_src_port; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x0868"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 220,
"column" : 27,
"source_fragment" : "= 2152; ..."
}
@@ -5396,7 +5598,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 221,
+ "line" : 231,
"column" : 43,
"source_fragment" : "= true; ..."
}
@@ -5405,7 +5607,7 @@
},
{
"name" : "act",
- "id" : 46,
+ "id" : 48,
"runtime_data" : [],
"primitives" : [
{
@@ -5485,7 +5687,7 @@
},
{
"name" : "act_0",
- "id" : 47,
+ "id" : 49,
"runtime_data" : [],
"primitives" : [
{
@@ -5515,7 +5717,7 @@
},
{
"name" : "act_1",
- "id" : 48,
+ "id" : 50,
"runtime_data" : [],
"primitives" : [
{
@@ -5545,7 +5747,7 @@
},
{
"name" : "act_2",
- "id" : 49,
+ "id" : 51,
"runtime_data" : [],
"primitives" : [
{
@@ -5562,7 +5764,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 256,
+ "line" : 266,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
}
@@ -5571,7 +5773,7 @@
},
{
"name" : "act_3",
- "id" : 50,
+ "id" : 52,
"runtime_data" : [],
"primitives" : [
{
@@ -5588,7 +5790,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 273,
+ "line" : 283,
"column" : 36,
"source_fragment" : "= hdr.ipv4.total_len; ..."
}
@@ -5597,7 +5799,7 @@
},
{
"name" : "act_4",
- "id" : 51,
+ "id" : 53,
"runtime_data" : [],
"primitives" : [
{
@@ -5661,7 +5863,7 @@
},
{
"name" : "act_5",
- "id" : 52,
+ "id" : 54,
"runtime_data" : [],
"primitives" : [
{
@@ -5687,7 +5889,7 @@
},
{
"name" : "act_6",
- "id" : 53,
+ "id" : 55,
"runtime_data" : [],
"primitives" : [
{
@@ -5745,7 +5947,7 @@
},
{
"name" : "act_7",
- "id" : 54,
+ "id" : 56,
"runtime_data" : [],
"primitives" : [
{
@@ -5803,31 +6005,31 @@
},
{
"name" : "nop",
- "id" : 55,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "nop",
- "id" : 56,
- "runtime_data" : [],
- "primitives" : []
- },
- {
- "name" : "NoAction",
"id" : 57,
"runtime_data" : [],
"primitives" : []
},
{
- "name" : "NoAction",
+ "name" : "nop",
"id" : 58,
"runtime_data" : [],
"primitives" : []
},
{
- "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+ "name" : "NoAction",
"id" : 59,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "NoAction",
+ "id" : 60,
+ "runtime_data" : [],
+ "primitives" : []
+ },
+ {
+ "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+ "id" : 61,
"runtime_data" : [
{
"name" : "max_hop",
@@ -5895,7 +6097,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 155,
+ "line" : 156,
"column" : 36,
"source_fragment" : "4; ..."
}
@@ -6313,7 +6515,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 151,
+ "line" : 152,
"column" : 24,
"source_fragment" : "0x1; ..."
}
@@ -6322,7 +6524,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
- "id" : 60,
+ "id" : 62,
"runtime_data" : [
{
"name" : "switch_id",
@@ -6382,13 +6584,13 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
- "id" : 61,
+ "id" : 63,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
- "id" : 62,
+ "id" : 64,
"runtime_data" : [],
"primitives" : [
{
@@ -6545,7 +6747,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
- "id" : 63,
+ "id" : 65,
"runtime_data" : [],
"primitives" : [
{
@@ -6670,7 +6872,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
- "id" : 64,
+ "id" : 66,
"runtime_data" : [],
"primitives" : [
{
@@ -6861,7 +7063,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
- "id" : 65,
+ "id" : 67,
"runtime_data" : [],
"primitives" : [
{
@@ -7031,7 +7233,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
- "id" : 66,
+ "id" : 68,
"runtime_data" : [],
"primitives" : [
{
@@ -7267,7 +7469,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
- "id" : 67,
+ "id" : 69,
"runtime_data" : [],
"primitives" : [
{
@@ -7471,7 +7673,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
- "id" : 68,
+ "id" : 70,
"runtime_data" : [],
"primitives" : [
{
@@ -7741,7 +7943,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
- "id" : 69,
+ "id" : 71,
"runtime_data" : [],
"primitives" : [
{
@@ -7866,7 +8068,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
- "id" : 70,
+ "id" : 72,
"runtime_data" : [],
"primitives" : [
{
@@ -8057,7 +8259,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
- "id" : 71,
+ "id" : 73,
"runtime_data" : [],
"primitives" : [
{
@@ -8216,7 +8418,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
- "id" : 72,
+ "id" : 74,
"runtime_data" : [],
"primitives" : [
{
@@ -8441,7 +8643,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
- "id" : 73,
+ "id" : 75,
"runtime_data" : [],
"primitives" : [
{
@@ -8645,7 +8847,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
- "id" : 74,
+ "id" : 76,
"runtime_data" : [],
"primitives" : [
{
@@ -8915,7 +9117,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
- "id" : 75,
+ "id" : 77,
"runtime_data" : [],
"primitives" : [
{
@@ -9153,7 +9355,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
- "id" : 76,
+ "id" : 78,
"runtime_data" : [],
"primitives" : [
{
@@ -9457,13 +9659,13 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
- "id" : 77,
+ "id" : 79,
"runtime_data" : [],
"primitives" : []
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
- "id" : 78,
+ "id" : 80,
"runtime_data" : [],
"primitives" : [
{
@@ -9588,7 +9790,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
- "id" : 79,
+ "id" : 81,
"runtime_data" : [],
"primitives" : [
{
@@ -9732,7 +9934,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
- "id" : 80,
+ "id" : 82,
"runtime_data" : [],
"primitives" : [
{
@@ -9910,7 +10112,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
- "id" : 81,
+ "id" : 83,
"runtime_data" : [],
"primitives" : [
{
@@ -10058,7 +10260,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
- "id" : 82,
+ "id" : 84,
"runtime_data" : [],
"primitives" : [
{
@@ -10240,7 +10442,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
- "id" : 83,
+ "id" : 85,
"runtime_data" : [],
"primitives" : [
{
@@ -10441,7 +10643,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
- "id" : 84,
+ "id" : 86,
"runtime_data" : [],
"primitives" : [
{
@@ -10676,7 +10878,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
- "id" : 85,
+ "id" : 87,
"runtime_data" : [],
"primitives" : [
{
@@ -10801,7 +11003,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
- "id" : 86,
+ "id" : 88,
"runtime_data" : [],
"primitives" : [
{
@@ -10960,7 +11162,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
- "id" : 87,
+ "id" : 89,
"runtime_data" : [],
"primitives" : [
{
@@ -11138,7 +11340,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
- "id" : 88,
+ "id" : 90,
"runtime_data" : [],
"primitives" : [
{
@@ -11350,7 +11552,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
- "id" : 89,
+ "id" : 91,
"runtime_data" : [],
"primitives" : [
{
@@ -11532,7 +11734,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
- "id" : 90,
+ "id" : 92,
"runtime_data" : [],
"primitives" : [
{
@@ -11748,7 +11950,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
- "id" : 91,
+ "id" : 93,
"runtime_data" : [],
"primitives" : [
{
@@ -11983,7 +12185,7 @@
},
{
"name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
- "id" : 92,
+ "id" : 94,
"runtime_data" : [],
"primitives" : [
{
@@ -12252,7 +12454,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 93,
+ "id" : 95,
"runtime_data" : [],
"primitives" : [
{
@@ -12293,7 +12495,7 @@
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 94,
+ "id" : 96,
"runtime_data" : [],
"primitives" : [
{
@@ -12401,7 +12603,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 116,
+ "line" : 117,
"column" : 31,
"source_fragment" : "0x8847; ..."
}
@@ -12410,7 +12612,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 95,
+ "id" : 97,
"runtime_data" : [],
"primitives" : [
{
@@ -12480,7 +12682,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -12508,7 +12710,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 96,
+ "id" : 98,
"runtime_data" : [],
"primitives" : [
{
@@ -12530,7 +12732,7 @@
},
{
"name" : "FabricEgress.egress_next.drop",
- "id" : 97,
+ "id" : 99,
"runtime_data" : [],
"primitives" : [
{
@@ -12552,7 +12754,7 @@
},
{
"name" : "FabricEgress.spgw.gtpu_encap",
- "id" : 98,
+ "id" : 100,
"runtime_data" : [],
"primitives" : [
{
@@ -12565,7 +12767,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 291,
+ "line" : 301,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.setValid()"
}
@@ -12584,7 +12786,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 292,
+ "line" : 302,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.version = 4"
}
@@ -12603,7 +12805,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 133,
+ "line" : 134,
"column" : 28,
"source_fragment" : "5; ..."
}
@@ -12622,7 +12824,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 294,
+ "line" : 304,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.dscp = 0"
}
@@ -12641,7 +12843,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 295,
+ "line" : 305,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.ecn = 0"
}
@@ -12683,7 +12885,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 296,
+ "line" : 306,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.total_len = hdr.ipv4.total_len ..."
}
@@ -12702,7 +12904,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 298,
+ "line" : 308,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.identification = 0x1513"
}
@@ -12721,7 +12923,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 299,
+ "line" : 309,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.flags = 0"
}
@@ -12740,7 +12942,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 300,
+ "line" : 310,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.frag_offset = 0"
}
@@ -12759,7 +12961,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 146,
+ "line" : 147,
"column" : 32,
"source_fragment" : "64; ..."
}
@@ -12778,7 +12980,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 130,
+ "line" : 131,
"column" : 25,
"source_fragment" : "17; ..."
}
@@ -12797,7 +12999,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 303,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.src_addr = fabric_md.spgw.tunnel_src_addr; ..."
}
@@ -12816,7 +13018,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 304,
+ "line" : 314,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.dst_addr = fabric_md.spgw.tunnel_dst_addr; ..."
}
@@ -12835,7 +13037,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 305,
+ "line" : 315,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.hdr_checksum = 0"
}
@@ -12850,7 +13052,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 307,
+ "line" : 317,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.setValid()"
}
@@ -12869,7 +13071,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 308,
+ "line" : 318,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.sport = fabric_md.spgw.tunnel_src_port; ..."
}
@@ -12888,7 +13090,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 309,
+ "line" : 319,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.dport = 2152"
}
@@ -12930,7 +13132,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 310,
+ "line" : 320,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.len = fabric_md.spgw.ipv4_len ..."
}
@@ -12949,7 +13151,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 312,
+ "line" : 322,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.checksum = 0"
}
@@ -12964,7 +13166,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 315,
+ "line" : 325,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.setValid()"
}
@@ -12983,7 +13185,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 316,
+ "line" : 326,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.version = 0x01"
}
@@ -13002,7 +13204,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 317,
+ "line" : 327,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.pt = 0x01"
}
@@ -13021,7 +13223,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 318,
+ "line" : 328,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.spare = 0"
}
@@ -13040,7 +13242,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 319,
+ "line" : 329,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.ex_flag = 0"
}
@@ -13059,7 +13261,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 320,
+ "line" : 330,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.seq_flag = 0"
}
@@ -13078,7 +13280,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 321,
+ "line" : 331,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.npdu_flag = 0"
}
@@ -13097,7 +13299,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 322,
+ "line" : 332,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.msgtype = 0xff"
}
@@ -13116,7 +13318,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 323,
+ "line" : 333,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.msglen = fabric_md.spgw.ipv4_len; ..."
}
@@ -13135,7 +13337,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 324,
+ "line" : 334,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.teid = fabric_md.spgw.teid; ..."
}
@@ -13144,7 +13346,7 @@
},
{
"name" : "act_8",
- "id" : 99,
+ "id" : 101,
"runtime_data" : [],
"primitives" : [
{
@@ -13161,7 +13363,7 @@
},
{
"name" : "act_9",
- "id" : 100,
+ "id" : 102,
"runtime_data" : [],
"primitives" : [
{
@@ -13212,7 +13414,7 @@
},
{
"name" : "act_10",
- "id" : 101,
+ "id" : 103,
"runtime_data" : [],
"primitives" : [
{
@@ -13234,7 +13436,7 @@
},
{
"name" : "act_11",
- "id" : 102,
+ "id" : 104,
"runtime_data" : [],
"primitives" : [
{
@@ -13256,7 +13458,7 @@
},
{
"name" : "act_12",
- "id" : 103,
+ "id" : 105,
"runtime_data" : [],
"primitives" : [
{
@@ -13305,7 +13507,7 @@
},
{
"name" : "act_13",
- "id" : 104,
+ "id" : 106,
"runtime_data" : [],
"primitives" : [
{
@@ -13327,7 +13529,7 @@
},
{
"name" : "act_14",
- "id" : 105,
+ "id" : 107,
"runtime_data" : [],
"primitives" : [
{
@@ -13376,7 +13578,7 @@
},
{
"name" : "act_15",
- "id" : 106,
+ "id" : 108,
"runtime_data" : [],
"primitives" : [
{
@@ -13393,7 +13595,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 333,
+ "line" : 343,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
}
@@ -13402,7 +13604,7 @@
},
{
"name" : "act_16",
- "id" : 107,
+ "id" : 109,
"runtime_data" : [],
"primitives" : [
{
@@ -13432,7 +13634,7 @@
},
{
"name" : "act_17",
- "id" : 108,
+ "id" : 110,
"runtime_data" : [],
"primitives" : [
{
@@ -13468,7 +13670,7 @@
},
{
"name" : "act_18",
- "id" : 109,
+ "id" : 111,
"runtime_data" : [],
"primitives" : [
{
@@ -13517,7 +13719,7 @@
},
{
"name" : "act_19",
- "id" : 110,
+ "id" : 112,
"runtime_data" : [],
"primitives" : [
{
@@ -13566,7 +13768,7 @@
},
{
"name" : "act_20",
- "id" : 111,
+ "id" : 113,
"runtime_data" : [],
"primitives" : [
{
@@ -13615,7 +13817,7 @@
},
{
"name" : "act_21",
- "id" : 112,
+ "id" : 114,
"runtime_data" : [],
"primitives" : [
{
@@ -13691,14 +13893,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [46],
+ "action_ids" : [48],
"actions" : ["act"],
"base_default_next" : "FabricIngress.spgw.interfaces",
"next_tables" : {
"act" : "FabricIngress.spgw.interfaces"
},
"default_entry" : {
- "action_id" : 46,
+ "action_id" : 48,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13757,14 +13959,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [47],
+ "action_ids" : [49],
"actions" : ["act_0"],
"base_default_next" : "node_7",
"next_tables" : {
"act_0" : "node_7"
},
"default_entry" : {
- "action_id" : 47,
+ "action_id" : 49,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13780,14 +13982,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [48],
+ "action_ids" : [50],
"actions" : ["act_1"],
"base_default_next" : "node_7",
"next_tables" : {
"act_1" : "node_7"
},
"default_entry" : {
- "action_id" : 48,
+ "action_id" : 50,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -13932,7 +14134,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 168,
+ "line" : 177,
"column" : 10,
"source_fragment" : "uplink_pdrs"
},
@@ -13956,11 +14158,12 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [42, 9],
- "actions" : ["FabricIngress.spgw.load_pdr", "NoAction"],
+ "action_ids" : [42, 44, 9],
+ "actions" : ["FabricIngress.spgw.load_pdr", "FabricIngress.spgw.load_pdr_qos", "NoAction"],
"base_default_next" : "node_13",
"next_tables" : {
"FabricIngress.spgw.load_pdr" : "node_13",
+ "FabricIngress.spgw.load_pdr_qos" : "node_13",
"NoAction" : "node_13"
},
"default_entry" : {
@@ -13975,7 +14178,7 @@
"id" : 6,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 157,
+ "line" : 165,
"column" : 10,
"source_fragment" : "downlink_pdrs"
},
@@ -13993,11 +14196,12 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41, 8],
- "actions" : ["FabricIngress.spgw.load_pdr", "NoAction"],
+ "action_ids" : [41, 43, 8],
+ "actions" : ["FabricIngress.spgw.load_pdr", "FabricIngress.spgw.load_pdr_qos", "NoAction"],
"base_default_next" : "node_13",
"next_tables" : {
"FabricIngress.spgw.load_pdr" : "node_13",
+ "FabricIngress.spgw.load_pdr_qos" : "node_13",
"NoAction" : "node_13"
},
"default_entry" : {
@@ -14012,7 +14216,7 @@
"id" : 7,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 256,
+ "line" : 266,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
},
@@ -14023,14 +14227,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [49],
+ "action_ids" : [51],
"actions" : ["act_2"],
"base_default_next" : "node_15",
"next_tables" : {
"act_2" : "node_15"
},
"default_entry" : {
- "action_id" : 49,
+ "action_id" : 51,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -14175,7 +14379,7 @@
"id" : 9,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 224,
+ "line" : 234,
"column" : 10,
"source_fragment" : "fars"
},
@@ -14193,7 +14397,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [43, 44, 45],
+ "action_ids" : [45, 46, 47],
"actions" : ["FabricIngress.spgw.load_normal_far", "FabricIngress.spgw.load_tunnel_far", "FabricIngress.spgw.load_dbuf_far"],
"base_default_next" : "tbl_act_3",
"next_tables" : {
@@ -14202,7 +14406,7 @@
"FabricIngress.spgw.load_dbuf_far" : "tbl_act_3"
},
"default_entry" : {
- "action_id" : 43,
+ "action_id" : 45,
"action_const" : true,
"action_data" : ["0x1", "0x0"],
"action_entry_const" : true
@@ -14213,7 +14417,7 @@
"id" : 10,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 273,
+ "line" : 283,
"column" : 36,
"source_fragment" : "="
},
@@ -14224,14 +14428,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [50],
+ "action_ids" : [52],
"actions" : ["act_3"],
"base_default_next" : "node_19",
"next_tables" : {
"act_3" : "node_19"
},
"default_entry" : {
- "action_id" : 50,
+ "action_id" : 52,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -14253,14 +14457,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [51],
+ "action_ids" : [53],
"actions" : ["act_4"],
"base_default_next" : "node_21",
"next_tables" : {
"act_4" : "node_21"
},
"default_entry" : {
- "action_id" : 51,
+ "action_id" : 53,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -14282,14 +14486,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [52],
+ "action_ids" : [54],
"actions" : ["act_5"],
"base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
"next_tables" : {
"act_5" : "FabricIngress.filtering.ingress_port_vlan"
},
"default_entry" : {
- "action_id" : 52,
+ "action_id" : 54,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -14791,14 +14995,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [53],
+ "action_ids" : [55],
"actions" : ["act_6"],
"base_default_next" : "node_40",
"next_tables" : {
"act_6" : "node_40"
},
"default_entry" : {
- "action_id" : 53,
+ "action_id" : 55,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -14820,14 +15024,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [54],
+ "action_ids" : [56],
"actions" : ["act_7"],
"base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
"next_tables" : {
"act_7" : "FabricIngress.process_set_source_sink.tb_set_source"
},
"default_entry" : {
- "action_id" : 54,
+ "action_id" : 56,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -14955,7 +15159,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 246,
+ "line" : 256,
"column" : 16,
"source_fragment" : "fabric_md.spgw.src_iface == SPGW_IFACE_FROM_DBUF"
},
@@ -14981,7 +15185,7 @@
"id" : 3,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 250,
+ "line" : 260,
"column" : 16,
"source_fragment" : "hdr.gtpu.isValid()"
},
@@ -15004,7 +15208,7 @@
"id" : 4,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 255,
+ "line" : 265,
"column" : 16,
"source_fragment" : "fabric_md.spgw.src_iface != SPGW_IFACE_FROM_DBUF"
},
@@ -15030,7 +15234,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 260,
+ "line" : 270,
"column" : 16,
"source_fragment" : "fabric_md.spgw.needs_gtpu_decap == true"
},
@@ -15336,14 +15540,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [99],
+ "action_ids" : [101],
"actions" : ["act_8"],
"base_default_next" : "node_47",
"next_tables" : {
"act_8" : "node_47"
},
"default_entry" : {
- "action_id" : 99,
+ "action_id" : 101,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15365,14 +15569,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [100],
+ "action_ids" : [102],
"actions" : ["act_9"],
"base_default_next" : "node_49",
"next_tables" : {
"act_9" : "node_49"
},
"default_entry" : {
- "action_id" : 100,
+ "action_id" : 102,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15394,14 +15598,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [101],
+ "action_ids" : [103],
"actions" : ["act_10"],
"base_default_next" : "node_51",
"next_tables" : {
"act_10" : "node_51"
},
"default_entry" : {
- "action_id" : 101,
+ "action_id" : 103,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15423,14 +15627,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [93],
+ "action_ids" : [95],
"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" : 95,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15452,14 +15656,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [94],
+ "action_ids" : [96],
"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" : 96,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15494,7 +15698,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [95, 96, 97],
+ "action_ids" : [97, 98, 99],
"actions" : ["FabricEgress.egress_next.push_vlan", "FabricEgress.egress_next.pop_vlan", "FabricEgress.egress_next.drop"],
"base_default_next" : "node_56",
"next_tables" : {
@@ -15503,7 +15707,7 @@
"FabricEgress.egress_next.drop" : "node_56"
},
"default_entry" : {
- "action_id" : 97,
+ "action_id" : 99,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15525,14 +15729,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [103],
+ "action_ids" : [105],
"actions" : ["act_12"],
"base_default_next" : "node_58",
"next_tables" : {
"act_12" : "node_58"
},
"default_entry" : {
- "action_id" : 103,
+ "action_id" : 105,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15554,14 +15758,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [102],
+ "action_ids" : [104],
"actions" : ["act_11"],
"base_default_next" : "node_64",
"next_tables" : {
"act_11" : "node_64"
},
"default_entry" : {
- "action_id" : 102,
+ "action_id" : 104,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15583,14 +15787,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [105],
+ "action_ids" : [107],
"actions" : ["act_14"],
"base_default_next" : "node_62",
"next_tables" : {
"act_14" : "node_62"
},
"default_entry" : {
- "action_id" : 105,
+ "action_id" : 107,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15612,14 +15816,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [104],
+ "action_ids" : [106],
"actions" : ["act_13"],
"base_default_next" : "node_64",
"next_tables" : {
"act_13" : "node_64"
},
"default_entry" : {
- "action_id" : 104,
+ "action_id" : 106,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15630,7 +15834,7 @@
"id" : 36,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 330,
+ "line" : 340,
"column" : 16,
"source_fragment" : "gtpu_encap()"
},
@@ -15641,14 +15845,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [98],
+ "action_ids" : [100],
"actions" : ["FabricEgress.spgw.gtpu_encap"],
"base_default_next" : "node_67",
"next_tables" : {
"FabricEgress.spgw.gtpu_encap" : "node_67"
},
"default_entry" : {
- "action_id" : 98,
+ "action_id" : 100,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15659,7 +15863,7 @@
"id" : 37,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 333,
+ "line" : 343,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
},
@@ -15670,14 +15874,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [106],
+ "action_ids" : [108],
"actions" : ["act_15"],
"base_default_next" : "node_69",
"next_tables" : {
"act_15" : "node_69"
},
"default_entry" : {
- "action_id" : 106,
+ "action_id" : 108,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15724,7 +15928,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [59, 55],
+ "action_ids" : [61, 57],
"actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
"base_default_next" : "node_72",
"next_tables" : {
@@ -15732,7 +15936,7 @@
"nop" : "node_72"
},
"default_entry" : {
- "action_id" : 55,
+ "action_id" : 57,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15748,14 +15952,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [107],
+ "action_ids" : [109],
"actions" : ["act_16"],
"base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
"next_tables" : {
"act_16" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
},
"default_entry" : {
- "action_id" : 107,
+ "action_id" : 109,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15784,7 +15988,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [60, 56],
+ "action_ids" : [62, 58],
"actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
"base_default_next" : "node_75",
"next_tables" : {
@@ -15792,7 +15996,7 @@
"nop" : "node_75"
},
"default_entry" : {
- "action_id" : 56,
+ "action_id" : 58,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15814,14 +16018,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [108],
+ "action_ids" : [110],
"actions" : ["act_17"],
"base_default_next" : "node_77",
"next_tables" : {
"act_17" : "node_77"
},
"default_entry" : {
- "action_id" : 108,
+ "action_id" : 110,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -15850,7 +16054,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, 57],
+ "action_ids" : [63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 59],
"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" : {
@@ -15873,7 +16077,7 @@
"NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
},
"default_entry" : {
- "action_id" : 57,
+ "action_id" : 59,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -15893,7 +16097,7 @@
}
],
"action_entry" : {
- "action_id" : 61,
+ "action_id" : 63,
"action_data" : []
},
"priority" : 1
@@ -15912,7 +16116,7 @@
}
],
"action_entry" : {
- "action_id" : 62,
+ "action_id" : 64,
"action_data" : []
},
"priority" : 2
@@ -15931,7 +16135,7 @@
}
],
"action_entry" : {
- "action_id" : 63,
+ "action_id" : 65,
"action_data" : []
},
"priority" : 3
@@ -15950,7 +16154,7 @@
}
],
"action_entry" : {
- "action_id" : 64,
+ "action_id" : 66,
"action_data" : []
},
"priority" : 4
@@ -15969,7 +16173,7 @@
}
],
"action_entry" : {
- "action_id" : 65,
+ "action_id" : 67,
"action_data" : []
},
"priority" : 5
@@ -15988,7 +16192,7 @@
}
],
"action_entry" : {
- "action_id" : 66,
+ "action_id" : 68,
"action_data" : []
},
"priority" : 6
@@ -16007,7 +16211,7 @@
}
],
"action_entry" : {
- "action_id" : 67,
+ "action_id" : 69,
"action_data" : []
},
"priority" : 7
@@ -16026,7 +16230,7 @@
}
],
"action_entry" : {
- "action_id" : 68,
+ "action_id" : 70,
"action_data" : []
},
"priority" : 8
@@ -16045,7 +16249,7 @@
}
],
"action_entry" : {
- "action_id" : 69,
+ "action_id" : 71,
"action_data" : []
},
"priority" : 9
@@ -16064,7 +16268,7 @@
}
],
"action_entry" : {
- "action_id" : 70,
+ "action_id" : 72,
"action_data" : []
},
"priority" : 10
@@ -16083,7 +16287,7 @@
}
],
"action_entry" : {
- "action_id" : 71,
+ "action_id" : 73,
"action_data" : []
},
"priority" : 11
@@ -16102,7 +16306,7 @@
}
],
"action_entry" : {
- "action_id" : 72,
+ "action_id" : 74,
"action_data" : []
},
"priority" : 12
@@ -16121,7 +16325,7 @@
}
],
"action_entry" : {
- "action_id" : 73,
+ "action_id" : 75,
"action_data" : []
},
"priority" : 13
@@ -16140,7 +16344,7 @@
}
],
"action_entry" : {
- "action_id" : 74,
+ "action_id" : 76,
"action_data" : []
},
"priority" : 14
@@ -16159,7 +16363,7 @@
}
],
"action_entry" : {
- "action_id" : 75,
+ "action_id" : 77,
"action_data" : []
},
"priority" : 15
@@ -16178,7 +16382,7 @@
}
],
"action_entry" : {
- "action_id" : 76,
+ "action_id" : 78,
"action_data" : []
},
"priority" : 16
@@ -16208,7 +16412,7 @@
"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, 58],
+ "action_ids" : [79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 60],
"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_18",
"next_tables" : {
@@ -16231,7 +16435,7 @@
"NoAction" : "tbl_act_18"
},
"default_entry" : {
- "action_id" : 58,
+ "action_id" : 60,
"action_const" : false,
"action_data" : [],
"action_entry_const" : false
@@ -16251,7 +16455,7 @@
}
],
"action_entry" : {
- "action_id" : 77,
+ "action_id" : 79,
"action_data" : []
},
"priority" : 1
@@ -16270,7 +16474,7 @@
}
],
"action_entry" : {
- "action_id" : 78,
+ "action_id" : 80,
"action_data" : []
},
"priority" : 2
@@ -16289,7 +16493,7 @@
}
],
"action_entry" : {
- "action_id" : 79,
+ "action_id" : 81,
"action_data" : []
},
"priority" : 3
@@ -16308,7 +16512,7 @@
}
],
"action_entry" : {
- "action_id" : 80,
+ "action_id" : 82,
"action_data" : []
},
"priority" : 4
@@ -16327,7 +16531,7 @@
}
],
"action_entry" : {
- "action_id" : 81,
+ "action_id" : 83,
"action_data" : []
},
"priority" : 5
@@ -16346,7 +16550,7 @@
}
],
"action_entry" : {
- "action_id" : 82,
+ "action_id" : 84,
"action_data" : []
},
"priority" : 6
@@ -16365,7 +16569,7 @@
}
],
"action_entry" : {
- "action_id" : 83,
+ "action_id" : 85,
"action_data" : []
},
"priority" : 7
@@ -16384,7 +16588,7 @@
}
],
"action_entry" : {
- "action_id" : 84,
+ "action_id" : 86,
"action_data" : []
},
"priority" : 8
@@ -16403,7 +16607,7 @@
}
],
"action_entry" : {
- "action_id" : 85,
+ "action_id" : 87,
"action_data" : []
},
"priority" : 9
@@ -16422,7 +16626,7 @@
}
],
"action_entry" : {
- "action_id" : 86,
+ "action_id" : 88,
"action_data" : []
},
"priority" : 10
@@ -16441,7 +16645,7 @@
}
],
"action_entry" : {
- "action_id" : 87,
+ "action_id" : 89,
"action_data" : []
},
"priority" : 11
@@ -16460,7 +16664,7 @@
}
],
"action_entry" : {
- "action_id" : 88,
+ "action_id" : 90,
"action_data" : []
},
"priority" : 12
@@ -16479,7 +16683,7 @@
}
],
"action_entry" : {
- "action_id" : 89,
+ "action_id" : 91,
"action_data" : []
},
"priority" : 13
@@ -16498,7 +16702,7 @@
}
],
"action_entry" : {
- "action_id" : 90,
+ "action_id" : 92,
"action_data" : []
},
"priority" : 14
@@ -16517,7 +16721,7 @@
}
],
"action_entry" : {
- "action_id" : 91,
+ "action_id" : 93,
"action_data" : []
},
"priority" : 15
@@ -16536,7 +16740,7 @@
}
],
"action_entry" : {
- "action_id" : 92,
+ "action_id" : 94,
"action_data" : []
},
"priority" : 16
@@ -16559,14 +16763,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [110],
+ "action_ids" : [112],
"actions" : ["act_19"],
"base_default_next" : "node_81",
"next_tables" : {
"act_19" : "node_81"
},
"default_entry" : {
- "action_id" : 110,
+ "action_id" : 112,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16588,14 +16792,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [109],
+ "action_ids" : [111],
"actions" : ["act_18"],
"base_default_next" : "node_83",
"next_tables" : {
"act_18" : "node_83"
},
"default_entry" : {
- "action_id" : 109,
+ "action_id" : 111,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16617,14 +16821,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [111],
+ "action_ids" : [113],
"actions" : ["act_20"],
"base_default_next" : "node_85",
"next_tables" : {
"act_20" : "node_85"
},
"default_entry" : {
- "action_id" : 111,
+ "action_id" : 113,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16646,14 +16850,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [112],
+ "action_ids" : [114],
"actions" : ["act_21"],
"base_default_next" : null,
"next_tables" : {
"act_21" : null
},
"default_entry" : {
- "action_id" : 112,
+ "action_id" : 114,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -16946,7 +17150,7 @@
"id" : 24,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 328,
+ "line" : 338,
"column" : 12,
"source_fragment" : "fabric_md.spgw.skip_spgw == false"
},
@@ -16979,7 +17183,7 @@
"id" : 25,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 329,
+ "line" : 339,
"column" : 16,
"source_fragment" : "fabric_md.spgw.needs_gtpu_encap == true"
},
@@ -17012,7 +17216,7 @@
"id" : 26,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 332,
+ "line" : 342,
"column" : 16,
"source_fragment" : "fabric_md.spgw.skip_egress_pdr_ctr == false"
},
@@ -17337,7 +17541,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 349,
+ "line" : 359,
"column" : 8,
"source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
},
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt
index c658bdd7..10b172b 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw-int/bmv2/default/p4info.txt
@@ -432,6 +432,9 @@
id: 16800614
}
action_refs {
+ id: 16785920
+ }
+ action_refs {
id: 16800567
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -460,6 +463,9 @@
id: 16800614
}
action_refs {
+ id: 16785920
+ }
+ action_refs {
id: 16800567
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -887,6 +893,33 @@
}
actions {
preamble {
+ id: 16785920
+ name: "FabricIngress.spgw.load_pdr_qos"
+ alias: "load_pdr_qos"
+ }
+ params {
+ id: 1
+ name: "ctr_id"
+ bitwidth: 32
+ }
+ params {
+ id: 2
+ name: "far_id"
+ bitwidth: 32
+ }
+ params {
+ id: 3
+ name: "needs_gtpu_decap"
+ bitwidth: 1
+ }
+ params {
+ id: 4
+ name: "qid"
+ bitwidth: 5
+ }
+}
+actions {
+ preamble {
id: 16820307
name: "FabricIngress.spgw.load_normal_far"
alias: "load_normal_far"
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
index 8f5381e..a23792d 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
@@ -1202,7 +1202,7 @@
"id" : 13,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 286,
+ "line" : 296,
"column" : 53,
"source_fragment" : "pdr_counter"
},
@@ -1278,7 +1278,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 349,
+ "line" : 359,
"column" : 8,
"source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
},
@@ -2257,7 +2257,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -2476,7 +2476,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -2680,7 +2680,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -2899,7 +2899,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3084,7 +3084,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3303,7 +3303,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3507,7 +3507,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3726,7 +3726,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 118,
+ "line" : 119,
"column" : 31,
"source_fragment" : "0x0800; ..."
}
@@ -3971,7 +3971,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 108,
+ "line" : 109,
"column" : 44,
"source_fragment" : "8w0; ..."
}
@@ -4202,16 +4202,24 @@
]
},
{
- "name" : "FabricIngress.spgw.load_normal_far",
+ "name" : "FabricIngress.spgw.load_pdr_qos",
"id" : 41,
"runtime_data" : [
{
- "name" : "drop",
+ "name" : "ctr_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "far_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "needs_gtpu_decap",
"bitwidth" : 1
},
{
- "name" : "notify_cp",
- "bitwidth" : 1
+ "name" : "qid",
+ "bitwidth" : 5
}
],
"primitives" : [
@@ -4220,38 +4228,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ctr_id24"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
+ "type" : "runtime_data",
+ "value" : 0
}
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 186,
- "column" : 34,
- "source_fragment" : "= (bool)drop; ..."
+ "line" : 151,
+ "column" : 30,
+ "source_fragment" : "= ctr_id; ..."
}
},
{
@@ -4259,38 +4247,18 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next7"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_far_id25"]
},
{
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
+ "type" : "runtime_data",
+ "value" : 1
}
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 187,
- "column" : 28,
- "source_fragment" : "= (bool)drop; ..."
+ "line" : 152,
+ "column" : 30,
+ "source_fragment" : "= far_id; ..."
}
},
{
@@ -4298,7 +4266,7 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_decap30"]
},
{
"type" : "expression",
@@ -4313,7 +4281,7 @@
"op" : "!=",
"left" : {
"type" : "local",
- "value" : 1
+ "value" : 2
},
"right" : {
"type" : "hexstr",
@@ -4327,40 +4295,32 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 188,
- "column" : 36,
- "source_fragment" : "= (bool)notify_cp; ..."
+ "line" : 153,
+ "column" : 40,
+ "source_fragment" : "= (bool)needs_gtpu_decap; ..."
}
}
]
},
{
- "name" : "FabricIngress.spgw.load_tunnel_far",
+ "name" : "FabricIngress.spgw.load_pdr_qos",
"id" : 42,
"runtime_data" : [
{
- "name" : "drop",
+ "name" : "ctr_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "far_id",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "needs_gtpu_decap",
"bitwidth" : 1
},
{
- "name" : "notify_cp",
- "bitwidth" : 1
- },
- {
- "name" : "tunnel_src_port",
- "bitwidth" : 16
- },
- {
- "name" : "tunnel_src_addr",
- "bitwidth" : 32
- },
- {
- "name" : "tunnel_dst_addr",
- "bitwidth" : 32
- },
- {
- "name" : "teid",
- "bitwidth" : 32
+ "name" : "qid",
+ "bitwidth" : 5
}
],
"primitives" : [
@@ -4369,7 +4329,45 @@
"parameters" : [
{
"type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ "value" : ["scalars", "fabric_metadata_t._spgw_ctr_id24"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 0
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 151,
+ "column" : 30,
+ "source_fragment" : "= ctr_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_far_id25"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 1
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 152,
+ "column" : 30,
+ "source_fragment" : "= far_id; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_decap30"]
},
{
"type" : "expression",
@@ -4384,7 +4382,7 @@
"op" : "!=",
"left" : {
"type" : "local",
- "value" : 0
+ "value" : 2
},
"right" : {
"type" : "hexstr",
@@ -4398,274 +4396,15 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 197,
- "column" : 34,
- "source_fragment" : "= (bool)drop; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._skip_next7"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 0
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 198,
- "column" : 28,
- "source_fragment" : "= (bool)drop; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "expression",
- "value" : {
- "op" : "!=",
- "left" : {
- "type" : "local",
- "value" : 1
- },
- "right" : {
- "type" : "hexstr",
- "value" : "0x00"
- }
- }
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 199,
- "column" : 36,
- "source_fragment" : "= (bool)notify_cp; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_encap29"]
- },
- {
- "type" : "expression",
- "value" : {
- "type" : "expression",
- "value" : {
- "op" : "b2d",
- "left" : null,
- "right" : {
- "type" : "bool",
- "value" : true
- }
- }
- }
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 201,
+ "line" : 153,
"column" : 40,
- "source_fragment" : "= true; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_teid20"]
- },
- {
- "type" : "runtime_data",
- "value" : 5
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 202,
- "column" : 28,
- "source_fragment" : "= teid; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_port21"]
- },
- {
- "type" : "runtime_data",
- "value" : 2
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 203,
- "column" : 39,
- "source_fragment" : "= tunnel_src_port; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_addr22"]
- },
- {
- "type" : "runtime_data",
- "value" : 3
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 204,
- "column" : 39,
- "source_fragment" : "= tunnel_src_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_dst_addr23"]
- },
- {
- "type" : "runtime_data",
- "value" : 4
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 205,
- "column" : 39,
- "source_fragment" : "= tunnel_dst_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ipv4_src_addr15"]
- },
- {
- "type" : "runtime_data",
- "value" : 3
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 207,
- "column" : 32,
- "source_fragment" : "= tunnel_src_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._ipv4_dst_addr16"]
- },
- {
- "type" : "runtime_data",
- "value" : 4
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 208,
- "column" : 32,
- "source_fragment" : "= tunnel_dst_addr; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
- },
- {
- "type" : "runtime_data",
- "value" : 2
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 209,
- "column" : 27,
- "source_fragment" : "= tunnel_src_port; ..."
- }
- },
- {
- "op" : "assign",
- "parameters" : [
- {
- "type" : "field",
- "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
- },
- {
- "type" : "hexstr",
- "value" : "0x0868"
- }
- ],
- "source_info" : {
- "filename" : "include/control/spgw.p4",
- "line" : 210,
- "column" : 27,
- "source_fragment" : "= 2152; ..."
+ "source_fragment" : "= (bool)needs_gtpu_decap; ..."
}
}
]
},
{
- "name" : "FabricIngress.spgw.load_dbuf_far",
+ "name" : "FabricIngress.spgw.load_normal_far",
"id" : 43,
"runtime_data" : [
{
@@ -4675,6 +4414,139 @@
{
"name" : "notify_cp",
"bitwidth" : 1
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 196,
+ "column" : 34,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_next7"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 197,
+ "column" : 28,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 1
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 198,
+ "column" : 36,
+ "source_fragment" : "= (bool)notify_cp; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.spgw.load_tunnel_far",
+ "id" : 44,
+ "runtime_data" : [
+ {
+ "name" : "drop",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "notify_cp",
+ "bitwidth" : 1
},
{
"name" : "tunnel_src_port",
@@ -4728,7 +4600,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 197,
+ "line" : 207,
"column" : 34,
"source_fragment" : "= (bool)drop; ..."
}
@@ -4767,7 +4639,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 198,
+ "line" : 208,
"column" : 28,
"source_fragment" : "= (bool)drop; ..."
}
@@ -4806,7 +4678,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 199,
+ "line" : 209,
"column" : 36,
"source_fragment" : "= (bool)notify_cp; ..."
}
@@ -4835,7 +4707,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 201,
+ "line" : 211,
"column" : 40,
"source_fragment" : "= true; ..."
}
@@ -4854,7 +4726,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 202,
+ "line" : 212,
"column" : 28,
"source_fragment" : "= teid; ..."
}
@@ -4873,7 +4745,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 203,
+ "line" : 213,
"column" : 39,
"source_fragment" : "= tunnel_src_port; ..."
}
@@ -4892,7 +4764,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 204,
+ "line" : 214,
"column" : 39,
"source_fragment" : "= tunnel_src_addr; ..."
}
@@ -4911,7 +4783,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 205,
+ "line" : 215,
"column" : 39,
"source_fragment" : "= tunnel_dst_addr; ..."
}
@@ -4930,7 +4802,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 207,
+ "line" : 217,
"column" : 32,
"source_fragment" : "= tunnel_src_addr; ..."
}
@@ -4949,7 +4821,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 208,
+ "line" : 218,
"column" : 32,
"source_fragment" : "= tunnel_dst_addr; ..."
}
@@ -4968,7 +4840,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 209,
+ "line" : 219,
"column" : 27,
"source_fragment" : "= tunnel_src_port; ..."
}
@@ -4987,7 +4859,337 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 210,
+ "line" : 220,
+ "column" : 27,
+ "source_fragment" : "= 2152; ..."
+ }
+ }
+ ]
+ },
+ {
+ "name" : "FabricIngress.spgw.load_dbuf_far",
+ "id" : 45,
+ "runtime_data" : [
+ {
+ "name" : "drop",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "notify_cp",
+ "bitwidth" : 1
+ },
+ {
+ "name" : "tunnel_src_port",
+ "bitwidth" : 16
+ },
+ {
+ "name" : "tunnel_src_addr",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "tunnel_dst_addr",
+ "bitwidth" : 32
+ },
+ {
+ "name" : "teid",
+ "bitwidth" : 32
+ }
+ ],
+ "primitives" : [
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 207,
+ "column" : 34,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._skip_next7"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 0
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 208,
+ "column" : 28,
+ "source_fragment" : "= (bool)drop; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_notify_spgwc28"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "!=",
+ "left" : {
+ "type" : "local",
+ "value" : 1
+ },
+ "right" : {
+ "type" : "hexstr",
+ "value" : "0x00"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 209,
+ "column" : 36,
+ "source_fragment" : "= (bool)notify_cp; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_needs_gtpu_encap29"]
+ },
+ {
+ "type" : "expression",
+ "value" : {
+ "type" : "expression",
+ "value" : {
+ "op" : "b2d",
+ "left" : null,
+ "right" : {
+ "type" : "bool",
+ "value" : true
+ }
+ }
+ }
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 211,
+ "column" : 40,
+ "source_fragment" : "= true; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_teid20"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 5
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 212,
+ "column" : 28,
+ "source_fragment" : "= teid; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_port21"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 2
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 213,
+ "column" : 39,
+ "source_fragment" : "= tunnel_src_port; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_src_addr22"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 3
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 214,
+ "column" : 39,
+ "source_fragment" : "= tunnel_src_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._spgw_tunnel_dst_addr23"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 4
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 215,
+ "column" : 39,
+ "source_fragment" : "= tunnel_dst_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._ipv4_src_addr15"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 3
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 217,
+ "column" : 32,
+ "source_fragment" : "= tunnel_src_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._ipv4_dst_addr16"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 4
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 218,
+ "column" : 32,
+ "source_fragment" : "= tunnel_dst_addr; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
+ },
+ {
+ "type" : "runtime_data",
+ "value" : 2
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 219,
+ "column" : 27,
+ "source_fragment" : "= tunnel_src_port; ..."
+ }
+ },
+ {
+ "op" : "assign",
+ "parameters" : [
+ {
+ "type" : "field",
+ "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
+ },
+ {
+ "type" : "hexstr",
+ "value" : "0x0868"
+ }
+ ],
+ "source_info" : {
+ "filename" : "include/control/spgw.p4",
+ "line" : 220,
"column" : 27,
"source_fragment" : "= 2152; ..."
}
@@ -5016,7 +5218,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 221,
+ "line" : 231,
"column" : 43,
"source_fragment" : "= true; ..."
}
@@ -5025,7 +5227,7 @@
},
{
"name" : "act",
- "id" : 44,
+ "id" : 46,
"runtime_data" : [],
"primitives" : [
{
@@ -5105,7 +5307,7 @@
},
{
"name" : "act_0",
- "id" : 45,
+ "id" : 47,
"runtime_data" : [],
"primitives" : [
{
@@ -5135,7 +5337,7 @@
},
{
"name" : "act_1",
- "id" : 46,
+ "id" : 48,
"runtime_data" : [],
"primitives" : [
{
@@ -5165,7 +5367,7 @@
},
{
"name" : "act_2",
- "id" : 47,
+ "id" : 49,
"runtime_data" : [],
"primitives" : [
{
@@ -5182,7 +5384,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 256,
+ "line" : 266,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
}
@@ -5191,7 +5393,7 @@
},
{
"name" : "act_3",
- "id" : 48,
+ "id" : 50,
"runtime_data" : [],
"primitives" : [
{
@@ -5208,7 +5410,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 273,
+ "line" : 283,
"column" : 36,
"source_fragment" : "= hdr.ipv4.total_len; ..."
}
@@ -5217,7 +5419,7 @@
},
{
"name" : "act_4",
- "id" : 49,
+ "id" : 51,
"runtime_data" : [],
"primitives" : [
{
@@ -5281,7 +5483,7 @@
},
{
"name" : "act_5",
- "id" : 50,
+ "id" : 52,
"runtime_data" : [],
"primitives" : [
{
@@ -5307,7 +5509,7 @@
},
{
"name" : "act_6",
- "id" : 51,
+ "id" : 53,
"runtime_data" : [],
"primitives" : [
{
@@ -5365,7 +5567,7 @@
},
{
"name" : "act_7",
- "id" : 52,
+ "id" : 54,
"runtime_data" : [],
"primitives" : [
{
@@ -5423,7 +5625,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_mpls_if_present",
- "id" : 53,
+ "id" : 55,
"runtime_data" : [],
"primitives" : [
{
@@ -5464,7 +5666,7 @@
},
{
"name" : "FabricEgress.egress_next.set_mpls",
- "id" : 54,
+ "id" : 56,
"runtime_data" : [],
"primitives" : [
{
@@ -5572,7 +5774,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 116,
+ "line" : 117,
"column" : 31,
"source_fragment" : "0x8847; ..."
}
@@ -5581,7 +5783,7 @@
},
{
"name" : "FabricEgress.egress_next.push_vlan",
- "id" : 55,
+ "id" : 57,
"runtime_data" : [],
"primitives" : [
{
@@ -5651,7 +5853,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}
@@ -5679,7 +5881,7 @@
},
{
"name" : "FabricEgress.egress_next.pop_vlan",
- "id" : 56,
+ "id" : 58,
"runtime_data" : [],
"primitives" : [
{
@@ -5701,7 +5903,7 @@
},
{
"name" : "FabricEgress.egress_next.drop",
- "id" : 57,
+ "id" : 59,
"runtime_data" : [],
"primitives" : [
{
@@ -5723,7 +5925,7 @@
},
{
"name" : "FabricEgress.spgw.gtpu_encap",
- "id" : 58,
+ "id" : 60,
"runtime_data" : [],
"primitives" : [
{
@@ -5736,7 +5938,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 291,
+ "line" : 301,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.setValid()"
}
@@ -5755,7 +5957,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 292,
+ "line" : 302,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.version = 4"
}
@@ -5774,7 +5976,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 133,
+ "line" : 134,
"column" : 28,
"source_fragment" : "5; ..."
}
@@ -5793,7 +5995,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 294,
+ "line" : 304,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.dscp = 0"
}
@@ -5812,7 +6014,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 295,
+ "line" : 305,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.ecn = 0"
}
@@ -5854,7 +6056,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 296,
+ "line" : 306,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.total_len = hdr.ipv4.total_len ..."
}
@@ -5873,7 +6075,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 298,
+ "line" : 308,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.identification = 0x1513"
}
@@ -5892,7 +6094,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 299,
+ "line" : 309,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.flags = 0"
}
@@ -5911,7 +6113,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 300,
+ "line" : 310,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.frag_offset = 0"
}
@@ -5930,7 +6132,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 146,
+ "line" : 147,
"column" : 32,
"source_fragment" : "64; ..."
}
@@ -5949,7 +6151,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 130,
+ "line" : 131,
"column" : 25,
"source_fragment" : "17; ..."
}
@@ -5968,7 +6170,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 303,
+ "line" : 313,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.src_addr = fabric_md.spgw.tunnel_src_addr; ..."
}
@@ -5987,7 +6189,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 304,
+ "line" : 314,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.dst_addr = fabric_md.spgw.tunnel_dst_addr; ..."
}
@@ -6006,7 +6208,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 305,
+ "line" : 315,
"column" : 8,
"source_fragment" : "hdr.gtpu_ipv4.hdr_checksum = 0"
}
@@ -6021,7 +6223,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 307,
+ "line" : 317,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.setValid()"
}
@@ -6040,7 +6242,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 308,
+ "line" : 318,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.sport = fabric_md.spgw.tunnel_src_port; ..."
}
@@ -6059,7 +6261,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 309,
+ "line" : 319,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.dport = 2152"
}
@@ -6101,7 +6303,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 310,
+ "line" : 320,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.len = fabric_md.spgw.ipv4_len ..."
}
@@ -6120,7 +6322,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 312,
+ "line" : 322,
"column" : 8,
"source_fragment" : "hdr.gtpu_udp.checksum = 0"
}
@@ -6135,7 +6337,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 315,
+ "line" : 325,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.setValid()"
}
@@ -6154,7 +6356,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 316,
+ "line" : 326,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.version = 0x01"
}
@@ -6173,7 +6375,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 317,
+ "line" : 327,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.pt = 0x01"
}
@@ -6192,7 +6394,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 318,
+ "line" : 328,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.spare = 0"
}
@@ -6211,7 +6413,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 319,
+ "line" : 329,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.ex_flag = 0"
}
@@ -6230,7 +6432,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 320,
+ "line" : 330,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.seq_flag = 0"
}
@@ -6249,7 +6451,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 321,
+ "line" : 331,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.npdu_flag = 0"
}
@@ -6268,7 +6470,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 322,
+ "line" : 332,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.msgtype = 0xff"
}
@@ -6287,7 +6489,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 323,
+ "line" : 333,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.msglen = fabric_md.spgw.ipv4_len; ..."
}
@@ -6306,7 +6508,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 324,
+ "line" : 334,
"column" : 8,
"source_fragment" : "hdr.outer_gtpu.teid = fabric_md.spgw.teid; ..."
}
@@ -6315,7 +6517,7 @@
},
{
"name" : "act_8",
- "id" : 59,
+ "id" : 61,
"runtime_data" : [],
"primitives" : [
{
@@ -6332,7 +6534,7 @@
},
{
"name" : "act_9",
- "id" : 60,
+ "id" : 62,
"runtime_data" : [],
"primitives" : [
{
@@ -6383,7 +6585,7 @@
},
{
"name" : "act_10",
- "id" : 61,
+ "id" : 63,
"runtime_data" : [],
"primitives" : [
{
@@ -6405,7 +6607,7 @@
},
{
"name" : "act_11",
- "id" : 62,
+ "id" : 64,
"runtime_data" : [],
"primitives" : [
{
@@ -6427,7 +6629,7 @@
},
{
"name" : "act_12",
- "id" : 63,
+ "id" : 65,
"runtime_data" : [],
"primitives" : [
{
@@ -6476,7 +6678,7 @@
},
{
"name" : "act_13",
- "id" : 64,
+ "id" : 66,
"runtime_data" : [],
"primitives" : [
{
@@ -6498,7 +6700,7 @@
},
{
"name" : "act_14",
- "id" : 65,
+ "id" : 67,
"runtime_data" : [],
"primitives" : [
{
@@ -6547,7 +6749,7 @@
},
{
"name" : "act_15",
- "id" : 66,
+ "id" : 68,
"runtime_data" : [],
"primitives" : [
{
@@ -6564,7 +6766,7 @@
],
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 333,
+ "line" : 343,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
}
@@ -6600,14 +6802,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [44],
+ "action_ids" : [46],
"actions" : ["act"],
"base_default_next" : "FabricIngress.spgw.interfaces",
"next_tables" : {
"act" : "FabricIngress.spgw.interfaces"
},
"default_entry" : {
- "action_id" : 44,
+ "action_id" : 46,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6666,14 +6868,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [45],
+ "action_ids" : [47],
"actions" : ["act_0"],
"base_default_next" : "node_7",
"next_tables" : {
"act_0" : "node_7"
},
"default_entry" : {
- "action_id" : 45,
+ "action_id" : 47,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6689,14 +6891,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [46],
+ "action_ids" : [48],
"actions" : ["act_1"],
"base_default_next" : "node_7",
"next_tables" : {
"act_1" : "node_7"
},
"default_entry" : {
- "action_id" : 46,
+ "action_id" : 48,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -6841,7 +7043,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 168,
+ "line" : 177,
"column" : 10,
"source_fragment" : "uplink_pdrs"
},
@@ -6865,11 +7067,12 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [40, 8],
- "actions" : ["FabricIngress.spgw.load_pdr", "NoAction"],
+ "action_ids" : [40, 42, 8],
+ "actions" : ["FabricIngress.spgw.load_pdr", "FabricIngress.spgw.load_pdr_qos", "NoAction"],
"base_default_next" : "node_13",
"next_tables" : {
"FabricIngress.spgw.load_pdr" : "node_13",
+ "FabricIngress.spgw.load_pdr_qos" : "node_13",
"NoAction" : "node_13"
},
"default_entry" : {
@@ -6884,7 +7087,7 @@
"id" : 6,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 157,
+ "line" : 165,
"column" : 10,
"source_fragment" : "downlink_pdrs"
},
@@ -6902,11 +7105,12 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [39, 7],
- "actions" : ["FabricIngress.spgw.load_pdr", "NoAction"],
+ "action_ids" : [39, 41, 7],
+ "actions" : ["FabricIngress.spgw.load_pdr", "FabricIngress.spgw.load_pdr_qos", "NoAction"],
"base_default_next" : "node_13",
"next_tables" : {
"FabricIngress.spgw.load_pdr" : "node_13",
+ "FabricIngress.spgw.load_pdr_qos" : "node_13",
"NoAction" : "node_13"
},
"default_entry" : {
@@ -6921,7 +7125,7 @@
"id" : 7,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 256,
+ "line" : 266,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
},
@@ -6932,14 +7136,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [47],
+ "action_ids" : [49],
"actions" : ["act_2"],
"base_default_next" : "node_15",
"next_tables" : {
"act_2" : "node_15"
},
"default_entry" : {
- "action_id" : 47,
+ "action_id" : 49,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -7084,7 +7288,7 @@
"id" : 9,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 224,
+ "line" : 234,
"column" : 10,
"source_fragment" : "fars"
},
@@ -7102,7 +7306,7 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [41, 42, 43],
+ "action_ids" : [43, 44, 45],
"actions" : ["FabricIngress.spgw.load_normal_far", "FabricIngress.spgw.load_tunnel_far", "FabricIngress.spgw.load_dbuf_far"],
"base_default_next" : "tbl_act_3",
"next_tables" : {
@@ -7111,7 +7315,7 @@
"FabricIngress.spgw.load_dbuf_far" : "tbl_act_3"
},
"default_entry" : {
- "action_id" : 41,
+ "action_id" : 43,
"action_const" : true,
"action_data" : ["0x1", "0x0"],
"action_entry_const" : true
@@ -7122,7 +7326,7 @@
"id" : 10,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 273,
+ "line" : 283,
"column" : 36,
"source_fragment" : "="
},
@@ -7133,14 +7337,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [48],
+ "action_ids" : [50],
"actions" : ["act_3"],
"base_default_next" : "node_19",
"next_tables" : {
"act_3" : "node_19"
},
"default_entry" : {
- "action_id" : 48,
+ "action_id" : 50,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -7162,14 +7366,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [49],
+ "action_ids" : [51],
"actions" : ["act_4"],
"base_default_next" : "node_21",
"next_tables" : {
"act_4" : "node_21"
},
"default_entry" : {
- "action_id" : 49,
+ "action_id" : 51,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -7191,14 +7395,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [50],
+ "action_ids" : [52],
"actions" : ["act_5"],
"base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
"next_tables" : {
"act_5" : "FabricIngress.filtering.ingress_port_vlan"
},
"default_entry" : {
- "action_id" : 50,
+ "action_id" : 52,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -7700,14 +7904,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [51],
+ "action_ids" : [53],
"actions" : ["act_6"],
"base_default_next" : "node_40",
"next_tables" : {
"act_6" : "node_40"
},
"default_entry" : {
- "action_id" : 51,
+ "action_id" : 53,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -7729,14 +7933,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [52],
+ "action_ids" : [54],
"actions" : ["act_7"],
"base_default_next" : null,
"next_tables" : {
"act_7" : null
},
"default_entry" : {
- "action_id" : 52,
+ "action_id" : 54,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -7827,7 +8031,7 @@
"id" : 2,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 246,
+ "line" : 256,
"column" : 16,
"source_fragment" : "fabric_md.spgw.src_iface == SPGW_IFACE_FROM_DBUF"
},
@@ -7853,7 +8057,7 @@
"id" : 3,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 250,
+ "line" : 260,
"column" : 16,
"source_fragment" : "hdr.gtpu.isValid()"
},
@@ -7876,7 +8080,7 @@
"id" : 4,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 255,
+ "line" : 265,
"column" : 16,
"source_fragment" : "fabric_md.spgw.src_iface != SPGW_IFACE_FROM_DBUF"
},
@@ -7902,7 +8106,7 @@
"id" : 5,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 260,
+ "line" : 270,
"column" : 16,
"source_fragment" : "fabric_md.spgw.needs_gtpu_decap == true"
},
@@ -8208,14 +8412,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [59],
+ "action_ids" : [61],
"actions" : ["act_8"],
"base_default_next" : "node_46",
"next_tables" : {
"act_8" : "node_46"
},
"default_entry" : {
- "action_id" : 59,
+ "action_id" : 61,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8237,14 +8441,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [60],
+ "action_ids" : [62],
"actions" : ["act_9"],
"base_default_next" : "node_48",
"next_tables" : {
"act_9" : "node_48"
},
"default_entry" : {
- "action_id" : 60,
+ "action_id" : 62,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8266,14 +8470,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [61],
+ "action_ids" : [63],
"actions" : ["act_10"],
"base_default_next" : "node_50",
"next_tables" : {
"act_10" : "node_50"
},
"default_entry" : {
- "action_id" : 61,
+ "action_id" : 63,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8295,14 +8499,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [53],
+ "action_ids" : [55],
"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" : 55,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8324,14 +8528,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [54],
+ "action_ids" : [56],
"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" : 56,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8366,7 +8570,7 @@
"with_counters" : true,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [55, 56, 57],
+ "action_ids" : [57, 58, 59],
"actions" : ["FabricEgress.egress_next.push_vlan", "FabricEgress.egress_next.pop_vlan", "FabricEgress.egress_next.drop"],
"base_default_next" : "node_55",
"next_tables" : {
@@ -8375,7 +8579,7 @@
"FabricEgress.egress_next.drop" : "node_55"
},
"default_entry" : {
- "action_id" : 57,
+ "action_id" : 59,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8397,14 +8601,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [63],
+ "action_ids" : [65],
"actions" : ["act_12"],
"base_default_next" : "node_57",
"next_tables" : {
"act_12" : "node_57"
},
"default_entry" : {
- "action_id" : 63,
+ "action_id" : 65,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8426,14 +8630,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [62],
+ "action_ids" : [64],
"actions" : ["act_11"],
"base_default_next" : "node_63",
"next_tables" : {
"act_11" : "node_63"
},
"default_entry" : {
- "action_id" : 62,
+ "action_id" : 64,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8455,14 +8659,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [65],
+ "action_ids" : [67],
"actions" : ["act_14"],
"base_default_next" : "node_61",
"next_tables" : {
"act_14" : "node_61"
},
"default_entry" : {
- "action_id" : 65,
+ "action_id" : 67,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8484,14 +8688,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [64],
+ "action_ids" : [66],
"actions" : ["act_13"],
"base_default_next" : "node_63",
"next_tables" : {
"act_13" : "node_63"
},
"default_entry" : {
- "action_id" : 64,
+ "action_id" : 66,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8502,7 +8706,7 @@
"id" : 35,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 330,
+ "line" : 340,
"column" : 16,
"source_fragment" : "gtpu_encap()"
},
@@ -8513,14 +8717,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [58],
+ "action_ids" : [60],
"actions" : ["FabricEgress.spgw.gtpu_encap"],
"base_default_next" : "node_66",
"next_tables" : {
"FabricEgress.spgw.gtpu_encap" : "node_66"
},
"default_entry" : {
- "action_id" : 58,
+ "action_id" : 60,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8531,7 +8735,7 @@
"id" : 36,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 333,
+ "line" : 343,
"column" : 16,
"source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
},
@@ -8542,14 +8746,14 @@
"with_counters" : false,
"support_timeout" : false,
"direct_meters" : null,
- "action_ids" : [66],
+ "action_ids" : [68],
"actions" : ["act_15"],
"base_default_next" : null,
"next_tables" : {
"act_15" : null
},
"default_entry" : {
- "action_id" : 66,
+ "action_id" : 68,
"action_const" : true,
"action_data" : [],
"action_entry_const" : true
@@ -8842,7 +9046,7 @@
"id" : 24,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 328,
+ "line" : 338,
"column" : 12,
"source_fragment" : "fabric_md.spgw.skip_spgw == false"
},
@@ -8875,7 +9079,7 @@
"id" : 25,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 329,
+ "line" : 339,
"column" : 16,
"source_fragment" : "fabric_md.spgw.needs_gtpu_encap == true"
},
@@ -8908,7 +9112,7 @@
"id" : 26,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 332,
+ "line" : 342,
"column" : 16,
"source_fragment" : "fabric_md.spgw.skip_egress_pdr_ctr == false"
},
@@ -8971,7 +9175,7 @@
"id" : 1,
"source_info" : {
"filename" : "include/control/spgw.p4",
- "line" : 349,
+ "line" : 359,
"column" : 8,
"source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
},
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt
index aaee8be..d8d338d 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-spgw/bmv2/default/p4info.txt
@@ -408,6 +408,9 @@
id: 16800614
}
action_refs {
+ id: 16785920
+ }
+ action_refs {
id: 16800567
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -436,6 +439,9 @@
id: 16800614
}
action_refs {
+ id: 16785920
+ }
+ action_refs {
id: 16800567
annotations: "@defaultonly"
scope: DEFAULT_ONLY
@@ -791,6 +797,33 @@
}
actions {
preamble {
+ id: 16785920
+ name: "FabricIngress.spgw.load_pdr_qos"
+ alias: "load_pdr_qos"
+ }
+ params {
+ id: 1
+ name: "ctr_id"
+ bitwidth: 32
+ }
+ params {
+ id: 2
+ name: "far_id"
+ bitwidth: 32
+ }
+ params {
+ id: 3
+ name: "needs_gtpu_decap"
+ bitwidth: 1
+ }
+ params {
+ id: 4
+ name: "qid"
+ bitwidth: 5
+ }
+}
+actions {
+ preamble {
id: 16820307
name: "FabricIngress.spgw.load_normal_far"
alias: "load_normal_far"
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 f6c42ee..3dcb17b 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
@@ -2381,7 +2381,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 116,
+ "line" : 117,
"column" : 31,
"source_fragment" : "0x8847; ..."
}
@@ -2460,7 +2460,7 @@
],
"source_info" : {
"filename" : "include/control/../define.p4",
- "line" : 115,
+ "line" : 116,
"column" : 31,
"source_fragment" : "0x8100; ..."
}