New issue
Advanced search Search tips

Issue 827267 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 2
Type: Bug



Sign in to add a comment

Input events are missing from the performance panel timeline

Project Member Reported by alph@chromium.org, Mar 29 2018

Issue description

To repro.

1. Open a page, e.g. theverge.com
2. Open DevTools and start performance recording.
3. Scroll the page back and forth
4. Stop the recording and see that interaction records track is empty.

I bisected the issue down to this patch https://chromium.googlesource.com/chromium/src/+/ead116c66c4b34077a8437a32acf7f7631a9a71f

Reverting the patch fixes the issue. Dave, could you please take a look. 
 
That change in in 64 and 65. Is this an issue in those branches as well?

Comment 2 Deleted

Ok I can reproduce it. How does the performance recording work. Is it based off trace parsing? Can you point me at the relevant code?

Comment 4 by alph@chromium.org, Mar 29 2018

Yes, it's taken out of the trace here: https://cs.chromium.org/chromium/src/third_party/WebKit/Source/devtools/front_end/timeline_model/TimelineIRModel.js

I'm not sure how this patch affects trace.

Comment 5 by alph@chromium.org, Mar 30 2018

The difference between good and bad trace files is bad frameTreeNodeId in LatencyInfo.Flow event.

GOOD:
{"pid":139157,"tid":139157,"ts":10523951750,"ph":"X",
"cat":"input,benchmark,devtools.timeline",
"name":"LatencyInfo.Flow",
"args":{"step":"SendInputEventUI","frameTreeNodeId":3},
"dur":26,"tdur":27,"tts":3540490,"id":"0x0","bind_id":"0xd9","flow_in":true,"flow_out":true},

BAD:
{"pid":135620,"tid":135620,"ts":9674588362,"ph":"X",
"cat":"input,benchmark,devtools.timeline",
"name":"LatencyInfo.Flow",
"args":{"step":"SendInputEventUI","frameTreeNodeId":-1},
"dur":34,"tdur":35,"tts":949309,"id":"0x0","bind_id":"0x151","flow_in":true,"flow_out":true},

While we are here, let's migrate from "frameTreeNodeId" to "frame", as in the ToTraceValue(LocalFrame*) here [1]. The same token is available on FrameTreeNode as well.

[1] https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/dom/DocumentTiming.cpp?rcl=05022e3097b7454910c6df8f0aa3b8ceb7e7c4ca&l=71
Just a heads up, M66 Stable cut is on April 12th, 10 days away. This issue is marked as RB-Stable for 66. Please make sure to address this issue prior to stable cut. Thanks! 
Project Member

Comment 8 by bugdroid1@chromium.org, Apr 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/92b0e115f1dda20d8a029c90917e5163023c30b4

commit 92b0e115f1dda20d8a029c90917e5163023c30b4
Author: Dave Tapuska <dtapuska@chromium.org>
Date: Wed Apr 04 00:17:46 2018

Ensure the frame tree node id is always set after setting the mojo channel.

The input router is recreated after a new input channel is constructed.
Ensure that the Frame Tree Node Id is set in all codepaths.

BUG= 827267 

Change-Id: Ie8c6a2665afccad23fdea9cfa0dc186c3b919455
Reviewed-on: https://chromium-review.googlesource.com/992357
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Reviewed-by: Charlie Reis <creis@chromium.org>
Commit-Queue: Dave Tapuska <dtapuska@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547884}
[modify] https://crrev.com/92b0e115f1dda20d8a029c90917e5163023c30b4/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/92b0e115f1dda20d8a029c90917e5163023c30b4/content/browser/renderer_host/input/input_router.h

Labels: TE-Verified-M67 TE-Verified-67.0.3388.0
Able to reproduce the issue on version 67.0.3386.0(build without fix). Hence verifying the fix on latest canary 67.0.3388.0 using Windows 10, Ubuntu 14.04 and Mac 10.13.3.

Observing "Scroll" text in interactions tab on scrolling and recording performance.

Attaching screenshot for reference. As fix is working as expected adding verified labels.

Thanks! 

827267.png
348 KB View Download
Labels: Merge-Request-66
Project Member

Comment 11 by sheriffbot@chromium.org, Apr 4 2018

Labels: -Merge-Request-66 Merge-Review-66 Hotlist-Merge-Review
This bug requires manual review: We are only 12 days from stable.
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), josafat@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Review-66 Merge-Approved-66
Approving merge for M66. Branch:3359
Project Member

Comment 13 by bugdroid1@chromium.org, Apr 5 2018

Labels: -merge-approved-66 merge-merged-3359
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8bfdbd1b9d10d40be19b26d1310cf5e4030411a8

commit 8bfdbd1b9d10d40be19b26d1310cf5e4030411a8
Author: Dave Tapuska <dtapuska@chromium.org>
Date: Thu Apr 05 16:49:51 2018

Ensure the frame tree node id is always set after setting the mojo channel.

The input router is recreated after a new input channel is constructed.
Ensure that the Frame Tree Node Id is set in all codepaths.

BUG= 827267 
TBR=dtapuska@chromium.org

(cherry picked from commit 92b0e115f1dda20d8a029c90917e5163023c30b4)

Change-Id: Ie8c6a2665afccad23fdea9cfa0dc186c3b919455
Reviewed-on: https://chromium-review.googlesource.com/992357
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Reviewed-by: Charlie Reis <creis@chromium.org>
Commit-Queue: Dave Tapuska <dtapuska@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#547884}
Reviewed-on: https://chromium-review.googlesource.com/998311
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Cr-Commit-Position: refs/branch-heads/3359@{#588}
Cr-Branched-From: 66afc5e5d10127546cc4b98b9117aff588b5e66b-refs/heads/master@{#540276}
[modify] https://crrev.com/8bfdbd1b9d10d40be19b26d1310cf5e4030411a8/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/8bfdbd1b9d10d40be19b26d1310cf5e4030411a8/content/browser/renderer_host/input/input_router.h

Status: Fixed (was: Assigned)
Labels: TE-Verified-66.0.3359.106 TE-Verified-M66
Able to reproduce the issue on version 67.0.3386.0(build without fix). Hence verifying the fix on latest beta 66.0.3359.106 using Windows 10, Ubuntu 14.04 and Mac 10.13.3.

Observing "Scroll" text in interactions tab on scrolling and recording performance.

Attaching screenshot for reference. As fix is working as expected adding verified labels.

Thanks! 
827267_66.0.3359.106.png
94.9 KB View Download

Sign in to add a comment