Fuzz testcase from bug 1473612 loads indefinitely spending time around layout stuff (testcase loaded instantly prior to regression)
Categories
(Core :: Layout: Columns, defect)
Tracking
()
People
(Reporter: mayankleoboy1, Assigned: TYLin)
References
(Regression, )
Details
(Keywords: regression)
Attachments
(2 files)
Open the fuzz testcase from bug 1473612 (https://bugzilla.mozilla.org/attachment.cgi?id=9265392)
AR: Loooong loading: https://share.firefox.dev/3AepZim
ER: Not so
cc :jfkthame and :dholbert.
This is a regression, but not recent.
Comment 1•1 year ago
|
||
Comment 2•1 year ago
|
||
From the range in comment 0, bug 1784208 might also be a suspect; but if the range in comment 1 is more correct, then bug 793686 does sound plausible. Maybe :TYLin can take a look sometime.
| Assignee | ||
Comment 3•1 year ago
•
|
||
The browser is stuck in multi-column layout, which keeps creating columns. It can be easily seen when loading the testcase in my local debug build with multi-column log enabled:
MOZ_LOG="ColumnSet:5" ./mach run --layoutdebug https://bugzilla.mozilla.org/attachment.cgi?id=9433472
The testcase produces a lot of log prints, and I see the following within a few seconds:
D/ColumnSet ReflowColumns: Reflowed child #4165
...
D/ColumnSet ReflowColumns: Reflowed child #4166
...
D/ColumnSet ReflowColumns: Reflowed child #4166
...
This means the browser has created at least 4166 columns. It is a signal that it will likely never end.
| Assignee | ||
Comment 4•11 months ago
|
||
Currently, only a maximum of two levels of nested "balancing" multicol are
allowed. In the third or deeper levels of a multicol container that uses the
balancing behavior (column-fill: balancing), we don't honor the balancing
request and make it act as if column-count: 1 is set, for performance reasons
[1].
In such scenarios, this patch sets the mForceAuto to true, allowing the
content to be laid out regardless of whether the multicol is at the top of the
page or not [2]. This prevents the indefinite creation of columns.
This change should have minimal impact on real sites, as nested multicol layouts
beyond two levels are rare.
WARNING: Opening the testcase in Firefox without this patch applied can hang the
browser.
[1] https://searchfox.org/mozilla-central/rev/ead020d3989d3e9477b353d3d117f9c0f4b16f53/layout/generic/nsColumnSetFrame.cpp#296-301
[2] https://searchfox.org/mozilla-central/rev/6b61714b224f8cdca1a48ef1c51edab027f2c09f/layout/generic/nsColumnSetFrame.cpp#650-654
Updated•11 months ago
|
| Assignee | ||
Updated•11 months ago
|
Comment 5•11 months ago
|
||
Set release status flags based on info from the regressing bug 793686
Comment 9•11 months ago
|
||
| bugherder | ||
Comment 11•11 months ago
|
||
The patch landed in nightly and beta is affected.
:TYLin, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox135towontfix.
For more information, please visit BugBot documentation.
| Assignee | ||
Comment 12•11 months ago
|
||
This bug is unlikely to occur on real websites, and we have this bug since Firefox 105. Therefore, I'm OK for this to ride the train.
Updated•10 months ago
|
Updated•10 months ago
|
Description
•