Open Bug 1729779 Opened 3 years ago Updated 10 months ago

OOM (comment 42): Glitches, crashes and slowness with webrender (Chinese/Japanese/Korean characters) with low memory

Categories

(Core :: Graphics: WebRender, defect)

Firefox 92
Desktop
Windows
defect

Tracking

()

Tracking Status
firefox92 --- affected
firefox93 --- affected
firefox94 --- affected

People

(Reporter: seko.idiootti, Unassigned)

References

(Depends on 1 open bug, Blocks 1 open bug)

Details

(Keywords: correctness)

Attachments

(17 files)

66.96 KB, image/png
Details
31.10 KB, text/plain
Details
19.93 KB, text/plain
Details
68.17 KB, image/png
Details
96.54 KB, image/png
Details
69.56 KB, image/png
Details
10.86 KB, image/png
Details
98.14 KB, image/png
Details
134.81 KB, image/png
Details
82.93 KB, image/png
Details
167.60 KB, image/png
Details
117.22 KB, image/png
Details
131.54 KB, image/png
Details
160.77 KB, image/png
Details
101.21 KB, image/png
Details
1.76 MB, application/json
Details
4.03 MB, application/json
Details
Attached image Firefox glitch.png

User Agent: Mozilla/5.0 (Windows NT 6.1; rv:92.0) Gecko/20100101 Firefox/92.0

Steps to reproduce:

If webrender is enabled, clicking on pretty much any settings (for example, "clear history") will cause the menu bars to stutter and often a white box glitch will appear at the bottom of the screen.

Also, certain unicode characters (mainly emoji if there are many of them, or CJK characters in the CJK unified ideographs extension B to F unicode blocks) will often cause the tab to crash. It doesn't happen every time, but often. One site that always crashes with webrender enabled is getemoji.com, since it has tons of emoji. CJK characters might show up fine on the page itself if they don't cause a crash, but if you highlight them and look at that "search Google for [character]", it'll either be blank or have a box instead of the right unicode character.

If I use Firefox with webrender enabled for 15 minutes or so (the exact time varies), CJK characters will start to display as boxes or not at all. Not long after that, other visual glitches will start to appear and not go away, such as Latin characters being replaced by seemingly random symbols. On Firefox's pop-ups, like for example if saving a file, will have all the text replaced by greenish/blueish boxes. Also, the tabs and whatnot will sometimes "stutter", like moving some pixels down or up when switching tabs or just clicking something.

Also, Firefox is much slower overall (pages loading, etc.) with webrender enabled than without webrender enabled. It's probably ten times faster with webrender disabled.

On Nightly, anything that's open "under" (as in anything that was open before Nightly, for example if nothing else is open, then desktop) will "leak" through the page; desktop icons for example, or just the desktop background image, etc. in some part of the screen, usually the bottom. Pages with emoji or CJK characters will cause crashing even easier, nearly every single time. It's completely unusable.

It makes no difference whether it's hardware or software webrender. If webrender is enabled, these things happen.

My laptop is a Lenovo ThinkPad T400 with 32-bit Windows 7 Ultimate with Intel(R) Core(TM)2 Duo CPU P8600. The graphics card has not been getting updates since 2012. The only thing these glitches and crashes and slowness can be caused by is webrender, since with webrender disabling none of these problems happen but when it's enabled, they'll start to happen.

Actual results:

Firefox is completely unusable with webrender enabled. Attached is a screenshot of Latin characters being replaced by random symbols and greenish/blueish boxes.

Expected results:

Firefox should be working properly. With webrender disabled (gfx.webrender.force-legacy-layers set to "true"), it works perfectly.

I forgot to mention in the report but there seems to be no way to edit it, all this happens whether or not any addons or anything are enabled. No difference whether it's safe mode or not, and as I said, with Nightly with all default fresh installed settings, it happens even worse than with Firefox 92.0.

The Bugbug bot thinks this bug should belong to the 'Core::Graphics: WebRender' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.

Component: Untriaged → Graphics: WebRender
Product: Firefox → Core

I was told on the Firefox subreddit to include the "about:support" things here, so here they are:
From regular Firefox: https://bin.snopyta.org/?2f4939c87c440138#FoqhYNdJ1AQ7E7PETscgA6TvWfpjKoeQmmb3ZG1pF2sT
From Firefox Nightly: https://bin.snopyta.org/?c834a861bd777bca#9iEA94iKbLL4uSek3QukokRRzgT5hWJRxx4pt5XWHFjV

Linux: If I open https://getemoji.com/, press Ctrl+A to highlight all text and then scroll down, I get "Unable to set glyph size and transform: 23" (=Invalid_Face_Handle) 12 times on about:support.

Keywords: correctness
OS: Unspecified → Windows 7
Hardware: Unspecified → x86
Flags: needinfo?(lsalzman)

Sorry, the "about:support" from regular Firefox I posted is wrong, it's with webrender disabled because I thought I should post how it's when it functions normally (I'm stupid). Here it is with webrender enabled: https://bin.snopyta.org/?e74c3375dbe98ae6#7ZAP4kAvjx74JEVaGPCN8Sz6KnWi2fMr4tv5TeLVLiiK

Please open about:crashes and check if you can submit some recent crash reports if there are any. Then post a list of these crash report IDs (bp-XXXXXXXX) here. Thanks!

See Also: → 1721089, 1720573, 1724921

Does leaving Software WebRender on, but toggling "gfx.webrender.software.d3d11" to false fix the issues?

Flags: needinfo?(lsalzman) → needinfo?(seko.idiootti)

This seems to be possibly a bunch of OOM related issues, so I wonder if going with straight Software WebRender with no D3D11 involvement at least clears up some of the symptoms. This is a very low memory config, only 2gb total memory, and free memory much less...

(In reply to seko.idiootti from comment #0)

getemoji.com

How about http://www.nhc.gov.cn/xcs/yqtb/list_gzbd.shtml
http://www.nhc.gov.cn/xcs/yqtb/202109/be87976da009475586a66677b2608c76.shtml ?

These often make the browser of firefox I'm using crash, with a kind of font settings on the browser.

The display shows garbled characters.
Linux mint "mate-screenshot --interactive" takes the picture as it is.
But "Firefox Screenshots" can capture not as it is but as it should be...

Why and how...

It is closing to the crash of firefox browser on this linux PC... pre-sign, in my case...
https://twitter.com/raycy/status/1432763519280173056

No, leaving software webrender on but putting "gfx.webrender.software.d3d11" to "false" doesn't fix the problem. MAYBE slightly in the sense that after closing nearly all tabs I had open, the problem of Latin characters being replaced by colourful boxes (mainly greenish, but some pink ones as well) stopped happening for maybe one minute, but after that it happened again. Then again, closing some tabs, it went away but again after maybe a minute it happened again. Also, in the maybe 30 minutes I had these settings on, there was only one crashed tab (on Instagram), I tried to submit the crash report but it fails every time for some reason... but I'm not sure if only one crash happening is because I had less tabs open than normally, since I can't open more tabs without everything becoming a mess with glitches.

As for having low memory, yeah, unfortunately I can't afford to buy some brand new gaming laptop or something and I need to use 32-bit Windows 7 for software reasons (some software I use don't work on 64-bit or Windows 10 at all). I do have a 64-bit Windows 10 laptop too, but I can't switch to using it for all internet use for several reasons that aren't relevant to this... I haven't yet tried if these problems happen on it as well, but I'll try that later today.

The two Chinese sites display normally, but took several minutes to load the first time.

(How do you add more attachments? I have several more screenshots of the problems, but I can't see any option to add them to this comment.)

Flags: needinfo?(seko.idiootti)
Attached image firefox CJK glitch.png

Ah, is this how you add more attachments? Here's a screenshot of CJK characters being replaced by blank boxes. (The black bars are added by me to hide personal things if it's not obvious, it's a bit overly cautious but I hope that's understandable. There were no glitches on those parts of the screen, so it shouldn't matter.)

Here's a glitch on Instagram, with greenish and pink boxes replacing Latin characters and icons. (Again, black bar is to hide personal information.)

Here's an example of the kind of glitch that happens on Nightly, where whatever is open "under" it "leaks" through. In this case it's a Reddit page open in regular Firefox, but it will happen with anything that's "under" it. With all default settings, and I'd only gone on Wikipedia, Getemoji and Instagram to see if the same problems happened that happen with webrender enabled in regular Firefox (they do, but also this happens).

(In reply to seko.idiootti from comment #15)

The two Chinese sites display normally, but took several minutes to load the first time.

(How do you add more attachments? I have several more screenshots of the problems, but I can't see any option to add them to this comment.)

I'm using firefox on the font settings as Japanese langage. Yours, English maybe.
When accessing to Chinese site, on the using condition of mine , the font switches from Japanese font sets to Chinese font sets or so...

webrender "gfx.webrender.software.d3d11" to "false"

I 'm taking the idea and trying to change "gfx.webrender.allow-partial-present-buffer-age" to "false", is it concern or not...
The "gfx.webrender.all" is "false", already.

(In reply to seko.idiootti from comment #17)
Is it possible to take screenshot by the firefox component:screenshots, by right-click on the site and choice the screenshot function in Firefox, while your browser is getting glitches,
like these followings
https://bugzilla.mozilla.org/attachment.cgi?id=9240208
https://bugzilla.mozilla.org/attachment.cgi?id=9240209

If the firefox component:screenshots can capture the site without any glitches or not...

(In reply to raycy.jp from comment #19)

Got crash, again... couldn't open the firefox history list popup...
http://crash-stats.mozilla.com/report/index/bp-1a773a3d-4965-4201-b00c-18c4d0210909

So, I've set both "gfx.webrender.all" and "gfx.webrender.allow-partial-present-buffer-age" change to "false", now.

(In reply to raycy.jp from comment #21)

(In reply to seko.idiootti from comment #17)
Is it possible to take screenshot by the firefox component:screenshots, by right-click on the site and choice the screenshot function in Firefox, while your browser is getting glitches,
No, because for me the greenish and pink boxes only appear in pop-up menus, so they can't be screenshotted with the screenshot function because clicking on the page will of course bring it in front of the pop-up menu where the glitches happen.

I tried to use Firefox normally as I use it with webrender enabled for maybe 45 minutes, and got the worst glitches ever... and smaller glitches continued even after closing almost all tabs. Only now that I only have two tabs left open, the glitches stopped again. The worst glitches included entirely black and entirely white screens (aside from the menu bar), and parts of pages being completely offset or blank white or with some of the content of the page from the tab I had open previously visible on a part of the screen.

It wasn't possible to screenshot the entire blank pages with the Firefox screenshot function because the entire pages were blank, or the offset glitches because opening the Firefox screenshot function made the glitches go away... I should've pressed Print Screen but by instinct when trying to screenshot them with the Firefox screenshot function made it worse (such as glitched content from another page I had open in another tab "leaking" through to the blank page), I panicked and closed the tabs.

With the blank CJK characters glitch, the Firefox screenshot function doesn't work. It says "an unexpected error occurred", here's a screenshot by pressing the Print Screen button (again with black bars added) of the error when trying to take a Firefox screenshot. The same happens if I try to copy it or save it. When glitches aren't happening, the Firefox screenshot functions works.

~

On another note, I tried with the 64-bit Windows 10 laptop (which also doesn't have much memory; it was the cheapest Windows 10 laptop I could find at the time of buying it) and no glitches seem to happen on it with webrender enabled. But it has always had unrelated font display problems, so when I have to do something online with that laptop, unfortunately I use Chrome. That's not relevant to this, of course, it's just to explain why I'm extremely worried if there isn't a solution to this and I'll have to switch to that laptop for all internet use, because I don't like Chrome and have (mostly) loved Firefox for 14 years... and on this laptop, only Firefox works at all while other browsers I've tried are way too slow or have other problems. Firefox really is the best browser, but if this glitching isn't solved...

I'll also mention my mum has similar issues to these on her 64-bit Windows 10 laptop (which also doesn't have much memory), although it turns out they're much less severe. For her it's only occasional stuttering or glitches on random parts of the screen for one second or so that go away on their own. But it should be noted, she only uses it for Facebook, and only ever has one tab open, scrolling on Facebook for hours.

I realised I probably explained badly. When the "offset" glitches happened, trying to use the Firefox screenshot function either made them go away in some cases or caused them to get worse, obviously not both at the same time. Twice it first made it almost mostly go away for a second, only a little bit of glitching, but trying to take a screenshot with the Firefox screenshot function of the little glitching (getting only to the point of right clicking on the page) caused it to get much worse, with the content of another tab "leaking" onto it and stuttering a lot, so much that I just panicked.

Maybe it's not still a perfect explanation, this kind of things are hard to describe especially when it's not the same thing that happens every time...

(In reply to seko.idiootti from comment #16)

Created attachment 9240243 [details]
firefox CJK glitch.png

Ah, is this how you add more attachments? Here's a screenshot of CJK characters being replaced by blank boxes. (The black bars are added by me to hide personal things if it's not obvious, it's a bit overly cautious but I hope that's understandable. There were no glitches on those parts of the screen, so it shouldn't matter.)

Not trying to dismiss your rendering issue. Can you take another screenshot about this CJK character issue?

This screenshot shows that you miss a font to show those characters only. There are only a handful of fonts supporting CJK Unified Ideographs Extension F. Seeing blank squares/squares with hex numbers/tofu is the expected behaviour on this particular page if you don't have the appropriate fonts installed.
You may take a screenshot of this page: https://ctext.org/font-test-page/zh. It contains fewer CJK characters but includes some CJK extension B to E characters. Hopefully your computer does not run out of memory showing that page.
Note: The 2nd column in the chart in the page are images for reference. You may see blank squares only on the 3rd column.

(In reply to Fanolian from comment #27)

Not trying to dismiss your rendering issue. Can you take another screenshot about this CJK character issue?

This screenshot shows that you miss a font to show those characters only. There are only a handful of fonts supporting CJK Unified Ideographs Extension F. Seeing blank squares/squares with hex numbers/tofu is the expected behaviour on this particular page if you don't have the appropriate fonts installed.
You may take a screenshot of this page: https://ctext.org/font-test-page/zh. It contains fewer CJK characters but includes some CJK extension B to E characters. Hopefully your computer does not run out of memory showing that page.
Well, I already have BabelStone Han, HanaMinA and HanaMinB, SunExt-A, the Google Noto CJK fonts, etc. installed so normally I see even characters in Extension F without any issue. Here's a screenshot of the page you linked, with webrender disabled.

And here's a screenshot of the Extension F block on Wikipedia just in case, again with webrender disabled. They display normally. With webrender, at first they display normally, but then after 15 minutes or so of using Firefox, they'll be boxes or completely missing.

(Sorry for messing up the formatting of the previous comment.)

Try layers.gpu-process.enabled false
I use it all the time on old PCs with legacy / outdated / broken drivers

Since Webrender must use another process to fully work as intended, this effectively disables it in the area most likely responsible for glitches

(In reply to Dot from comment #30)

Try layers.gpu-process.enabled false
I use it all the time on old PCs with legacy / outdated / broken drivers

Since Webrender must use another process to fully work as intended, this effectively disables it in the area most likely responsible for glitches

I've already had "layers.gpu-process.enabled" as "false" all this time, I don't know since when. So for me, it doesn't help at all. It really looks like having any kind of webrender at all (at least as it is) leads to these problems for me.

That's why I'm honestly terrified of when it'll be forcibly enabled with no way to disable it. Firefox has been the browser I've used and loved since 2007 (no other browsers have anywhere near the speed or functionality), so if Firefox stops being usable now because of webrender, it's basically bye bye internet... which is terrifying, when life is 99% online for certain reasons...

Flags: needinfo?(jan)

https://www.reddit.com/r/firefox/comments/pkfjsn/petition_to_keep_gfxwebrenderforcelegacylayers_in/

Most people I know use Firefox, too, including family, and like 15 minutes ago my mum complained to me about having the same problem I was having (on her 64-bit Windows 10 laptop, so it really isn't about operating systems like one commenter said when I posted about the problem). If webrender becomes impossible to disable, my mum will suffer. Obviously nobody cares about my mum except me, but you get my point.

OS: Windows 7 → Windows
Hardware: x86 → Desktop
Summary: Glitches, crashes and slowness with webrender → Glitches, crashes and slowness with webrender (Chinese/Japanese/Korean characters)

(In reply to Darkspirit from comment #32)

https://www.reddit.com/r/firefox/comments/pkfjsn/petition_to_keep_gfxwebrenderforcelegacylayers_in/

Yeah, I first posted on Reddit about this, it's where I'd posted about all problems I've had with Firefox until now (including webrender-related issues after every update)... I hope the implication isn't to make me look stupid, because I really didn't know that that subreddit has no affiliation with Firefox developers. I thought it did, and that it was how issues should be reported and discussed. I only found out about this Bugzilla thing when it was linked to me on Reddit.

(At the time I thought my mum had the exact same problem. She only elaborated later, and that made me realise it's not nearly as bad for her as it is for me. She also doesn't have an Intel graphics card in her laptop, which I thought she did, but rather a Radeon one. Her previous laptop had Intel and I didn't know her newer one doesn't. So the problem can't be about Intel either...)

Also, why change the title of this bug report to be seemingly only about CJK characters? Because that's the focus now? At least for me, it happens with everything. And if I understood correctly, it also happens with Latin characters for raycy.jp too? Looking at their screenshot, some Latin characters are also boxes.

I can only speak for myself, but for me it's just that it's likely to begin with either CJK characters displaying as blank boxes or vanishing entirely, or Latin characters and icons displaying as greenish and pink boxes in menus. Once that happens, it won't be long before all of the other types of glitches will start to happen on every page regardless, and it only gets worse.

Sorry if I sound rude or something, I'm not trying to, I'm just frustrated and sleep deprived because it's so worrying if there won't be a solution to this and with the next update Firefox will stop working completely. Seeing how this is still "UNCONFIRMED" and the "severity" is blank, it's really worrying, like the problem seems to only happen for so few people and it's not identical for anyone so it's statistically like it doesn't matter or even exist. Which I understand, but...

(In reply to seko.idiootti from comment #33)

Also, why change the title of this bug report to be seemingly only about CJK characters? Because that's the focus now?

You repeatedly mention CJK as the beginning of madness. I've linked similar reports in "See also".

At least for me, it happens with everything. And if I understood correctly, it also happens with Latin characters for raycy.jp too? Looking at their screenshot, some Latin characters are also boxes.

The more interesting thing is what causes the breakage.
I am not a programmer, here's a lay description: It's like opening an image in a text editor and inserting text at the end. Then, the image is corrupted and can't be displayed anymore. Similar seems to occur with the glyph cache. Some image of a character seems to get added to the cache with invalid content/length.

Sorry if I sound rude or something, I'm not trying to, I'm just frustrated and sleep deprived because it's so worrying if there won't be a solution to this and with the next update Firefox will stop working completely.

The bug will likely be fixed within the next one or two weeks. It must be understood first. If you have seen similar bug reports on Reddit, feel free to post some links here. The more "steps to reproduce" are known, the better. If others have a similar, but not the exact same bug, they should create their own bug report. In case potentially many users are affected we can set a flag and delay Firefox 93 release (bug 1725388) until this bug has been fixed and the fix been backported to 93.

I assume bug 1730004 has been filed to add far more font-related checks to prerelease versions.

Seeing how this is still "UNCONFIRMED"

Your screenshots confirm this bug is true.

(seko.idiootti from comment #0)

Also, Firefox is much slower overall (pages loading, etc.) with webrender enabled than without webrender enabled. It's probably ten times faster with webrender disabled.

Your graphics card: "Mobile Intel(R) 4 Series Express Chipset Family"
https://www.intel.com/content/dam/www/public/us/en/documents/datasheets/4-chipset-family-datasheet.pdf

  • DirectX 10
  • OpenGL 1.5

ANGLE can translate OpenGL ES 3.0 to DirectX 11, not 10. It seems you are stuck with software rendering.
(If hardware WebRender was used, "Compositing" would be "WebRender" on about:support).

You could capture a performance profile with https://profiler.firefox.com (Graphics preset) and try to report its link as a bug report about Software WebRender performance: https://bugzilla.mozilla.org/enter_bug.cgi?format=__default__&blocked=1621376&product=Core&component=Graphics%3A%20WebRender

Status: UNCONFIRMED → NEW
Ever confirmed: true

(In reply to Darkspirit from comment #34)

You repeatedly mention CJK as the beginning of madness. I've linked similar reports in "See also".

Well, it usually begins with them but it may be only because that's where I notice it first. I'll try what it happens first with if I don't go on any sites with CJK characters on them.

(In reply to Darkspirit from comment #34)

The bug will likely be fixed within the next one or two weeks. It must be understood first. If you have seen similar bug reports on Reddit, feel free to post some links here. The more "steps to reproduce" are known, the better. If others have a similar, but not the exact same bug, they should create their own bug report. In case potentially many users are affected we can set a flag and delay Firefox 93 release (bug 1725388) until this bug has been fixed and the fix been backported to 93.

I really hope so, but I haven't heard or seen anything about anyone having similar problems at all except for my mum (and like I said, turns out for her it's not as bad). It was actually a huge relief (which sounds bad to say like that) when raycy.jp replied to this about having a similar problem, because I thought it has to be something so mysterious if it only happens to one person. When it happens to two people, at least that means it isn't somehow my fault and it is a problem in Firefox itself.

(In reply to Darkspirit from comment #34)

ANGLE can translate OpenGL ES 3.0 to DirectX 11, not 10. It seems you are stuck with software rendering.
(If hardware WebRender was used, "Compositing" would be "WebRender" on about:support).

Sorry, I don't understand what any of that means... but at least with all of the settings I've tried with any kind of webrender enabled, the same problems happen.

(In reply to Darkspirit from comment #34)

You could capture a performance profile with https://profiler.firefox.com (Graphics preset) and try to report its link as a bug report about Software WebRender performance: https://bugzilla.mozilla.org/enter_bug.cgi?format=__default__&blocked=1621376&product=Core&component=Graphics%3A%20WebRender

While webrender is enabled and the problems happen, or with it disabled when Firefox is working normally?

Here's what happened when I used Firefox for about 45 minutes without going on any sites with CJK characters. This happened while I was on Reddit, but the same types of glitches began to happen on all sites. I had "gfx.webrender.software" and "gfx.webrender.software.opengl" set to "true" and "gfx.webrender.software.d3d11" set to "false".

What's strange is that first, for maybe 25 minutes, the only glitches were stuttering of the menu bar (not possible to screenshot withought LIGHTNING reflexes, and screen recording video at a high enough frame rate is not possible with this laptop) and Firefox was surprisingly fast (still slightly slower than without webrender at times, but not much and at times it was normally fast).

Then, these glitches began to happen and they were again the worst glitches I've had: there were black boxes, white boxes, grey boxes and parts of the page flickering into the wrong place but moving the mouse made them go back to where they were supposed to be (or to another glitched position), while the black and white boxes remained. The boxes were replaced by other boxes of different sizes and positions if I scrolled, and the entire page lagged and parts of it stuttered or moved around. My laptop was getting hot, too. I didn't check CPU usage during the glitches, but it must've been a lot.

When I tried to attach the screenshot here after closing all tabs except this bug report tab, the pop-up didn't appear at all no matter how many times I clicked, so I had to close Firefox and restart it. That had not happened before even with webrender enabled...

So, not seeing CJK characters does indeed make the glitches begin later, but they'll still begin and looks like they'll start with the worst type and then get even worse than before... I believe nearly every time I try to have webrender enabled in Firefox, the glitches eventually get worse than they were the last time. That's worrying, like maybe webrender is destroying my graphics card? I don't know if that's possible, but it's a scary possibility if it is possible. Not a single tab crashed now, though, but that could be a coincidence. I don't know.

This time I pixellated any possibly identifiable information instead of adding black bars because the glitches themselves involved black boxes, and I don't want it to be confusing. I also absentmindedly pixellated the Wikipedia tab lol...

Try setting gfx.webrender.enable-multithreading to false and restart Firefox to apply the change. (bug 1721014)
Could that help?

(In reply to Darkspirit from comment #37)

Try setting gfx.webrender.enable-multithreading to false and restart Firefox to apply the change. (bug 1721014)
Could that help?

Unfortunately no, or at least the menu bar stuttering happened immediately when clicking on settings that make pop-ups, so no difference from before. That's the only thing I tried now with that setting, but I'm sure if that happens, then at least the other stuttering glitches will also happen. I'll try it again later and try to use Firefox normally with that setting to see if the text and icon display issues happen with that setting or not, but it's a really anxious experience every time and now I'm even worried it could be causing damage to my graphics card... maybe I'm just paranoid about that being possible, but this is an old laptop so maybe it could.

(In reply to seko.idiootti from comment #36)

That's worrying, like maybe webrender is destroying my graphics card? I don't know if that's possible, but it's a scary possibility if it is possible. Not a single tab crashed now, though, but that could be a coincidence. I don't know.

No, there are just unexpected numbers. It's like confusing sugar with salt, wondering about the taste and possibly aborting the lunch. We are just experiencing a visual taste adventure.

Tried again to use Firefox normally with webrender enabled with the "gfx.webrender.enable-multithreading" set to "false", also checking the CJK Unified Ideographs Extension F page on Wikipedia and a page with a bunch of Latin characters a couple of times to see if the glitching would still start with character display issues, and it didn't. I'm not sure if they displayed correctly or not after the glitching started, because I couldn't get to those tabs before the glitching got too bad.

Parts of the contents of the tab I switched from stayed on the screen, and black boxes appeared, and briefly I couldn't close tabs (or maybe it just looked like that, as in they stayed as a visual glitch) but as I tried to close more tabs, the tabs I had tried to close but that stayed on the menu bar also closed. I took a screenshot while hovering the mouse over a tab I had just clicked to close but that didn't seem to close, after closing the tab to its right (which also looked like it hadn't closed; that was the tab with the map that got glitched onto the Reddit tab when I switched to it). The entire Reddit page was glitched out as you can see, no comments showing, just the Reddit top menu and background, with the map from the other tab and a black box glitch showing instead.

After closing all tabs except the "settings" one, that last tab suddenly went completely blank white but with the Firefox menu still showing. It had gone back to normal after I minimised the window for a second.

So, again, the glitching was worse than last time and began even more suddenly. This time after maybe 20-25 minutes. Until then, though, it was pretty much normal use of Firefox with very little slowness and only mild reduction of performance from how it is with webrender disabled (eg. on Youtube video previews didn't load when hovering over thumbnails).

(Again with pixellation to remove possibly identifiable information and yeah.)

  • comment 0 and comment 17 are about text characters that look like boxes.

  • comment 18, comment 36 and comment 40 are a different bug. A somewhat similar bug seems to exist on Linux: bug 1726895

    Parts of the contents of the tab I switched from stayed on the screen

    There was bug 1637497 on Win7 in the past.
    If this bug can be fixed by setting the following prefs and restarting Firefox, we would know that bug 1637497 has come back:
    gfx.webrender.max-partial-present-rects = 0
    gfx.webrender.allow-partial-present-buffer-age = false

I apologize that this is causing you distress. The problems here, again, seem to be related to out-of-memory issues, as Firefox can accumulate memory in various places during a running session. It would explain the multitude of symptoms you are seeing about weird colored rectangles in various situations (not simply text, but everywhere else), and also the unpredictable aspect of it. This is not necessarily a simple problem to fix and will require discussion amongst the Graphics team here to see if there are things we can mitigate some of the symptoms. This is, in technical terms, a problem with the OpenGL API not giving us enough feedback to say if a texture allocation has failed - so that the texture we are rendering with is actually bad causing the weird solid coloring.

Note that the ESR version of Firefox for the next year will be 91, so that you will still at least be able to disable WebRender in the ESR version if nothing else. One thing you might be able to do in the meanwhile in later versions while we investigate a fix with WebRender is to try using your OS's support for Swap/Page files and increase the amount of that available: https://www.geeksinphoenix.com/blog/post/2010/10/26/Managing-Virtual-Memory-Pagefile-in-Windows-7

What you can do to help us start narrowing down if there are things we can fix is to go to "about:memory" and click on "Measure and save". Then attach the produced memory report so we can look at it. It is best to record the memory report right about where the symptoms would normally occur (or even after symptoms occur if the browser UI is usable enough to do that), so that we can see where memory pressure is highest in that longer running session.

(In reply to Darkspirit from comment #41)

If this bug can be fixed by setting the following prefs and restarting Firefox, we would know that bug 1637497 has come back:
gfx.webrender.max-partial-present-rects = 0
gfx.webrender.allow-partial-present-buffer-age = false

No, it doesn't fix the boxes, unfortunately. I did get to use Firefox for about half an hour normally, with 21 tabs open by the end (and checked the memory usage, it was 78% at the highest (that wasn't just Firefox)), but then I tried saving a video from Imgur and the horrible boxes and glitches began to happen and on the "save file" pop-up the icon of one of my hard drives was replaced with the default broken icon (the one that's like a white page icon with colourful dots on it). Then, I thought about checking if the glitch of text being boxes happens and clicking on "page info" eg. on this page, for some reason the text isn't pink boxes but rather greyish/brownish/greenish/whatever. Also, CJK characters again show up as boxes... so even that isn't solved by these changed settings once the glitching begins.

Here's a screenshot of the glitched icons, being the default broken icon. (The black bars are again to hide identifiable information.)

(In reply to Lee Salzman [:lsalzman] from comment #42)

The problems here, again, seem to be related to out-of-memory issues,

If that's the case for all of it, why does the glitch with stuttering happen with menu pop-ups if the only tab open is "settings"? But it could be, this is a potato laptop and my mum's laptop with 64-bit Windows 10 is also a potato. What's kinda strange is that the 64-bit Windows 10 potato laptop I have for other use (which has the least memory of all) didn't have these glitches or anything when I tried it with webrender on. Maybe because it does seem to have a pretty good graphics card, if nothing else...

(In reply to Lee Salzman [:lsalzman] from comment #42)

This is not necessarily a simple problem to fix

Oh no, oh well...

(In reply to Lee Salzman [:lsalzman] from comment #42)

Note that the ESR version of Firefox for the next year will be 91, so that you will still at least be able to disable WebRender in the ESR version if nothing else.

Hmm, that's a relief. I'd never heard of ESR but googling it, I couldn't find anything about stuff between normal Firefox and it being incompatible, like addons or anything not working on it? Because if everything can be safely copied over to it, then in that case at least I can relax that there won't be an immediate annihilation of my internet use even if this doesn't get fixed.

(In reply to Lee Salzman [:lsalzman] from comment #42)
One thing you might be able to do in the meanwhile in later versions while we investigate a fix with WebRender is to try using your OS's support for Swap/Page files and increase the amount of that available: https://www.geeksinphoenix.com/blog/post/2010/10/26/Managing-Virtual-Memory-Pagefile-in-Windows-7

Unfortunately it's already at the maximum it can be, that was the solution to some problem I had once with something and my dad figured that'd help (and it did).

Attached file memory-report.json

(In reply to Lee Salzman [:lsalzman] from comment #42)

What you can do to help us start narrowing down if there are things we can fix is to go to "about:memory" and click on "Measure and save". Then attach the produced memory report so we can look at it. It is best to record the memory report right about where the symptoms would normally occur (or even after symptoms occur if the browser UI is usable enough to do that), so that we can see where memory pressure is highest in that longer running session.

Alright, here it is from just now. I haven't restarted Firefox after the latest glitches, but they happened a while ago (because of typing these comments) so I'm not sure if it's helpful. I clicked on the "anonymize" thing, not sure if that makes it useless, but I don't know what personally identifiable information there would be and at least my real name (which I have as the name on my laptop) I wouldn't want visible on it...

(Also sorry for again messing up the formatting of the previous comment...)

(Forgot to mention, but as you can see in the broken icons screenshot, it was no longer just the one hard drive's icon that was broken when I took the screenshot, but many other icons as well. At first, when I tried saving a video from Imgur, it was just that one hard drive's icon, but by the time I was done typing the comment and decided to see if it was still happening, it had gotten to that point even though I only had this one tab open. And of course, this icon glitch only happened in Firefox. All of that was probably obvious already at least implicitly, but just to be clear in case it wasn't.)

Summary: Glitches, crashes and slowness with webrender (Chinese/Japanese/Korean characters) → Glitches, crashes and slowness with webrender (Chinese/Japanese/Korean characters) with low memory

seko, can you try getting a new memory report when you see the glitching with with layers.gpu-process.enabled reset to true?

Flags: needinfo?(seko.idiootti)
Flags: needinfo?(jan)
Attached file memory-report.json

(In reply to Jeff Muizelaar [:jrmuizel] from comment #46)

seko, can you try getting a new memory report when you see the glitching with with layers.gpu-process.enabled reset to true?

Here's about:memory from just now with that setting, BUT... with no glitching (not even the menu bar stuttering), not a single crashed tab (with 24 tabs open at the most) and with at most 82% CPU usage (just Firefox and of course OS stuff, no other programs open), after using Firefox normally for about two hours! With pages that included CJK characters and emoji (and even Tangut and Cuneiform characters), too, and they still remain displaying correctly. There has been occasional slowness, and slight occasional stuttering of things like hovering mouse over something that pops up text (that has always happened even with webrender disabled). Also, on Youtube the big "Youtube" icon in the corner doesn't load for some reason, not sure if that's related to this though.

Not sure if it's pure luck or what, but... well, I'm afraid to feel too hopeful since I'd assume I'd tried with these exact settings before and the glitching and stuff did happen haha. Or maybe not with these exact settings, I don't know. These are the webrender settings I have now that are not at their default values:

app.normandy.startupRolloutPrefs.gfx.webrender.all.qualified - true
gfx.webrender.all.qualified.default - true
gfx.webrender.enable.multithreading - false
gfx.webrender.software - true
gfx.webrender.software.d3d11 - false

I'll have to keep using Firefox with these settings and see if the glitching and crashing and extreme slowness begins to happen again, but hopefully it won't. Another thing I'll have to see is if it makes any difference when I have other programs open that I normally have open, like Winamp and Wordpad (let alone FL Studio, which I don't usually have open but sometimes I do make music and browse the internet "at the same time"), since now I didn't have anything open except Firefox.

But this seems like maybe there is hope that webrender can work... unless somehow these settings I now have cancel each other out and actually disable webrender haha, that'd be disappointing.

Flags: needinfo?(seko.idiootti)

(Sorry, I meant "82% memory usage", not CPU usage...)

After two days of using Firefox normally, I think I can say the glitching and crashing really doesn't happen with these webrender settings:

layers.gpu-process.enabled - true
app.normandy.startupRolloutPrefs.gfx.webrender.all.qualified - true
gfx.webrender.all.qualified.default - true
gfx.webrender.enable.multithreading - false
gfx.webrender.software - true
gfx.webrender.software.d3d11 - false

There is a bit of slowness, like for example pics load slightly slower than with webrender disabled, and pages with a lot of stuff on them take maybe 1/3 longer to load (or twice as long if there's a LOT of stuff, like lots of pics and different fonts and whatnot, or lots of emoji (eg. getemoji.com)), but it doesn't make any practical difference since even then the longest time a page will take to load fully is probably ten seconds.

So, I don't know what it is about these settings (since I know nothing about these kinds of things) that "fixes" it, but it does. Of course, since this isn't a "fix" of the BUG, which happens with seemingly all other webrender settings, there's the fear I have that one or more of these settings will be removed or changed somehow in a future version and the glitching and crashing will begin again... but I hope that's not the case.

Would you mind helping to narrow down which pref makes the difference? If you keep all the preferences the same and switch layers.gpu-process.enabled to false does the problem return?

Flags: needinfo?(seko.idiootti)

(In reply to Jeff Muizelaar [:jrmuizel] from comment #50)

Would you mind helping to narrow down which pref makes the difference? If you keep all the preferences the same and switch layers.gpu-process.enabled to false does the problem return?

Yes, just switching "layers.gpu-process.enabled" to "false" causes the problem to happen again.

Flags: needinfo?(seko.idiootti)

Ok, what if you reset layers.gpu-process.enabled to true and then also reset gfx.webrender.software to false?

Flags: needinfo?(seko.idiootti)

(In reply to Jeff Muizelaar [:jrmuizel] from comment #52)

Ok, what if you reset layers.gpu-process.enabled to true and then also reset gfx.webrender.software to false?

Looks like everything works normally, just a little slower I think.

Flags: needinfo?(seko.idiootti)

And what if you now reset gfx.webrender.software.d3d11 to true?

Flags: needinfo?(seko.idiootti)

(In reply to Jeff Muizelaar [:jrmuizel] from comment #54)

And what if you now reset gfx.webrender.software.d3d11 to true?

Seems to work normally, again maybe a little bit slower at times I think, but I'm not 100% sure about that. No glitching or crashing.

Flags: needinfo?(seko.idiootti)

ok what if you reset gfx.webrender.enable.multithreading=true?

Flags: needinfo?(seko.idiootti)

(In reply to Jeff Muizelaar [:jrmuizel] from comment #56)

ok what if you reset gfx.webrender.enable.multithreading=true?

Images load surprisingly a lot faster.

There's occasionally very minor glitching, like a kind of stutter on a page (as if it first tried to load slightly too wide and then "squeezes" a bit to fit the screen, but not really in proportion to anything, not sure how to explain) and tab icons and stuff like that might flicker once or twice when they first load. Pages with a lot of CJK characters and/or emoji are slower to scroll. Also, occasionally switching tabs is a tiny little bit slower, as in when I click on another tab, it won't switch to it within the blink of an eye but takes maybe two blinks. That makes no difference as far as usability goes, of course. Otherwise there seems to be no difference.

So, in terms of actual practical use the difference between "gfx.webrender.enable.multithreading" being "true" and it being "false" seems to be that with it set to "true" images load faster but pages with CJK characters and emoji load slower, while with it set to "false" images load slower but pages with CJK characters and emoji load faster. The difference is very minor, aside from the image loading time, that's significantly faster with it set to "true".

I guess this concludes that at least in my case it's the "layers.gpu-process.enabled" setting that causes all the problems if it's set to "false"...? But I don't know what that really means.

Flags: needinfo?(seko.idiootti)

OK, so the entire browser just crashed when trying to delete a bookmark. No crash report. The entire browser crashing hasn't happened in a while... this was with "gfx.webrender.enable.multithreading" set to "false".

UGH, I mean with "gfx.webrender.enable.multithreading" set to "true". My brain isn't working properly, sorry...

Blocks: wr-oom
Depends on: 1731748, 1733154
Summary: Glitches, crashes and slowness with webrender (Chinese/Japanese/Korean characters) with low memory → OOM (comment 42): Glitches, crashes and slowness with webrender (Chinese/Japanese/Korean characters) with low memory
Severity: -- → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: