Fix minor bugs in INT sink

Change-Id: I69bf7e9c5cbf2ab4750b17ab430de00423d7290c
(cherry picked from commit ac96e5bd21df90c689724421439c600927c6ba18)
diff --git a/pipelines/fabric/impl/src/main/resources/include/int/int_main.p4 b/pipelines/fabric/impl/src/main/resources/include/int/int_main.p4
index c1368d8..7c515a5 100644
--- a/pipelines/fabric/impl/src/main/resources/include/int/int_main.p4
+++ b/pipelines/fabric/impl/src/main/resources/include/int/int_main.p4
@@ -86,7 +86,7 @@
         if(fabric_metadata.int_meta.sink == _TRUE) {
             // FIXME: this works only on BMv2
             #ifdef __TARGET_BMV2__
-            clone(CloneType.I2E, REPORT_MIRROR_SESSION_ID);
+            clone3(CloneType.I2E, REPORT_MIRROR_SESSION_ID, {standard_metadata.ingress_port});
             #endif
         }
 #endif // WITH_INT_SINK
diff --git a/pipelines/fabric/impl/src/main/resources/include/int/int_report.p4 b/pipelines/fabric/impl/src/main/resources/include/int/int_report.p4
index aaec185..1e85705 100644
--- a/pipelines/fabric/impl/src/main/resources/include/int/int_report.p4
+++ b/pipelines/fabric/impl/src/main/resources/include/int/int_report.p4
@@ -50,6 +50,7 @@
         hdr.report_ethernet.setValid();
         hdr.report_ethernet.dst_addr = mon_mac;
         hdr.report_ethernet.src_addr = src_mac;
+        hdr.report_eth_type.setValid();
         hdr.report_eth_type.value = ETHERTYPE_IPV4;
 
         //Report IPV4 Header
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 8e85366..6dd6ac2 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
@@ -681,7 +681,18 @@
     {
       "id" : 2,
       "name" : "fl_0",
-      "elements" : []
+      "source_info" : {
+        "filename" : "include/int/int_main.p4",
+        "line" : 89,
+        "column" : 60,
+        "source_fragment" : "{standard_metadata.ingress_port}"
+      },
+      "elements" : [
+        {
+          "type" : "field",
+          "value" : ["standard_metadata", "ingress_port"]
+        }
+      ]
     }
   ],
   "errors" : [
@@ -6116,7 +6127,7 @@
             "filename" : "include/int/int_main.p4",
             "line" : 89,
             "column" : 12,
-            "source_fragment" : "clone(CloneType.I2E, REPORT_MIRROR_SESSION_ID)"
+            "source_fragment" : "clone3(CloneType.I2E, REPORT_MIRROR_SESSION_ID, {standard_metadata.ingress_port})"
           }
         }
       ]
@@ -13492,6 +13503,21 @@
           }
         },
         {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "report_eth_type"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_report.p4",
+            "line" : 53,
+            "column" : 8,
+            "source_fragment" : "hdr.report_eth_type.setValid()"
+          }
+        },
+        {
           "op" : "assign",
           "parameters" : [
             {
@@ -13520,7 +13546,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 56,
+            "line" : 57,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.setValid()"
           }
@@ -13539,7 +13565,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 57,
+            "line" : 58,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.version = 4w4"
           }
@@ -13558,7 +13584,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 58,
+            "line" : 59,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.ihl = 4w5"
           }
@@ -13577,7 +13603,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 59,
+            "line" : 60,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.dscp = 6w0"
           }
@@ -13596,7 +13622,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 60,
+            "line" : 61,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.ecn = 2w0"
           }
@@ -13638,7 +13664,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 62,
+            "line" : 63,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.total_len = (bit<16>) IPV4_MIN_HEAD_LEN + (bit<16>) UDP_HEADER_LEN + ..."
           }
@@ -13657,7 +13683,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 65,
+            "line" : 66,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.identification = 0"
           }
@@ -13676,7 +13702,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 66,
+            "line" : 67,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.flags = 0"
           }
@@ -13695,7 +13721,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 67,
+            "line" : 68,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.frag_offset = 0"
           }
@@ -13714,7 +13740,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 68,
+            "line" : 69,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.ttl = 0xFF"
           }
@@ -13752,7 +13778,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 70,
+            "line" : 71,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.src_addr = src_ip"
           }
@@ -13771,7 +13797,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 71,
+            "line" : 72,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.dst_addr = mon_ip"
           }
@@ -13786,7 +13812,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 74,
+            "line" : 75,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.setValid()"
           }
@@ -13805,7 +13831,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 75,
+            "line" : 76,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.sport = 0"
           }
@@ -13824,7 +13850,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 76,
+            "line" : 77,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.dport = mon_port"
           }
@@ -13866,7 +13892,7 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 77,
+            "line" : 78,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.len = (bit<16>) UDP_HEADER_LEN + (bit<16>) REPORT_FIXED_HEADER_LEN + ..."
           }
@@ -17520,7 +17546,7 @@
             "filename" : "include/int/int_main.p4",
             "line" : 89,
             "column" : 12,
-            "source_fragment" : "clone(CloneType.I2E, REPORT_MIRROR_SESSION_ID)"
+            "source_fragment" : "clone3(CloneType.I2E, REPORT_MIRROR_SESSION_ID, {standard_metadata.ingress_port})"
           },
           "key" : [],
           "match_type" : "exact",
@@ -20618,7 +20644,7 @@
           "id" : 85,
           "source_info" : {
             "filename" : "include/int/int_report.p4",
-            "line" : 86,
+            "line" : 87,
             "column" : 10,
             "source_fragment" : "tb_generate_report"
           },