You are not logged in.

#1 2021-12-05 08:39:33

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

[SOLVED] Nouveau crashing in Wayland

Hello everyone, I'm using KDE Plasma on Wayland. I have an NVIDIA GF 8600 GT with Nouveau drivers.

I also have a working X11 session. Although, I keep having Nouveau crashing in Wayland while using different Kwin applications or even just by opening the menu or any other tool from the kicker.

Here is a backtrace for the last crash that occured.

Can anyone help me figure out what to do?

Application: Plasma (plasmashell), signal: Segmentation fault

[KCrash Handler]
#4  0x00007eff8da85f12 in  () at /usr/lib/libdrm_nouveau.so.2
#5  0x00007eff8da86900 in  () at /usr/lib/libdrm_nouveau.so.2
#6  0x00007eff86ef7659 in  () at /usr/lib/dri/nouveau_dri.so
#7  0x00007eff86727b14 in  () at /usr/lib/dri/nouveau_dri.so
#8  0x00007eff8e41589e in  () at /usr/lib/qt/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
#9  0x00007eff95405d1d in  () at /usr/lib/libQt5Quick.so.5
#10 0x00007eff95406527 in  () at /usr/lib/libQt5Quick.so.5
#11 0x00007eff9382002f in  () at /usr/lib/libQt5Core.so.5
#12 0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#13 0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 9 (Thread 0x7eff55103640 (LWP 1374) "QSGRenderThread"):
#1  0x00007eff8da862f0 in nouveau_pushbuf_kick () at /usr/lib/libdrm_nouveau.so.2
#2  0x00007eff86ef7659 in  () at /usr/lib/dri/nouveau_dri.so
#3  0x00007eff86727b14 in  () at /usr/lib/dri/nouveau_dri.so
#4  0x00007eff8e41589e in  () at /usr/lib/qt/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
#5  0x00007eff95405d1d in  () at /usr/lib/libQt5Quick.so.5
#6  0x00007eff95406527 in  () at /usr/lib/libQt5Quick.so.5
#7  0x00007eff9382002f in  () at /usr/lib/libQt5Core.so.5
#8  0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 8 (Thread 0x7eff56e94640 (LWP 1371) "KCupsConnection"):
#1  0x00007eff91d41729 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007eff91ceabc1 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007eff93a640bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007eff93a09d8c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007eff9381ee52 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007eff56f7529b in KCupsConnection::run() () at /usr/lib/libkcupslib.so
#7  0x00007eff9382002f in  () at /usr/lib/libQt5Core.so.5
#8  0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 7 (Thread 0x7eff57dc1640 (LWP 1370) "plasmashell"):
#1  0x00007eff910d6524 in  () at /usr/lib/libusbmuxd-2.0.so.6
#2  0x00007eff910d78a9 in  () at /usr/lib/libusbmuxd-2.0.so.6
#3  0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 6 (Thread 0x7eff6f815640 (LWP 1358) "QSGRenderThread"):
#1  0x00007eff927bf270 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#2  0x00007eff938260bc in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007eff95404017 in  () at /usr/lib/libQt5Quick.so.5
#4  0x00007eff9540656b in  () at /usr/lib/libQt5Quick.so.5
#5  0x00007eff9382002f in  () at /usr/lib/libQt5Core.so.5
#6  0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#7  0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7eff7d0d3640 (LWP 1355) "QQuickPixmapRea"):
#1  0x00007eff91ced8d5 in g_main_context_check () at /usr/lib/libglib-2.0.so.0
#2  0x00007eff91d416cd in  () at /usr/lib/libglib-2.0.so.0
#3  0x00007eff91ceabc1 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#4  0x00007eff93a640bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007eff93a09d8c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#6  0x00007eff9381ee52 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#7  0x00007eff9534be9b in  () at /usr/lib/libQt5Quick.so.5
#8  0x00007eff9382002f in  () at /usr/lib/libQt5Core.so.5
#9  0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#10 0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7eff7fcc9640 (LWP 1339) "QQmlThread"):
#1  0x00007eff91ceb979 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007eff91cecfab in g_main_context_prepare () at /usr/lib/libglib-2.0.so.0
#3  0x00007eff91d41646 in  () at /usr/lib/libglib-2.0.so.0
#4  0x00007eff91ceabc1 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#5  0x00007eff93a640bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#6  0x00007eff93a09d8c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#7  0x00007eff9381ee52 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#8  0x00007eff94fe4509 in  () at /usr/lib/libQt5Qml.so.5
#9  0x00007eff9382002f in  () at /usr/lib/libQt5Core.so.5
#10 0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#11 0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7eff8d6af640 (LWP 1326) "plasmas:disk$0"):
#1  0x00007eff927bf270 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#2  0x00007eff866c088c in  () at /usr/lib/dri/nouveau_dri.so
#3  0x00007eff866b9f68 in  () at /usr/lib/dri/nouveau_dri.so
#4  0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#5  0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7eff8e3e5640 (LWP 1305) "QDBusConnection"):
#1  0x00007eff91d41729 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007eff91ceabc1 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007eff93a640bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007eff93a09d8c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007eff9381ee52 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007eff943a2ae8 in  () at /usr/lib/libQt5DBus.so.5
#7  0x00007eff9382002f in  () at /usr/lib/libQt5Core.so.5
#8  0x00007eff927b9259 in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007eff9346c5e3 in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7eff8eb54a80 (LWP 1263) "plasmashell"):
#1  0x00007eff927bf270 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#2  0x00007eff938260bc in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007eff95407f37 in  () at /usr/lib/libQt5Quick.so.5
#4  0x00007eff954765cf in QQuickWindow::event(QEvent*) () at /usr/lib/libQt5Quick.so.5
#5  0x00007eff946edd62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#6  0x00007eff93a0b41a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#7  0x00007eff93dd2b2d in QPlatformWindow::deliverUpdateRequest() () at /usr/lib/libQt5Gui.so.5
#8  0x00007eff915698bb in  () at /usr/lib/libQt5WaylandClient.so.5
#9  0x00007eff93a3856f in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#10 0x00007eff946edd62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#11 0x00007eff93a0b41a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#12 0x00007eff93a0e519 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt5Core.so.5
#13 0x00007eff93a64a14 in  () at /usr/lib/libQt5Core.so.5
#14 0x00007eff91ced4dc in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#15 0x00007eff91d41799 in  () at /usr/lib/libglib-2.0.so.0
#16 0x00007eff91ceabc1 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#17 0x00007eff93a64046 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#18 0x00007eff93a09d8c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#19 0x00007eff93a122f4 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#20 0x0000564f49051132 in  ()
#21 0x00007eff93395b25 in __libc_start_main () at /usr/lib/libc.so.6
#22 0x0000564f4905126e in  ()
[Inferior 1 (process 1263) detached]

Last edited by ordinary.schreiber (2022-01-11 16:16:49)

Offline

#2 2021-12-05 10:48:16

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,308

Re: [SOLVED] Nouveau crashing in Wayland

Known nouveau bug you can't do much about

And I was like this backtrace sounds familiar and it's even a thread you started: https://bbs.archlinux.org/viewtopic.php … 8#p1999608 unless you followed up on these suggestions and tried to work with the relevant upstreams its unlikely much will have changed here.

In practice one thing you can try now is exporting QSG_RENDER_LOOP=basic before starting plasma-wayland https://wiki.archlinux.org/title/Environment_variables

Last edited by V1del (2021-12-05 10:54:42)

Offline

#3 2021-12-05 15:15:06

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

Thank you for your suggestions.

Yes I already mentioned this in another thread but I had the feeling it could have been something different.

Unfortunately I couldn't do much about it, even by following the instructions given.
I'll see what I can do this time, I was hoping it would have been easier to solve the issue.

Thank you for your support and your patience anyway.

Offline

#4 2021-12-05 21:11:53

arch_jsb
Member
Registered: 2010-03-13
Posts: 30

Re: [SOLVED] Nouveau crashing in Wayland

it was my impression that nvidia does not work with wayland, period.

Offline

#5 2021-12-05 22:25:57

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,308

Re: [SOLVED] Nouveau crashing in Wayland

Not really. Nouveau has technically always worked (... and this specific issue has nothing to do with wayland but  nouveau not handling multi threaded OpenGL well, the functionality is blacklisted for Qt on xorg and not for Qt on wayland) and nvidia has worked for years with their own eglstreams implementation which needed the compositors to implement a secondary code path. But as of the latest driver nvidia has GBM support which technically allows it to run on everything, there are still some issues to iron out with that for everyone involved but from a "possibility" perspective nvidia should work on Wayland now.

Last edited by V1del (2021-12-05 22:39:36)

Offline

#6 2021-12-31 09:51:00

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

Let me know whether the situation changes somehow.

Anybody else dealing with this problem?

Offline

#7 2022-01-02 15:30:38

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,308

Re: [SOLVED] Nouveau crashing in Wayland

Did you try  exporting QSG_RENDER_LOOP=basic  ? you "shouldn't" get the same backtrace.

Offline

#8 2022-01-09 12:13:43

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

I did try to follow the instructions on the wiki but unfortunately I couldn't understand all of them and I'm not sure I did it correctly.

I tried running the following command in Xorg session:

export QSG_RENDER_LOOP=basic

Then I started the Wayland session and as soon as I got past the login another error occured. Although, once I tried to generate the backtrace for that error I would get "the debugger closed unexpectedly" as a result.

Please let me know if there is anything else I can try here.
Thank you again for the support.

Offline

#9 2022-01-09 15:47:51

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

I rebooted and entered Wayland session once again.

After login another crash was reported and this time I was able to generate the backtrace:

Application: Plasma (plasmashell), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f5979b4fbad in  () at /usr/lib/dri/nouveau_dri.so
#5  0x00007f5979b5da79 in  () at /usr/lib/dri/nouveau_dri.so
#6  0x00007f5979b6d623 in  () at /usr/lib/dri/nouveau_dri.so
#7  0x00007f59790eca64 in  () at /usr/lib/libdrm_nouveau.so.2
#8  0x00007f59790eccd7 in  () at /usr/lib/libdrm_nouveau.so.2
#9  0x00007f59790ed2f0 in nouveau_pushbuf_kick () at /usr/lib/libdrm_nouveau.so.2
#10 0x00007f5979b6d88d in  () at /usr/lib/dri/nouveau_dri.so
#11 0x00007f597937edf8 in  () at /usr/lib/dri/nouveau_dri.so
#12 0x00007f597b7518be in  () at /usr/lib/qt/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
#13 0x00007f59825a09bd in  () at /usr/lib/libQt5Quick.so.5
#14 0x00007f59825a5010 in  () at /usr/lib/libQt5Quick.so.5
#15 0x00007f5980b13838 in  () at /usr/lib/libQt5Core.so.5
#16 0x00007f597fade259 in start_thread () at /usr/lib/libpthread.so.0
#17 0x00007f59807495e3 in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7f5966287640 (LWP 718) "QQuickPixmapRea"):
#1  0x00007f597f087749 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f597f030c11 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f5980d05337 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f5980cb236b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f5980b169f6 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007f59824fadaf in  () at /usr/lib/libQt5Quick.so.5
#7  0x00007f5980b13838 in  () at /usr/lib/libQt5Core.so.5
#8  0x00007f597fade259 in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007f59807495e3 in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7f596cdc1640 (LWP 695) "QQmlThread"):
#1  0x00007f597f033836 in g_main_context_check () at /usr/lib/libglib-2.0.so.0
#2  0x00007f597f0876ed in  () at /usr/lib/libglib-2.0.so.0
#3  0x00007f597f030c11 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#4  0x00007f5980d05337 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f5980cb236b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#6  0x00007f5980b169f6 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#7  0x00007f59821a34b0 in  () at /usr/lib/libQt5Qml.so.5
#8  0x00007f5980b13838 in  () at /usr/lib/libQt5Core.so.5
#9  0x00007f597fade259 in start_thread () at /usr/lib/libpthread.so.0
#10 0x00007f59807495e3 in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7f5978ce6640 (LWP 643) "plasmas:disk$0"):
#1  0x00007f597fae4270 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#2  0x00007f5979313dfc in  () at /usr/lib/dri/nouveau_dri.so
#3  0x00007f597930caac in  () at /usr/lib/dri/nouveau_dri.so
#4  0x00007f597fade259 in start_thread () at /usr/lib/libpthread.so.0
#5  0x00007f59807495e3 in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7f597b71a640 (LWP 611) "QDBusConnection"):
#1  0x00007f597f087749 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f597f030c11 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f5980d05337 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f5980cb236b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f5980b169f6 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007f59815dd3d9 in  () at /usr/lib/libQt5DBus.so.5
#7  0x00007f5980b13838 in  () at /usr/lib/libQt5Core.so.5
#8  0x00007f597fade259 in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007f59807495e3 in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7f597beb3a80 (LWP 570) "plasmashell"):
#1  0x00007f597fae4270 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#2  0x00007f5980b1ac2c in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007f59825a9dd7 in  () at /usr/lib/libQt5Quick.so.5
#4  0x00007f59825fbe44 in QQuickWindow::event(QEvent*) () at /usr/lib/libQt5Quick.so.5
#5  0x00007f59819291a6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#6  0x00007f5980cba08a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#7  0x00007f598107f7d1 in QPlatformWindow::deliverUpdateRequest() () at /usr/lib/libQt5Gui.so.5
#8  0x00007f5980cddcf6 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#9  0x00007f59819291a6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#10 0x00007f5980cba08a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#11 0x00007f5980cbab89 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt5Core.so.5
#12 0x00007f5980d013b8 in  () at /usr/lib/libQt5Core.so.5
#13 0x00007f597f03352c in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#14 0x00007f597f0877b9 in  () at /usr/lib/libglib-2.0.so.0
#15 0x00007f597f030c11 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#16 0x00007f5980d052ba in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#17 0x00007f5980cb236b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#18 0x00007f5980cbdab7 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#19 0x000055ac6c8e251a in  ()
#20 0x00007f5980672b25 in __libc_start_main () at /usr/lib/libc.so.6
#21 0x000055ac6c8e28de in  ()
[Inferior 1 (process 570) detached]

Apart from that, even though some errors still occur, the environment seems to handle them better than before and I do not get the system to freeze completely anymore.

Still not sure whether it was due to this or not

ordinary.schreiber wrote:
export QSG_RENDER_LOOP=basic

Offline

#10 2022-01-09 16:46:52

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,308

Re: [SOLVED] Nouveau crashing in Wayland

Depends on where you did that export. A variable export applies to the relevant children, i.e. if you do it in a terminal and then start the session from "that" terminal then it will be applied. To be sure do something like

tr '\0' '\n' < /proc/$(pidof plasmashell)/environ

that should contain the QSG variable. If it doesn't you didn't do it correctly.

In it's most "basic" form you'd do something like https://wiki.archlinux.org/title/KDE#From_the_console and add that variable in addition to the XDG one.

Last edited by V1del (2022-01-09 16:48:11)

Offline

#11 2022-01-10 09:54:29

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

Yeah the QSG variable was not contained in that output.

Although, doing something like this

V1del wrote:

i.e. if you do it in a terminal and then start the session from "that" terminal then it will be applied.

won't it make it only "temporary"?

Is there a way to apply that variable to the entire system in order to maintain changes between restarts and to enter the Wayland session from the KDE login screen with that variable already applied?

Offline

#12 2022-01-10 10:19:30

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,308

Re: [SOLVED] Nouveau crashing in Wayland

Multiple, seeing as Qt enforces it anyway for X11 it doesn't really hurt to do it globally: https://wiki.archlinux.org/title/Enviro … s#Globally

Offline

#13 2022-01-11 12:40:46

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

What I understand from that is that in my case I could add to /etc/profile the following strings:

# If user ID is greater than or equal to 1000 & if ~/bin exists and is a directory & if ~/bin is not already in your $PATH 
# then export ~/bin to your $PATH
if [[ $UID -ge 1000 && -d $HOME/bin && -z $(echo $PATH | grep -o $HOME/bin) ]] 
then export PATH="${PATH}:$HOME/bin" 
fi

But how would this apply the QSG variable globally?
What else should I do in order to proceed solving my issue?

Offline

#14 2022-01-11 12:42:42

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,308

Re: [SOLVED] Nouveau crashing in Wayland

That's an example for a specific usecase. For your case you'd just add export QSG_RENDER_LOOP=basic somewhere in the file

Last edited by V1del (2022-01-11 12:43:34)

Offline

#15 2022-01-11 13:37:00

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

I just tried, but it seems like it it did not work properly.

I added that string to the /etc/profile file in Xorg session.

Then I rebooted into Wayland session and tried this to verify if QSG was there but it wasn't.

tr '\0' '\n' < /proc/$(pidof plasmashell)/environ

Did I miss something? Can I try something else?

Offline

#16 2022-01-11 16:16:18

ordinary.schreiber
Member
Registered: 2021-10-15
Posts: 146

Re: [SOLVED] Nouveau crashing in Wayland

Ok I double checked the /etc/profile file and I simply spelled wrong the variable.

Now it works!!

I entered the string "export QSG_RENDER_LOOP=basic" at the bottom of the /etc/profile file from a Xorg session and then rebooted into Wayland session.

Since I entered the environment I haven't experienced any of the usual crashes yet.
It seems like my Wayland session finally works without Nouveau crashing every minute.

Thank you a lot!!

Offline

Board footer

Powered by FluxBB