Firefox freezes on css blur filter for certain website(s)
Categories
(Core :: Graphics: WebRender, defect, P2)
Tracking
()
| Tracking | Status | |
|---|---|---|
| relnote-firefox | --- | 155+ |
| firefox-esr140 | --- | unaffected |
| firefox-esr153 | --- | unaffected |
| firefox155 | + | disabled |
| firefox156 | + | disabled |
| firefox157 | + | fixed |
People
(Reporter: cablinhat, Assigned: gw)
References
(Regression)
Details
(Keywords: regression)
Attachments
(3 files)
Steps to reproduce:
I've attached a webpage to this bug report that should be able to reproduce the issue immediately. It has style=filter:blur(3px) set inline on the html element which is what causes the bug.
The original way I reproduced this issue was with the extension "leechblock" which I filed as an issue here: https://github.com/proginosko/LeechBlockNG/issues/772. That being said, this is an issue with the css blur filter being added to this website, not necessarily just the extension.
Here are the steps to reproduce from that github issue page:
- Create a new firefox profile
- Install leechblock
- Import the settings from here: LeechBlockOptions-2026-09-03T02-41-36.txt
- or add a wildcard "*" rule, set it to "all day", set it to all week, and turn on "Apply filter instead of blocking page"
- Open the following page: https://top.gg/
The browser will then freeze when the page loads.
I've also recorded this happening using the firefox profiler: https://share.firefox.dev/3UB27iL
Actual results:
It makes all firefox browser windows for the profile unresponsive for 10-20 seconds and then allows for brief moments of being able to close out of the tab before returning to freezing the browser.
My system information is:
Firefox 155, Windows 10, NVIDIA RTX 5070 Ti on driver 616.56 (latest)
Expected results:
The browser shouldn't freeze.
This didn't freeze on Firefox 154.
Comment 1•1 day ago
|
||
The Bugbug bot thinks this bug should belong to the 'WebExtensions::Untriaged' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Not too sure if "WebExtensions" is right here since it more generally involves the the blur filter on that specific site
Comment 3•1 day ago
|
||
Hello,
I reproduced the issue on the latest Nightly (157.0a1/20260902212028), Beta (156.0b2/20260902090331) and Release (155.0/20260826195058) under Windows 11 and Ubuntu 25.10.
I also tested the latest ESR (153.2.0esr/20260826022508), but the issue does not reproduce on this version.
The browser freezes immediately after the site loads. This can be triggered either by opening the attached .html page or by using the Leechblock NG method described in Comment 0.
Since the issue occurs independently of extensions, I am moving this bug to a more appropriate core Product/Component (Core :: Graphics: WebRender). However, in case of error, do revert the changes or set the appropriate combination.
Comment 4•1 day ago
|
||
Same regression range as bug 2068886.
Updated•1 day ago
|
Comment 5•1 day ago
|
||
:gw, since you are the author of the regressor, bug 2011747, could you take a look? Also, could you set the severity field?
For more information, please visit BugBot documentation.
Updated•1 day ago
|
Comment 6•1 day ago
|
||
I am not able to reproduce this (MacOS, 155) on the site mentioned in the original report. I do not have 'leechblock' but if this is in fact an incident level freeze, I shouldn't need it.
Updated•1 day ago
|
Comment 7•1 day ago
|
||
The attached testcase reproduces for me without any third-party software installed.
Comment 8•1 day ago
|
||
In the Firefox Profiler panel, there's a "Settings" dropdown; could someone select "Graphics" and capture a profile of a hang?
Comment 10•1 day ago
•
|
||
The regressing change has been backed out from Beta for 156.0b3 and Release for 155.0.1.
Comment 11•1 day ago
|
||
This reimplements order_readers_after() as an iterative function and adds a set of visited nodes, guarding against multiple evaluations of the same node (including cycles).
Updated•1 day ago
|
| Assignee | ||
Updated•23 hours ago
|
Updated•23 hours ago
|
| Assignee | ||
Comment 12•23 hours ago
|
||
Each backdrop-filter resolve widens the graph that order_readers_after() walks,
so walking it once per path is exponential in the number of siblings: 9 siblings
took 0.2s, 13 took 67s, 14 did not finish.
Sixteen siblings inside a blurred stacking context. Inverting the red backdrop
gives cyan, so the reference draws cyan rects in their place.
Comment 14•20 hours ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #10)
The regressing change has been backed out from Beta for 156.0b3 and Release for 155.0.1.
Added to the 155.0.1 relnotes.
Comment 15•15 hours ago
|
||
Comment 16•12 hours ago
|
||
I verified the backout out of the regressing change on Windows 11 and Ubuntu 25.10. The issue no longer reproduces on the Release 155.0.1 candidate (155.0.1/20260903215306), using any of the methods outlined in Comment 0.
Beta 156.0b3 is not yet available, so I could not verify it there yet. I will follow up once the build is released.
For good measure, I re-tested the latest Nightly (157.0a1/20260903215730). The issue is still reproducible there, as expected.
Comment 17•10 hours ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/033558cac62a
https://hg.mozilla.org/mozilla-central/rev/6160a8a7c54b
Description
•