Revert "Chrome Metrics: Switch to using threads called NOT LIKE "%ThreadPool%""

This reverts commit c7d37bb3ec4401a1cab73c8ac8e690dbffebcfab.

Reason for revert: Causing timeouts when rolling to G3

Change-Id: Iad59f11ce43d0f9c5c7b1299bb940b1d6cf91769
diff --git a/Android.bp b/Android.bp
index 156478e..6510a1c 100644
--- a/Android.bp
+++ b/Android.bp
@@ -8037,7 +8037,7 @@
     "src/trace_processor/metrics/chrome/actual_power_by_rail_mode.sql",
     "src/trace_processor/metrics/chrome/chrome_event_metadata.sql",
     "src/trace_processor/metrics/chrome/chrome_processes.sql",
-    "src/trace_processor/metrics/chrome/chrome_thread_slice.sql",
+    "src/trace_processor/metrics/chrome/chrome_thread_slice_with_cpu_time.sql",
     "src/trace_processor/metrics/chrome/cpu_time_by_category.sql",
     "src/trace_processor/metrics/chrome/cpu_time_by_rail_mode.sql",
     "src/trace_processor/metrics/chrome/estimated_power_by_category.sql",
diff --git a/BUILD b/BUILD
index ecaabee..8d7097f 100644
--- a/BUILD
+++ b/BUILD
@@ -1063,7 +1063,7 @@
         "src/trace_processor/metrics/chrome/actual_power_by_rail_mode.sql",
         "src/trace_processor/metrics/chrome/chrome_event_metadata.sql",
         "src/trace_processor/metrics/chrome/chrome_processes.sql",
-        "src/trace_processor/metrics/chrome/chrome_thread_slice.sql",
+        "src/trace_processor/metrics/chrome/chrome_thread_slice_with_cpu_time.sql",
         "src/trace_processor/metrics/chrome/cpu_time_by_category.sql",
         "src/trace_processor/metrics/chrome/cpu_time_by_rail_mode.sql",
         "src/trace_processor/metrics/chrome/estimated_power_by_category.sql",
diff --git a/src/trace_processor/metrics/BUILD.gn b/src/trace_processor/metrics/BUILD.gn
index 9302408..01f68e3 100644
--- a/src/trace_processor/metrics/BUILD.gn
+++ b/src/trace_processor/metrics/BUILD.gn
@@ -73,7 +73,7 @@
   "chrome/actual_power_by_rail_mode.sql",
   "chrome/chrome_event_metadata.sql",
   "chrome/chrome_processes.sql",
-  "chrome/chrome_thread_slice.sql",
+  "chrome/chrome_thread_slice_with_cpu_time.sql",
   "chrome/cpu_time_by_category.sql",
   "chrome/cpu_time_by_rail_mode.sql",
   "chrome/estimated_power_by_category.sql",
diff --git a/src/trace_processor/metrics/chrome/chrome_thread_slice.sql b/src/trace_processor/metrics/chrome/chrome_thread_slice.sql
deleted file mode 100644
index 4a181f0..0000000
--- a/src/trace_processor/metrics/chrome/chrome_thread_slice.sql
+++ /dev/null
@@ -1,38 +0,0 @@
---
--- Copyright 2020 The Android Open Source Project
---
--- Licensed under the Apache License, Version 2.0 (the "License");
--- you may not use this file except in compliance with the License.
--- You may obtain a copy of the License at
---
---     https://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing, software
--- distributed under the License is distributed on an "AS IS" BASIS,
--- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--- See the License for the specific language governing permissions and
--- limitations under the License.
---
-
-SELECT RUN_METRIC('chrome/chrome_processes.sql');
-
--- Grab all the thread tracks which are found in chrome threads.
-DROP VIEW IF EXISTS chrome_track;
-CREATE VIEW chrome_track AS
-  SELECT
-    *
-  FROM thread_track
-  WHERE utid IN (SELECT utid FROM chrome_thread);
-
--- From all the chrome thread tracks select all the slice details for thread
--- slices.
-DROP VIEW IF EXISTS chrome_thread_slice;
-CREATE VIEW chrome_thread_slice AS
-  SELECT
-    thread_slice.*
-  FROM
-    thread_slice JOIN
-    chrome_track ON
-        chrome_track.id = thread_slice.track_id
-  WHERE
-    track_id in (SELECT id FROM chrome_track);
diff --git a/src/trace_processor/metrics/chrome/chrome_thread_slice_with_cpu_time.sql b/src/trace_processor/metrics/chrome/chrome_thread_slice_with_cpu_time.sql
new file mode 100644
index 0000000..4af0d45
--- /dev/null
+++ b/src/trace_processor/metrics/chrome/chrome_thread_slice_with_cpu_time.sql
@@ -0,0 +1,98 @@
+--
+-- Copyright 2020 The Android Open Source Project
+--
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+--     https://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+
+SELECT RUN_METRIC('chrome/chrome_processes.sql');
+
+-- Grab all the thread tracks which are found in chrome threads.
+DROP VIEW IF EXISTS chrome_track;
+CREATE VIEW chrome_track AS
+  SELECT
+    *
+  FROM thread_track
+  WHERE utid IN (SELECT utid FROM chrome_thread);
+
+-- From all the chrome thread tracks select all the slice details as well as
+-- the utid of the track so we can join with counter table later.
+DROP VIEW IF EXISTS chrome_slice;
+CREATE VIEW chrome_slice AS
+  SELECT
+    slice.*,
+    chrome_track.utid
+  FROM
+    slice JOIN
+    chrome_track ON
+        chrome_track.id = slice.track_id
+  WHERE
+    track_id in (SELECT id FROM chrome_track);
+
+-- Using utid join the thread_counter_track to chrome thread slices. This allows
+-- the filtering of the counter table to only counters associated to these
+-- threads.
+DROP VIEW IF EXISTS chrome_slice_and_counter_track;
+CREATE VIEW chrome_slice_and_counter_track AS
+  SELECT
+    s.*,
+    thread_counter_track.id as counter_track_id,
+    thread_counter_track.name as counter_name
+  FROM
+    chrome_slice s JOIN
+    thread_counter_track ON
+        thread_counter_track.utid = s.utid AND
+        thread_counter_track.name = "thread_time";
+
+-- Join each slice with the recorded value at the beginning and the end, as
+-- well as computing the total CPU time each slice took.
+--
+-- We use MIN and MAX inside because sometimes nested slices will have the exact
+-- same timestamp and we need to select one, there is nothing tying a particular
+-- counter value to which slice generated it so we always choose the minimum for
+-- the start on ties and the maximum for ties on the end of the slice. This
+-- means this is always an overestimate, but events being emitted at exactly the
+-- same timestamp is relatively rare so shouldn't cause to much inflation.
+DROP VIEW IF EXISTS chrome_thread_slice_with_cpu_time;
+CREATE VIEW chrome_thread_slice_with_cpu_time AS
+  SELECT
+    end_cpu_time - start_cpu_time AS slice_cpu_time,
+    *
+  FROM (
+    SELECT
+      s.*,
+      min_counter.start_cpu_time
+    FROM
+      chrome_slice_and_counter_track s LEFT JOIN (
+        SELECT
+          ts,
+          track_id,
+          MIN(value) AS start_cpu_time
+        FROM counter
+        GROUP BY 1, 2
+      ) min_counter ON
+          min_counter.ts = s.ts AND min_counter.track_id = s.counter_track_id
+  ) min_and_slice LEFT JOIN (
+    SELECT
+      ts,
+      track_id,
+      MAX(value) AS end_cpu_time
+    FROM counter
+    GROUP BY 1, 2
+  ) max_counter ON
+      max_counter.ts =
+          CASE WHEN min_and_slice.dur >= 0 THEN
+            min_and_slice.ts + min_and_slice.dur
+          ELSE
+            min_and_slice.ts
+          END AND
+      max_counter.track_id = min_and_slice.counter_track_id;
diff --git a/src/trace_processor/metrics/chrome/scroll_jank_cause_queuing_delay.sql b/src/trace_processor/metrics/chrome/scroll_jank_cause_queuing_delay.sql
index 30f1c9b..a57fe70 100644
--- a/src/trace_processor/metrics/chrome/scroll_jank_cause_queuing_delay.sql
+++ b/src/trace_processor/metrics/chrome/scroll_jank_cause_queuing_delay.sql
@@ -13,7 +13,7 @@
 -- See the License for the specific language governing permissions and
 -- limitations under the License.
 
-SELECT RUN_METRIC('chrome/chrome_thread_slice.sql');
+SELECT RUN_METRIC('chrome/chrome_thread_slice_with_cpu_time.sql');
 SELECT RUN_METRIC('chrome/scroll_flow_event_queuing_delay.sql');
 
 -- See b/184134310 why we remove ThreadController active.
@@ -24,38 +24,21 @@
     ancestor.id AS task_ancestor_id,
     ancestor.name AS task_ancestor_name
   FROM
-    chrome_thread_slice AS slice LEFT JOIN
+    chrome_thread_slice_with_cpu_time AS slice LEFT JOIN
     ancestor_slice(slice.id) as ancestor ON ancestor.id = slice.parent_id
   WHERE
     slice.name != "ThreadController active" AND
     (slice.depth = 0 OR ancestor.name = "ThreadController active");
 
-
--- See b/166441398 & crbug/1094361 for why we remove threadpool (originally
--- the -to-End step). In essence -to-End is often reported on the ThreadPool
--- after the fact with explicit timestamps so it being blocked isn't noteworthy.
-DROP VIEW IF EXISTS blocking_chrome_tasks_without_threadpool;
-CREATE VIEW blocking_chrome_tasks_without_threadpool AS
-  SELECT
-     chrome_process.process_type AS process_name,
-     chrome_thread.canonical_name AS thread_name,
-     slice.*
-  FROM
-    blocking_tasks_no_threadcontroller_active AS slice JOIN
-    thread_track JOIN
-    chrome_thread JOIN
-    chrome_process ON
-    thread_track.id = slice.track_id AND
-    thread_track.utid = chrome_thread.utid AND
-    chrome_thread.upid = chrome_process.upid
-  WHERE
-    slice.name NOT LIKE "%ThreadPool%";
-
 -- This view grabs any slice that could have prevented any GestureScrollUpdate
 -- flow event from being run (queuing delays). For RunTask we know that its
 -- generic (and thus hard to figure out whats the cause) so we grab the src
 -- location to make it more meaningful.
 --
+-- See b/166441398 & crbug/1094361 for why we remove the -to-End step. In
+-- essence -to-End is often reported on the ThreadPool after the fact with
+-- explicit timestamps so it being blocked isn't noteworthy.
+--
 -- See b/184134310 for why we allow depth == 1 and ancestor.id is null (which
 -- implies its a "ThreadController active" slice because we removed it
 -- previously).
@@ -89,10 +72,14 @@
     slice.*
   FROM
     scroll_flow_event_queuing_delay queuing JOIN
-    blocking_chrome_tasks_without_threadpool AS slice ON
+    blocking_tasks_no_threadcontroller_active AS slice ON
         slice.ts + slice.dur > queuing.ancestor_end AND
         queuing.maybe_next_ancestor_ts > slice.ts AND
-        slice.track_id = queuing.next_track_id
+        slice.track_id = queuing.next_track_id AND
+        queuing.description NOT LIKE
+            "InputLatency.LatencyInfo.%ank.STEP_DRAW_AND_SWAP-to-End" AND
+        queuing.description NOT LIKE
+            "InputLatency.LatencyInfo.%ank.STEP_FINISHED_SWAP_BUFFERS-to-End"
   WHERE
     queuing_time_ns IS NOT NULL AND
     queuing_time_ns > 0;
@@ -127,11 +114,10 @@
 DROP TABLE IF EXISTS all_descendant_blocking_tasks_queuing_delay_with_cpu_time;
 CREATE TABLE all_descendant_blocking_tasks_queuing_delay_with_cpu_time AS
   SELECT
-    cpu.thread_dur AS descendant_thread_dur,
-    CAST(cpu.thread_dur AS REAL) / descendant.thread_dur
-        AS descendant_cpu_percentage,
-    CAST(cpu.thread_dur AS REAL) /
-        (descendant.thread_dur /
+    cpu.slice_cpu_time AS descendant_slice_cpu_time,
+    cpu.slice_cpu_time / descendant.slice_cpu_time AS descendant_cpu_percentage,
+    cpu.slice_cpu_time /
+        (descendant.slice_cpu_time /
           (1 << (descendant.descendant_depth - 1))) > 0.5
             AS descendant_cpu_time_above_relative_threshold,
     descendant_dur / descendant.dur AS descendant_dur_percentage,
@@ -142,8 +128,8 @@
   FROM
     all_descendant_blocking_tasks_queuing_delay descendant LEFT JOIN (
       SELECT
-        id, thread_dur
-      FROM chrome_thread_slice
+        id, slice_cpu_time
+      FROM chrome_thread_slice_with_cpu_time
     ) AS cpu ON
         cpu.id = descendant.descendant_id;
 
@@ -221,8 +207,6 @@
     dur_overlapping_ns,
     description,
     replace(file, rtrim(file, replace(file, '/', '')), '') AS file,
-    thread_name,
-    process_name,
     function,
     GROUP_CONCAT(
       CASE WHEN descendant_depth < invalid_depth OR descendant_major_slice THEN
@@ -253,11 +237,11 @@
       END, "-") AS descendant_name,
     GROUP_CONCAT(
       CASE WHEN descendant_depth < invalid_depth OR descendant_major_slice THEN
-        descendant_thread_dur
+        descendant_slice_cpu_time
       ELSE
         NULL
       END
-    , "-") AS descendant_thread_dur,
+    , "-") AS descendant_slice_cpu_time,
     GROUP_CONCAT(
       CASE WHEN descendant_depth < invalid_depth OR descendant_major_slice THEN
         descendant_cpu_percentage
@@ -267,7 +251,7 @@
     , "-") AS descendant_cpu_time
   FROM
     blocking_tasks_queuing_delay_with_invalid_depth
-  GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
+  GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
   ORDER BY descendant_cpu_percentage DESC;
 
 -- Create a common name for each "cause" based on the slice stack we found.
@@ -296,8 +280,8 @@
 
 -- Join every row (jank and non-jank with the average non-jank time for the
 -- given metric_name).
-DROP VIEW IF EXISTS scroll_jank_cause_queuing_delay;
-CREATE VIEW scroll_jank_cause_queuing_delay AS
+DROP VIEW IF EXISTS scroll_jank_cause_queuing_delay_unannotated;
+CREATE VIEW scroll_jank_cause_queuing_delay_unannotated AS
   SELECT
     base.*,
     'InputLatency.LatencyInfo.Flow.QueuingDelay.' ||
@@ -309,3 +293,14 @@
     scroll_jank_cause_queuing_delay_temp base LEFT JOIN
     scroll_jank_cause_queuing_delay_average_no_jank_time avg_no_jank ON
         base.location = avg_no_jank.location;
+
+-- Annotate with process and thread names.
+DROP VIEW IF EXISTS scroll_jank_cause_queuing_delay;
+CREATE VIEW scroll_jank_cause_queuing_delay AS
+SELECT p.process_type AS process_name, ct.canonical_name AS thread_name, s.*
+FROM scroll_jank_cause_queuing_delay_unannotated s,
+  thread_track tt, chrome_thread ct,
+  chrome_process p
+WHERE s.track_id = tt.id
+  AND tt.utid = ct.utid
+  AND ct.upid = p.upid;
diff --git a/test/trace_processor/chrome/chrome_thread_slice.out b/test/trace_processor/chrome/chrome_thread_slice.out
deleted file mode 100644
index e3ed290..0000000
--- a/test/trace_processor/chrome/chrome_thread_slice.out
+++ /dev/null
@@ -1,7 +0,0 @@
-
-"trace_id","dur","thread_dur"
-2734,25000,25000
-2734,1000,2000
-2734,2000,2000
-2734,258000,171000
-2734,1000,1000
diff --git a/test/trace_processor/chrome/chrome_thread_slice_repeated.out b/test/trace_processor/chrome/chrome_thread_slice_repeated.out
deleted file mode 100644
index 1efb2b1..0000000
--- a/test/trace_processor/chrome/chrome_thread_slice_repeated.out
+++ /dev/null
@@ -1,9 +0,0 @@
-
-"name","ts","dur","thread_dur"
-"event1_on_t1",1000,100,10000
-"event2_on_t1",2000,200,30000
-"event3_on_t1",2000,200,10000
-"event4_on_t1",4000,0,0
-"float_counter_on_t1",4300,0,"[NULL]"
-"float_counter_on_t1",4500,0,"[NULL]"
-"event1_on_t3",4000,100,5000
diff --git a/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time.out b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time.out
new file mode 100644
index 0000000..92b2a6d
--- /dev/null
+++ b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time.out
@@ -0,0 +1,7 @@
+
+"trace_id","dur","start_cpu_time","end_cpu_time","slice_cpu_time"
+2734,2000,3192921000.000000,3192923000.000000,2000.000000
+2734,258000,3192951000.000000,3193122000.000000,171000.000000
+2734,1000,3193009000.000000,3193010000.000000,1000.000000
+2734,25000,1579266000.000000,1579291000.000000,25000.000000
+2734,1000,1579284000.000000,1579286000.000000,2000.000000
diff --git a/test/trace_processor/chrome/chrome_thread_slice.sql b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time.sql
similarity index 83%
rename from test/trace_processor/chrome/chrome_thread_slice.sql
rename to test/trace_processor/chrome/chrome_thread_slice_with_cpu_time.sql
index 654f424..10857de 100644
--- a/test/trace_processor/chrome/chrome_thread_slice.sql
+++ b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time.sql
@@ -14,14 +14,16 @@
 -- limitations under the License.
 --
 
-SELECT RUN_METRIC('chrome/chrome_thread_slice.sql')
+SELECT RUN_METRIC('chrome/chrome_thread_slice_with_cpu_time.sql')
     AS suppress_query_output;
 
 SELECT
   EXTRACT_ARG(arg_set_id, 'chrome_latency_info.trace_id') AS trace_id,
   dur,
-  thread_dur
-FROM chrome_thread_slice
+  start_cpu_time,
+  end_cpu_time,
+  slice_cpu_time
+FROM chrome_thread_slice_with_cpu_time
 WHERE
   name = 'LatencyInfo.Flow' AND
   EXTRACT_ARG(arg_set_id, 'chrome_latency_info.trace_id') = 2734;
diff --git a/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time_repeated.out b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time_repeated.out
new file mode 100644
index 0000000..0794b25
--- /dev/null
+++ b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time_repeated.out
@@ -0,0 +1,9 @@
+
+"name","ts","dur","start_cpu_time","end_cpu_time","slice_cpu_time"
+"event1_on_t1",1000,100,1000000.000000,1010000.000000,10000.000000
+"event2_on_t1",2000,200,2000000.000000,2030000.000000,30000.000000
+"event3_on_t1",2000,200,2000000.000000,2030000.000000,30000.000000
+"event4_on_t1",4000,0,2040000.000000,2040000.000000,0.000000
+"float_counter_on_t1",4300,0,"[NULL]","[NULL]","[NULL]"
+"float_counter_on_t1",4500,0,"[NULL]","[NULL]","[NULL]"
+"event1_on_t3",4000,100,10000.000000,15000.000000,5000.000000
diff --git a/test/trace_processor/chrome/chrome_thread_slice_repeated.sql b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time_repeated.sql
similarity index 81%
rename from test/trace_processor/chrome/chrome_thread_slice_repeated.sql
rename to test/trace_processor/chrome/chrome_thread_slice_with_cpu_time_repeated.sql
index 807c611..4702b55 100644
--- a/test/trace_processor/chrome/chrome_thread_slice_repeated.sql
+++ b/test/trace_processor/chrome/chrome_thread_slice_with_cpu_time_repeated.sql
@@ -14,12 +14,14 @@
 -- limitations under the License.
 --
 
-SELECT RUN_METRIC('chrome/chrome_thread_slice.sql')
+SELECT RUN_METRIC('chrome/chrome_thread_slice_with_cpu_time.sql')
     AS suppress_query_output;
 
 SELECT
   name,
   ts,
   dur,
-  thread_dur
-FROM chrome_thread_slice;
+  start_cpu_time,
+  end_cpu_time,
+  slice_cpu_time
+FROM chrome_thread_slice_with_cpu_time
diff --git a/test/trace_processor/chrome/index b/test/trace_processor/chrome/index
index 7981c2a..5466346 100644
--- a/test/trace_processor/chrome/index
+++ b/test/trace_processor/chrome/index
@@ -10,8 +10,8 @@
 ../../data/chrome_scroll_without_vsync.pftrace scroll_flow_event_queuing_delay_general_validation.sql scroll_flow_event_general_validation.out
 ../../data/chrome_scroll_without_vsync.pftrace scroll_jank_cause_queuing_delay.sql scroll_jank_cause_queuing_delay.out
 ../../data/chrome_scroll_without_vsync.pftrace scroll_jank_cause_queuing_delay_general_validation.sql scroll_jank_cause_queuing_delay_general_validation.out
-../../data/chrome_scroll_without_vsync.pftrace chrome_thread_slice.sql chrome_thread_slice.out
-../track_event/track_event_counters.textproto chrome_thread_slice_repeated.sql chrome_thread_slice_repeated.out
+../../data/chrome_scroll_without_vsync.pftrace chrome_thread_slice_with_cpu_time.sql chrome_thread_slice_with_cpu_time.out
+../track_event/track_event_counters.textproto chrome_thread_slice_with_cpu_time_repeated.sql chrome_thread_slice_with_cpu_time_repeated.out
 ../../data/chrome_rendering_desktop.pftrace frame_times frame_times_metric.out
 scroll_jank_mojo_simple_watcher.py scroll_jank_mojo_simple_watcher.sql scroll_jank_mojo_simple_watcher.out
 
diff --git a/test/trace_processor/chrome/scroll_jank_cause_queuing_delay.out b/test/trace_processor/chrome/scroll_jank_cause_queuing_delay.out
index a54d9b9..eedf5a2 100644
--- a/test/trace_processor/chrome/scroll_jank_cause_queuing_delay.out
+++ b/test/trace_processor/chrome/scroll_jank_cause_queuing_delay.out
@@ -8,7 +8,6 @@
 "Renderer","Compositor",2918,0,7000,"InputLatency.LatencyInfo.Flow.QueuingDelay.NoJank.BlockingTasksUs.ScrollPredictor::ResampleScrollEvents"
 "Renderer","Compositor",2918,0,25000,"InputLatency.LatencyInfo.Flow.QueuingDelay.NoJank.BlockingTasksUs.InputHandlerProxy::HandleGestureScrollUpdate-DeltaUnits"
 "Renderer","Compositor",2918,0,6000,"InputLatency.LatencyInfo.Flow.QueuingDelay.NoJank.BlockingTasksUs.LatencyInfo.Flow"
-"Gpu","VizCompositorThread",2918,0,10000,"InputLatency.LatencyInfo.Flow.QueuingDelay.NoJank.BlockingTasksUs.LatencyInfo.Flow"
 "Browser","CrProcessMain",2926,1,52000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.InputRouterImpl::GestureEventHandled-GestureEventQueue::ProcessGestureAck"
 "Browser","CrProcessMain",2926,1,17000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.GestureProvider::OnTouchEvent"
 "Renderer","Compositor",2926,1,1208,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.WidgetInputHandlerImpl::DispatchNonBlockingEvent-LatencyInfo.Flow"
@@ -20,6 +19,3 @@
 "Gpu","VizCompositorThread",2926,1,2000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.LatencyInfo.Flow"
 "Gpu","VizCompositorThread",2926,1,5000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.LatencyInfo.Flow"
 "Gpu","VizCompositorThread",2926,1,8000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.LatencyInfo.Flow"
-"Gpu","VizCompositorThread",2926,1,2000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.LatencyInfo.Flow"
-"Gpu","VizCompositorThread",2926,1,8000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.LatencyInfo.Flow"
-"Gpu","VizCompositorThread",2926,1,2000,"InputLatency.LatencyInfo.Flow.QueuingDelay.Jank.BlockingTasksUs.LatencyInfo.Flow"
diff --git a/test/trace_processor/chrome/scroll_jank_cause_queuing_delay_general_validation.out b/test/trace_processor/chrome/scroll_jank_cause_queuing_delay_general_validation.out
index 7246d90..48fe6de 100644
--- a/test/trace_processor/chrome/scroll_jank_cause_queuing_delay_general_validation.out
+++ b/test/trace_processor/chrome/scroll_jank_cause_queuing_delay_general_validation.out
@@ -1,3 +1,3 @@
 
 "total","janky_latency_info_non_jank_avg_dur","non_janky_latency_info_non_jank_avg_dur"
-139,6225.130890,6225.130890
+139,6387.096774,6387.096774