3.72ms uninterruptible reflow at get_lineScrollAmount@chrome://global/content/bindings/scrollbox.xml:172:13

NEW
Unassigned

Status

()

defect
P4
normal
2 years ago
7 months ago

People

(Reporter: marco, Unassigned)

Tracking

(Blocks 1 bug, {perf})

unspecified
Points:
---
Dependency tree / graph
Bug Flags:
qe-verify -

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [ohnoreflow][qf:p3][fxperf:p3])

Reporter

Description

2 years ago
Here's the stack:

get_lineScrollAmount@chrome://global/content/bindings/scrollbox.xml:172:13
onxblwheel@chrome://global/content/bindings/scrollbox.xml:685:15
Duplicate of this bug: 1360217
          var totalWidth =
            elements[high].getBoundingClientRect()[end] - elements[low].getBoundingClientRect()[start];
http://searchfox.org/mozilla-central/rev/ce5ccb6a8ca803271c946ccb8b43b7e7d8b64e7a/toolkit/content/widgets/scrollbox.xml#170
Component: Untriaged → XUL Widgets
Product: Firefox → Toolkit
Flags: qe-verify?
Priority: -- → P2
What UI does this happen with? Overflowing menus?
Flags: needinfo?(mcastelluccio)
Whiteboard: [ohnoreflow][qf][photon-performance] → [ohnoreflow][qf:p1][photon-performance]
Reporter

Comment 4

2 years ago
I was able to reproduce this again, but I haven't noticed exactly when this happens.
Flags: needinfo?(mcastelluccio)
Flags: qe-verify? → qe-verify-
Priority: P2 → P3
Whiteboard: [ohnoreflow][qf:p1][photon-performance] → [ohnoreflow][qf:p1][reserve-photon-performance]
Whiteboard: [ohnoreflow][qf:p1][reserve-photon-performance] → [ohnoreflow][qf:p2][reserve-photon-performance]
I don't think this is related to tabs.
Blocks: photon-perf-upforgrabs
No longer blocks: photon-perf-tabs

Comment 6

2 years ago
The code here no longer exists; it was removed by 1387701.

Dao, is there still something to do here?
Flags: needinfo?(dao+bmo)
(In reply to Neil Deakin from comment #6)
> The code here no longer exists; it was removed by 1387701.
> 
> Dao, is there still something to do here?

It likely still flushes layout via scrollSize. I don't know if there's a reasonable way around this, and if this is even worth much effort. AFAIK this only affects overflowing menus.
Flags: needinfo?(dao+bmo)
Priority: P3 → P4
Keywords: perf
(In reply to Dão Gottwald [::dao] from comment #7)
> It likely still flushes layout via scrollSize. I don't know if there's a
> reasonable way around this, and if this is even worth much effort. AFAIK
> this only affects overflowing menus.

Yes, scrollSize can still cause us to flush here:

https://searchfox.org/mozilla-central/rev/7a8c667bdd2a4a32746c9862356e199627c0896d/toolkit/content/widgets/scrollbox.xml#134-140
Whiteboard: [ohnoreflow][qf:p2][reserve-photon-performance] → [ohnoreflow][qf:p1][reserve-photon-performance]

Updated

2 years ago
Whiteboard: [ohnoreflow][qf:p1][reserve-photon-performance] → [ohnoreflow][qf:i60][qf:p1][reserve-photon-performance]

Updated

a year ago
Whiteboard: [ohnoreflow][qf:i60][qf:p1][reserve-photon-performance] → [ohnoreflow][qf:f60][qf:p1][reserve-photon-performance]

Updated

a year ago
Whiteboard: [ohnoreflow][qf:f60][qf:p1][reserve-photon-performance] → [ohnoreflow][qf:f61][qf:p1][reserve-photon-performance]
Whiteboard: [ohnoreflow][qf:f61][qf:p1][reserve-photon-performance] → [ohnoreflow][qf:f61][qf:p1][reserve-photon-performance] [fxperf]
Whiteboard: [ohnoreflow][qf:f61][qf:p1][reserve-photon-performance] [fxperf] → [ohnoreflow][qf:f61][qf:p1][fxperf]
Whiteboard: [ohnoreflow][qf:f61][qf:p1][fxperf] → [ohnoreflow][qf:f61][qf:p1][fxperf:p3]
Whiteboard: [ohnoreflow][qf:f61][qf:p1][fxperf:p3] → [ohnoreflow][qf:f64][qf:p1][fxperf:p3]

Updated

a year ago
Whiteboard: [ohnoreflow][qf:f64][qf:p1][fxperf:p3] → [ohnoreflow][qf:p1:f64][fxperf:p3]
Re-queuing for triage by fxperf to reconcile with qf evaluation.
Whiteboard: [ohnoreflow][qf:p1:f64][fxperf:p3] → [ohnoreflow][qf:p1:f64][fxperf]
Keeping it [fxperf:p3] unless someone disagrees. We're not hitting this often and it's not clear that there's a good way around it.
Whiteboard: [ohnoreflow][qf:p1:f64][fxperf] → [ohnoreflow][qf:p1:f64][fxperf:p3]
Thanks, dthayer. I concur - I'm going to drop the qf priority, too.
Whiteboard: [ohnoreflow][qf:p1:f64][fxperf:p3] → [ohnoreflow][qf:p3:f64][fxperf:p3]

Updated

7 months ago
Whiteboard: [ohnoreflow][qf:p3:f64][fxperf:p3] → [ohnoreflow][qf:p3][fxperf:p3]
You need to log in before you can comment on or make changes to this bug.