potential Jank caused by RenderWidgetHostImpl::OnStartDragging |
||||
Issue description
Slow-reports is shipped back to our server with a chrome trace when some jank is detected on the chrome main thread.
In some case, the jank seems to be multiple seconds. See attachment.
Slow-reports (crash server)
38b24142f4540d03 windows 69.0.3486.0 12 sec
05a5695d2dab9c05 windows 67.0.3371.0 10 sec
a4dd5b53755509a6 windows 69.0.3495.0 3 sec
The culprit function is DragHostMsg_StartDragging.
This is pointing to this code:
https://cs.chromium.org/chromium/src/content/browser/renderer_host/render_widget_host_impl.cc?type=cs&sq=package:chromium&g=0&l=1810
My hypothesis is that some expensive computation is hidden behind
1) for (const auto& file_info : drop_data.filenames) {
2) for (size_t i = 0; i < drop_data.file_system_files.size(); ++i) {
,
Jul 20
,
Jul 20
,
Jul 20
Actually, from the sampling profiler it looks like the OS is entering a nested loop : https://uma.googleplex.com/p/chrome/callstacks?sid=95ab2ebf37624b2586c1663f9fa2c26f WAI?
,
Jul 20
I was able to repro locally, with more tracing categories activated. See attachments.
,
Jul 25
I believe this is WAI. It seems there is an inner tasks running queue. |
||||
►
Sign in to add a comment |
||||
Comment 1 by etienneb@chromium.org
, Jul 20