1.02ms uninterruptible reflow at set_label@chrome://browser/content/tabbrowser.xml:7593:37

RESOLVED FIXED in Firefox 55

Status

()

defect
P1
normal
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: rjward0, Assigned: dao)

Tracking

(Blocks 1 bug)

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

Firefox Tracking Flags

(firefox55 fixed)

Details

(Whiteboard: [ohnoreflow][qf:p2][reserve-photon-performance])

Attachments

(1 attachment)

Reporter

Description

2 years ago
Here's the stack:

set_label@chrome://browser/content/tabbrowser.xml:7593:37
updateStatusField@chrome://browser/content/browser.js:4512:7
onStatusChange@chrome://browser/content/browser.js:4799:5
XWB_onUpdateCurrentBrowser@chrome://browser/content/browser.js:4860:5
callListeners@chrome://browser/content/tabbrowser.xml:492:24
_callProgressListeners@chrome://browser/content/tabbrowser.xml:507:13
updateCurrentBrowser@chrome://browser/content/tabbrowser.xml:1159:15
onselect@chrome://browser/content/browser.xul:1:44
set_selectedIndex@chrome://browser/content/tabbrowser.xml:7706:13
set_selectedPanel@chrome://global/content/bindings/tabbox.xml:691:13
set_selectedIndex@chrome://global/content/bindings/tabbox.xml:409:15
set_selectedItem@chrome://global/content/bindings/tabbox.xml:441:34
set_selectedTab@chrome://global/content/bindings/tabbox.xml:111:15
set_selectedTab@chrome://browser/content/tabbrowser.xml:3341:11
_blurTab@chrome://browser/content/tabbrowser.xml:2908:13
removeTab@chrome://browser/content/tabbrowser.xml:2599:13
removeCurrentTab@chrome://browser/content/tabbrowser.xml:2530:13
BrowserCloseTabOrWindow@chrome://browser/content/browser.js:2241:3
oncommand@chrome://browser/content/browser.xul:1:1
permitUnload@chrome://global/content/bindings/remote-browser.xml:357:13
_beginRemoveTab@chrome://browser/content/tabbrowser.xml:2644:46
removeTab@chrome://browser/content/tabbrowser.xml:2571:18
removeCurrentTab@chrome://browser/content/tabbrowser.xml:2530:13
BrowserCloseTabOrWindow@chrome://browser/content/browser.js:2241:3
oncommand@chrome://browser/content/browser.xul:1:1
Assignee

Updated

2 years ago
Component: Untriaged → Tabbed Browser
Flags: qe-verify?
Priority: -- → P2
In bug 1356663 we removed the sync flush at http://searchfox.org/mozilla-central/rev/7aa21f3b531ddee90a353215bd86e97d6974e25b/browser/base/content/tabbrowser.xml#7597 but there's another one 5 lines above with "getComputedStyle(this).width".

Dão, do you know what this code is doing? It seems to be trying to get the width of the panel before we change its value. It's not clear to me what the goal of this is (do we want to prevent that panel from shrinking when the message changes?), but if it's correct, this sync flush looks like a good candidate for fixing with getBoundsWithoutFlushing.
Flags: needinfo?(dao+bmo)
Assignee

Comment 2

2 years ago
(In reply to Florian Quèze [:florian] [:flo] from comment #1)
> Dão, do you know what this code is doing? It seems to be trying to get the
> width of the panel before we change its value. It's not clear to me what the
> goal of this is (do we want to prevent that panel from shrinking when the
> message changes?)

Yep.
Flags: needinfo?(dao+bmo)
Whiteboard: [ohnoreflow][qf][photon-performance] → [ohnoreflow][qf:p1][photon-performance]
Assignee

Updated

2 years ago
Depends on: 1358495
Another stack:

set_label@chrome://browser/content/tabbrowser.xml:7706:37
updateStatusField@chrome://browser/content/browser.js:4547:7
onStatusChange@chrome://browser/content/browser.js:4834:5
callListeners@chrome://browser/content/tabbrowser.xml:492:24
_callProgressListeners@chrome://browser/content/tabbrowser.xml:507:13
_callProgressListeners@chrome://browser/content/tabbrowser.xml:563:22
onStatusChange@chrome://browser/content/tabbrowser.xml:860:15
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]
Assignee

Updated

2 years ago
Flags: needinfo?(dao+bmo)
Assignee

Updated

2 years ago
Assignee: nobody → dao+bmo
Status: NEW → ASSIGNED
Flags: needinfo?(dao+bmo)
Priority: P3 → P1
Assignee

Updated

2 years ago
No longer depends on: 1358495

Comment 5

2 years ago
mozreview-review
Comment on attachment 8872118 [details]
Bug 1358387 - Avoid style flush when setting the statuspanel's current width as its min-width on status label changes.

https://reviewboard.mozilla.org/r/143608/#review147538

Thanks!
Attachment #8872118 - Flags: review?(florian) → review+

Comment 6

2 years ago
Pushed by dgottwald@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d2ee41a263fc
Avoid style flush when setting the statuspanel's current width as its min-width on status label changes. r=florian

Comment 7

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/d2ee41a263fc
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 55
Iteration: --- → 55.7 - Jun 12
You need to log in before you can comment on or make changes to this bug.