You are not logged in.
Hi everyone,
I am having regular crashes where the system becomes unresponsive and I am left the the only option of logging into another tty and kill sway.
I have a wayland only system, no Xorg, the issues seem to appear always when I am using Firefox
I tried to add the "export QSG_RENDER_LOOP=basic" environment variable like in this post:
number of crashes seems reduced, but still it is not ok
my graphic card is quite old, this the output of vaainfo:
vainfo
vainfo: VA-API version: 1.13 (libva 2.13.0)
vainfo: Driver version: Mesa Gallium driver 21.3.5 for NV98
vainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProcI checked the log and I could see only a bunch of
"nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 5 [GeckoMain[180544]] subc 3 mthd 121c data 0fac6881"I am not sure how to debug this
if anyone wants to suggest something, please feel free
thanks a lot
M
Last edited by mcarni (2022-02-05 12:23:51)
Offline
QSG_RENDER_LOOP=basic has only an effect on Qt applications.
Not sure you'll be able to do much about this. If the underlying effect is also an issue in multithreaded access try to configure Firefox to only use a single thread in it's settings but I'd generally expect to be lots of issues here. From a googler for the prop driver this would only be supported by 340xx in which case you'd have to freeze quite a few things at old versions.
Offline
Thanks @V1del, much appreciated.
I will play a bit with the settings and configs in firefox, let's see where i get.
In the meantime this an example of the garbage I get usually before a crash (which indeed i just had, system froze and I had to log into a tty and kill sway)

and this is some more from journalctl:
feb 06 21:32:49 molodoy-vasiliy kernel: nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 7 [GeckoMain[225040]] subc 3 mthd 121c data 0fac6881
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084 failed with error -2
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084d failed with error -2
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: unable to load firmware data
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: init failed, -19
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084 failed with error -2
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084d failed with error -2
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: unable to load firmware data
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: init failed, -19
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084 failed with error -2
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084d failed with error -2
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: unable to load firmware data
feb 06 21:33:00 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: init failed, -19
feb 06 21:33:23 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084 failed with error -2
feb 06 21:33:23 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084d failed with error -2
feb 06 21:33:23 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: unable to load firmware data
feb 06 21:33:23 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: init failed, -19
feb 06 21:33:24 molodoy-vasiliy kernel: nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 7 [GeckoMain[225040]] subc 3 mthd 121c data 0fac6881
feb 06 21:33:24 molodoy-vasiliy kernel: nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 7 [GeckoMain[225040]] subc 3 mthd 15ec data 00000006
feb 06 21:33:25 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084 failed with error -2
feb 06 21:33:25 molodoy-vasiliy kernel: nouveau 0000:01:00.0: Direct firmware load for nouveau/nv98_fuc084d failed with error -2
feb 06 21:33:25 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: unable to load firmware data
feb 06 21:33:25 molodoy-vasiliy kernel: nouveau 0000:01:00.0: msvld: init failed, -19
feb 06 21:33:29 molodoy-vasiliy kernel: nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 7 [GeckoMain[225040]] subc 3 mthd 121c data 0fac6881
feb 06 21:33:32 molodoy-vasiliy kernel: nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 7 [GeckoMain[225040]] subc 3 mthd 15ec data 00000006
feb 06 21:34:00 molodoy-vasiliy systemd[1]: mnt-lede-shared_Files_Personali.mount: Deactivated successfully.
feb 06 21:34:04 molodoy-vasiliy kernel: nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 7 [GeckoMain[225040]] subc 3 mthd 121c data 0fac6881
feb 06 21:34:04 molodoy-vasiliy kernel: nouveau 0000:01:00.0: gr: TRAP_PROP - TP 0 - 00000400 [RT_STORAGE_TYPE_MISMATCH] - Address 0000000000
feb 06 21:34:04 molodoy-vasiliy kernel: nouveau 0000:01:00.0: gr: TRAP_PROP - TP 0 - e0c: 00000000, e18: 00000000, e1c: 00000000, e20: 00000200, e24: 00020070
feb 06 21:34:04 molodoy-vasiliy kernel: nouveau 0000:01:00.0: gr: 00200000 [] ch 7 [001f2c4000 GeckoMain[225040]] subc 3 class 8297 mthd 0f04 data 00000000
feb 06 21:34:20 molodoy-vasiliy kernel: nouveau 0000:01:00.0: fifo: CACHE_ERROR - ch 7 [GeckoMain[225040]] subc 0 mthd 0060 data beef0201one more question, would you reckon that the problem is all caused by my hardware not being recent enough?
in other words, do you think I have any chance with a lighter/different browser?
I tried chromium but briefly, maybe it will handle things better, or I could look into terminal based browsers if this might help
I would like to stick to sway, since I got my comfy setup but all the rest is changeable...
thanks a lot
M
Offline
Possibly, nouveau simply was and is not that good to begin with and what's especially problematic that it doesn't handle multi-threaded OpenGL well. And since browser in particular tend to have a load of threads and threaded OpenGL calls you'll almost certainly run into such cases.
Are you using firefox in wayland or xwayland mode? Does starting firefox via
mesa_glthread=false firefoxhelp? Also remove xf86-video-nouveau if it's installed.
Offline
thanks V1del,
Are you using firefox in wayland or xwayland mode?
pure wayland, no xwayland (sway as WM)
Also remove xf86-video-nouveau if it's installed.
I can confirm it has not been installed on my system
regarding:
mesa_glthread=false firefoxat the moment I am not using it
before you suggested it i changed the "webgl.disabled" option in about:config from false to true
It is maybe just a shot in the dark, but yesterday i didn't have a single crash/freeze (some garbage artifacts still appeared after a while)
i didn't want to change two things at the same time, so I was planning to see in the next couple of days how it performs with webgl disabled and if not ok try mesa_glthread
I will report back and once again thanks for your support
M
Offline
Yes disabling active uses of GL can definitely help. If you are indeed running in Wayland mode then firefox doesn't inherently disable glthread itself like it would on xorg/xwayland.
Offline
Ok,
disabling webgl seems to improve the situation, just not enough testing to say how much (today I have been out on a business trip all day long) but from Monday I had only 1 crash/freeze.
Today I also started launching firefox with mesa_glthread=false, let's see what the impact is.
thanks a lot, i will keep you updated
M
Offline
@V1del,
i tested it for some days (with webgl disabled and mesa_glthred set to false and not set at all) and I could not find any major difference.
I would say that the frequency of crashes has been reduced but I still get random crashes
if you have any suggestion, please feel free to let me know
Otherwise i guess the only option I have is to find a faster way to restart sway when the system freezes or try a different browser (was thinking of surf yesterday...)
thanks a lot
M
Offline
I was searching for some information and I saw in the Archwiki under Wayland requirement the possibility to switch API between EGLStreams and GBM
I forced my system to use GBM as a backend adding the following to my .bashrc:
export GBM_BACKEND=nvidia-drm
export __GLX_VENDOR_LIBRARY_NAME=nvidiaI don't want to celebrate too early but it seems there is an improvement.
I have 20 tabs open in firefox ;-) , one of these playing a 2 hrs HD documentary, imgur, some news and a couple of forums...
so far no crash, no freeze no artifacts... which is something I would have not even dared to think...
maybe it is just a coincidence, I will keep testing (I could try to revert back the changes and see how long the system lasts...) but I want to be optimistic
thanks a lot
M
Offline
That's impossible. This is only relevant for the proprietary driver and you definitely didn't have the choice between the two on nvidia-340xx if Wayland support at all. What's potentially happening though is that the invalid GLX_VENDOR_LIBRARY leads to a fallback to the software renderer, so you are now using OpenGL via llvmpipe running on your CPU rather than the nvidia card. Check/post
glxinfo -BOffline
I uncommented the GBM variables in .bashrc and all seems to work fine
sorry if I somehow misled you, didn't mean to...
it must have been something else, or I am just being particularly lucky with my firefox session today (still the same documentary playing, a couple of tabs.. all fine...)
getting back to your question, I don't think i have glxinfo on my system:
[michi@molodoy-vasiliy ~]$ glxinfo -B
bash: glxinfo: command not foundif there is anything else you want me to try, please let me know
thanks a lot for your help
M
Offline
I don't think i have glxinfo on my system
$ pacman -F glxinfo
extra/mesa-utils 8.4.0-6 [installed: 8.4.0-7]
usr/bin/glxinfo
$Jin, Jîyan, Azadî
Offline
Hi Head_on_a_Stick,
not installed I guess:
[michi@molodoy-vasiliy ~]$ pacman -F glxinfo
extra/mesa-utils 8.4.0-7
usr/bin/glxinfodo i need to install it?
thanks for your help
M
Offline
I'm not saying you've mislead me, I'm simply informing you that these variables should not have an effect, or if they do then because they switch the renderer from nouveau to llvmpipe which would be based on software, running on your CPU, and not actually hardware accelerated. If you don't have an active issue with this as an usecase then you can definitely continue to operate like that, but your are simply not using your graphics card for much anymore.
Otherwise you might indeed just be lucky.
Edit: This was intended to inform you that you'd need to install mesa-utils for that command, since I'd be interested whether what I'm suspecting is true.
Last edited by V1del (2022-02-15 19:47:33)
Offline
I'm not saying you've mislead me, I'm simply informing you that these variables should not have an effect, or if they do then because they switch the renderer from nouveau to llvmpipe which would be based on software, running on your CPU, and not actually hardware accelerated. If you don't have an active issue with this as an usecase then you can definitely continue to operate like that, but your are simply not using your graphics card for much anymore.
Otherwise you might indeed just be lucky.
cool, i was just worried that my optimism made me post something wrong
I know you and Head_on_a_Stick are just trying to help me and didn't want to upset you
regarding mesa-utils, just installed it and here we go:
[michi@molodoy-vasiliy ~]$ glxinfo -B
Error: unable to open displayplease let me know
M
Last edited by mcarni (2022-02-15 19:55:41)
Offline
probably up to the lack of xwayland... Try eglinfo instead, should be part of the same package.
Offline
eglinfo -B:
EGL client extensions string:
EGL_EXT_device_base EGL_EXT_device_enumeration EGL_EXT_device_query
EGL_EXT_platform_base EGL_KHR_client_get_all_proc_addresses
EGL_EXT_client_extensions EGL_KHR_debug EGL_EXT_platform_device
EGL_EXT_platform_wayland EGL_KHR_platform_wayland
EGL_EXT_platform_x11 EGL_KHR_platform_x11 EGL_MESA_platform_xcb
EGL_MESA_platform_gbm EGL_KHR_platform_gbm
EGL_MESA_platform_surfaceless
GBM platform:
EGL API version: 1.4
EGL vendor string: Mesa Project
EGL version string: 1.4
EGL client APIs: OpenGL OpenGL_ES
EGL extensions string:
EGL_ANDROID_blob_cache EGL_EXT_buffer_age
EGL_EXT_image_dma_buf_import EGL_EXT_image_dma_buf_import_modifiers
EGL_KHR_cl_event2 EGL_KHR_config_attribs EGL_KHR_create_context
EGL_KHR_create_context_no_error EGL_KHR_fence_sync
EGL_KHR_get_all_proc_addresses EGL_KHR_gl_colorspace
EGL_KHR_gl_renderbuffer_image EGL_KHR_gl_texture_2D_image
EGL_KHR_gl_texture_3D_image EGL_KHR_gl_texture_cubemap_image
EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap
EGL_KHR_no_config_context EGL_KHR_reusable_sync
EGL_KHR_surfaceless_context EGL_EXT_pixel_format_float
EGL_KHR_wait_sync EGL_MESA_configless_context EGL_MESA_drm_image
EGL_MESA_image_dma_buf_export EGL_MESA_query_driver
EGL_WL_bind_wayland_display
Configurations:
bf lv colorbuffer dp st ms vis cav bi renderable supported
id sz l r g b a th cl ns b id eat nd gl es es2 vg surfaces
---------------------------------------------------------------------
0x01 32 0 10 10 10 2 0 0 0 0 0x30334241-- y y y win
0x02 32 0 10 10 10 2 24 0 0 0 0x30334241-- y y y win
0x03 32 0 10 10 10 2 24 8 0 0 0x30334241-- y y y win
0x04 32 0 10 10 10 2 0 0 2 1 0x30334241-- y y y win
0x05 32 0 10 10 10 2 0 0 4 1 0x30334241-- y y y win
0x06 32 0 10 10 10 2 0 0 8 1 0x30334241-- y y y win
0x07 32 0 10 10 10 2 24 0 2 1 0x30334241-- y y y win
0x08 32 0 10 10 10 2 24 0 4 1 0x30334241-- y y y win
0x09 32 0 10 10 10 2 24 0 8 1 0x30334241-- y y y win
0x0a 32 0 10 10 10 2 24 8 2 1 0x30334241-- y y y win
0x0b 32 0 10 10 10 2 24 8 4 1 0x30334241-- y y y win
0x0c 32 0 10 10 10 2 24 8 8 1 0x30334241-- y y y win
0x0d 32 0 8 8 8 8 0 0 0 0 0x34325241-- y y y win
0x0e 32 0 8 8 8 8 24 0 0 0 0x34325241-- y y y win
0x0f 32 0 8 8 8 8 24 8 0 0 0x34325241-- y y y win
0x10 32 0 8 8 8 8 0 0 2 1 0x34325241-- y y y win
0x11 32 0 8 8 8 8 0 0 4 1 0x34325241-- y y y win
0x12 32 0 8 8 8 8 0 0 8 1 0x34325241-- y y y win
0x13 32 0 8 8 8 8 24 0 2 1 0x34325241-- y y y win
0x14 32 0 8 8 8 8 24 0 4 1 0x34325241-- y y y win
0x15 32 0 8 8 8 8 24 0 8 1 0x34325241-- y y y win
0x16 32 0 8 8 8 8 24 8 2 1 0x34325241-- y y y win
0x17 32 0 8 8 8 8 24 8 4 1 0x34325241-- y y y win
0x18 32 0 8 8 8 8 24 8 8 1 0x34325241-- y y y win
0x19 24 0 8 8 8 0 0 0 0 0 0x34325258-- y y y win
0x1a 24 0 8 8 8 0 24 0 0 0 0x34325258-- y y y win
0x1b 24 0 8 8 8 0 24 8 0 0 0x34325258-- y y y win
0x1c 24 0 8 8 8 0 0 0 2 1 0x34325258-- y y y win
0x1d 24 0 8 8 8 0 0 0 4 1 0x34325258-- y y y win
0x1e 24 0 8 8 8 0 0 0 8 1 0x34325258-- y y y win
0x1f 24 0 8 8 8 0 24 0 2 1 0x34325258-- y y y win
0x20 24 0 8 8 8 0 24 0 4 1 0x34325258-- y y y win
0x21 24 0 8 8 8 0 24 0 8 1 0x34325258-- y y y win
0x22 24 0 8 8 8 0 24 8 2 1 0x34325258-- y y y win
0x23 24 0 8 8 8 0 24 8 4 1 0x34325258-- y y y win
0x24 24 0 8 8 8 0 24 8 8 1 0x34325258-- y y y win
0x25 16 0 5 6 5 0 0 0 0 0 0x36314752-- y y y win
0x26 16 0 5 6 5 0 24 0 0 0 0x36314752-- y y y win
0x27 16 0 5 6 5 0 24 8 0 0 0x36314752-- y y y win
0x28 16 0 5 6 5 0 0 0 2 1 0x36314752-- y y y win
0x29 16 0 5 6 5 0 0 0 4 1 0x36314752-- y y y win
0x2a 16 0 5 6 5 0 0 0 8 1 0x36314752-- y y y win
0x2b 16 0 5 6 5 0 24 0 2 1 0x36314752-- y y y win
0x2c 16 0 5 6 5 0 24 0 4 1 0x36314752-- y y y win
0x2d 16 0 5 6 5 0 24 0 8 1 0x36314752-- y y y win
0x2e 16 0 5 6 5 0 24 8 2 1 0x36314752-- y y y win
0x2f 16 0 5 6 5 0 24 8 4 1 0x36314752-- y y y win
0x30 16 0 5 6 5 0 24 8 8 1 0x36314752-- y y y win
Wayland platform:
EGL API version: 1.4
EGL vendor string: Mesa Project
EGL version string: 1.4
EGL client APIs: OpenGL OpenGL_ES
EGL extensions string:
EGL_ANDROID_blob_cache EGL_EXT_buffer_age
EGL_EXT_image_dma_buf_import EGL_EXT_image_dma_buf_import_modifiers
EGL_EXT_present_opaque EGL_EXT_swap_buffers_with_damage
EGL_KHR_cl_event2 EGL_KHR_config_attribs EGL_KHR_create_context
EGL_KHR_create_context_no_error EGL_KHR_fence_sync
EGL_KHR_get_all_proc_addresses EGL_KHR_gl_colorspace
EGL_KHR_gl_renderbuffer_image EGL_KHR_gl_texture_2D_image
EGL_KHR_gl_texture_3D_image EGL_KHR_gl_texture_cubemap_image
EGL_KHR_image_base EGL_KHR_no_config_context EGL_KHR_reusable_sync
EGL_KHR_surfaceless_context EGL_KHR_swap_buffers_with_damage
EGL_EXT_pixel_format_float EGL_KHR_wait_sync
EGL_MESA_configless_context EGL_MESA_drm_image
EGL_MESA_image_dma_buf_export EGL_MESA_query_driver
EGL_WL_bind_wayland_display EGL_WL_create_wayland_buffer_from_image
Configurations:
bf lv colorbuffer dp st ms vis cav bi renderable supported
id sz l r g b a th cl ns b id eat nd gl es es2 vg surfaces
---------------------------------------------------------------------
0x01 32 0 10 10 10 2 0 0 0 0 0x00-- y y y win
0x02 32 0 10 10 10 2 24 0 0 0 0x00-- y y y win
0x03 32 0 10 10 10 2 24 8 0 0 0x00-- y y y win
0x04 32 0 10 10 10 2 0 0 2 1 0x00-- y y y win
0x05 32 0 10 10 10 2 0 0 4 1 0x00-- y y y win
0x06 32 0 10 10 10 2 0 0 8 1 0x00-- y y y win
0x07 32 0 10 10 10 2 24 0 2 1 0x00-- y y y win
0x08 32 0 10 10 10 2 24 0 4 1 0x00-- y y y win
0x09 32 0 10 10 10 2 24 0 8 1 0x00-- y y y win
0x0a 32 0 10 10 10 2 24 8 2 1 0x00-- y y y win
0x0b 32 0 10 10 10 2 24 8 4 1 0x00-- y y y win
0x0c 32 0 10 10 10 2 24 8 8 1 0x00-- y y y win
0x0d 32 0 8 8 8 8 0 0 0 0 0x00-- y y y win
0x0e 32 0 8 8 8 8 24 0 0 0 0x00-- y y y win
0x0f 32 0 8 8 8 8 24 8 0 0 0x00-- y y y win
0x10 32 0 8 8 8 8 0 0 2 1 0x00-- y y y win
0x11 32 0 8 8 8 8 0 0 4 1 0x00-- y y y win
0x12 32 0 8 8 8 8 0 0 8 1 0x00-- y y y win
0x13 32 0 8 8 8 8 24 0 2 1 0x00-- y y y win
0x14 32 0 8 8 8 8 24 0 4 1 0x00-- y y y win
0x15 32 0 8 8 8 8 24 0 8 1 0x00-- y y y win
0x16 32 0 8 8 8 8 24 8 2 1 0x00-- y y y win
0x17 32 0 8 8 8 8 24 8 4 1 0x00-- y y y win
0x18 32 0 8 8 8 8 24 8 8 1 0x00-- y y y win
0x19 24 0 8 8 8 0 0 0 0 0 0x00-- y y y win
0x1a 24 0 8 8 8 0 24 0 0 0 0x00-- y y y win
0x1b 24 0 8 8 8 0 24 8 0 0 0x00-- y y y win
0x1c 24 0 8 8 8 0 0 0 2 1 0x00-- y y y win
0x1d 24 0 8 8 8 0 0 0 4 1 0x00-- y y y win
0x1e 24 0 8 8 8 0 0 0 8 1 0x00-- y y y win
0x1f 24 0 8 8 8 0 24 0 2 1 0x00-- y y y win
0x20 24 0 8 8 8 0 24 0 4 1 0x00-- y y y win
0x21 24 0 8 8 8 0 24 0 8 1 0x00-- y y y win
0x22 24 0 8 8 8 0 24 8 2 1 0x00-- y y y win
0x23 24 0 8 8 8 0 24 8 4 1 0x00-- y y y win
0x24 24 0 8 8 8 0 24 8 8 1 0x00-- y y y win
0x25 16 0 5 6 5 0 0 0 0 0 0x00-- y y y win
0x26 16 0 5 6 5 0 24 0 0 0 0x00-- y y y win
0x27 16 0 5 6 5 0 24 8 0 0 0x00-- y y y win
0x28 16 0 5 6 5 0 0 0 2 1 0x00-- y y y win
0x29 16 0 5 6 5 0 0 0 4 1 0x00-- y y y win
0x2a 16 0 5 6 5 0 0 0 8 1 0x00-- y y y win
0x2b 16 0 5 6 5 0 24 0 2 1 0x00-- y y y win
0x2c 16 0 5 6 5 0 24 0 4 1 0x00-- y y y win
0x2d 16 0 5 6 5 0 24 0 8 1 0x00-- y y y win
0x2e 16 0 5 6 5 0 24 8 2 1 0x00-- y y y win
0x2f 16 0 5 6 5 0 24 8 4 1 0x00-- y y y win
0x30 16 0 5 6 5 0 24 8 8 1 0x00-- y y y win
X11 platform:
eglinfo: eglInitialize failed
Device platform:
eglinfo: eglInitialize failedOffline