Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
I broke QtQml/KDE during a routine update. Any ideas?
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
superjaded
l33t
l33t


Joined: 05 Jul 2002
Posts: 802

PostPosted: Sun Dec 19, 2021 12:59 pm    Post subject: I broke QtQml/KDE during a routine update. Any ideas? Reply with quote

On Thursday I was updating one of my systems which currently runs mixed accept_keywords with amd64 and some stuff ~amd64 (and some **, but those should likely not be relevant here). I say it was a routine update because I did not do much during that update window beyond eix-sync && emerge -auDNv @world. I'm certainly guilty of tinkering / experimenting with this system in particular in ways that could cause regressions, but this wasn't one of those times. After the update, it seems like anything that uses certain functions from libQt5Qml (from dev-qt/qtdeclarative) will segfault. This includes things like sddm, plasmashell and systemsettings5.

That particular update and immediately after did have a couple slight idiosyncrasies before I realized the extent of the breakage:
  • I had to accept ~amd64 for dev-util/cmake-3.21.4 which was required for kde-frameworks-5.89.0-r1. I assume this is probably not an issue though since that version of cmake was changed to amd64 within the next ~24 hours.
  • After the update finished, I tried to reboot from the Plasma app launcher and it threw an error of some sort instead of popping up the confirmation dialogue that normally pops up. I didn't really read the error and just used CLI reboot. I assume the error was something about Qml though.
Some specifics about my system:

Running openrc as the init.
Profile is:default/linux/amd64/17.1/desktop/plasma
I also include my emerge --info below.

dev-qt/* is all currently amd64. e.g. dev-qt/qtcore is currently 5.15.2-r11 instead of 5.15.2-r12

The KDE Plasma categories are accepting ~amd64:
  • kde-frameworks-5.89
  • kde-gear-21.12
  • kde-plasma-5.23

What I've tried to do in order to fix (most of which was just throwing stuff at the wall in hopes of something sticking):

  • I've tried recompiling all of dev-qt/*, kde-frameworks/*, kde-plasma/* and kde-apps/*
  • Doing a search for the error referencing QQmlThread, I found a forum thread for nixos related to an earlier version of Qt that had a bug related to qmlcache invalidation. This was specifically related to SDDM, and the suggested workaround was to delete /var/lib/sddm/.cache/sddm-greeter/qmlcache/*. Deleting that didn't do anything, so I tried deleting /var/lib/sddm entirely. That didn't do anything either. this is the nixos bug report in case it helps.
  • I've also tried starting Plasma via startx after moving my home directory (ie; mv chris chris.old && mkdir chris, etc). I still get the same issue with plasmashell crashing which I go into more detail below.
  • I've also had some stability issues with kernel 5.15.x, so I installed sys-kernel/gentoo-kernel-bin-5.10.84. I wasn't expecting it to help,and it didn't.
  • I did try running revdep-rebuild and it reports my system is consistent. That may not be too surprising thourgh since the segfaults I'm getting aren't indicating missing libraries/dependencies.

The packages that were updated prior to this happening:

Code:
2021-12-16T16:10:42 >>> app-emulation/runc-1.0.2-r1: 59 seconds
2021-12-16T16:10:41 >>> x11-themes/papirus-icon-theme-20211201: 3 minutes, 13 seconds
2021-12-16T16:10:42 >>> dev-libs/openssl-1.1.1l-r1: 3 minutes, 24 seconds
2021-12-16T16:14:06 >>> dev-util/cmake-3.21.4: 3 minutes, 46 seconds
2021-12-16T16:17:52 >>> dev-qt/qtcore-5.15.2-r11: 4 minutes, 41 seconds
2021-12-16T16:22:33 >>> media-libs/libmypaint-1.6.1-r1: 15 seconds
2021-12-16T16:22:38 >>> dev-qt/qtnetwork-5.15.2-r13: 1 minute, 52 seconds
2021-12-16T16:24:30 >>> kde-frameworks/breeze-icons-5.89.0-r1: 1 minute, 11 seconds
2021-12-16T16:25:46 >>> dev-python/pyproject2setuppy-21: 19 seconds
2021-12-16T16:25:56 >>> dev-dotnet/dotnetcore-sdk-bin-common-6.0.101: 28 seconds
2021-12-16T16:26:15 >>> dev-python/typing-extensions-4.0.0: 33 seconds
2021-12-16T16:26:34 >>> dev-dotnet/dotnetcore-sdk-bin-6.0.101: 51 seconds
2021-12-16T16:25:41 >>> dev-qt/qtsql-5.15.2-r11: 1 minute, 55 seconds
2021-12-16T16:25:48 >>> sys-kernel/gentoo-kernel-5.15.8: 17 minutes, 19 seconds
2021-12-16T16:42:42 >>> dev-dotnet/dotnetcore-sdk-bin-5.0.404: 39 seconds
2021-12-16T16:42:55 >>> media-fonts/noto-emoji-20211101: 56 seconds
2021-12-16T16:42:59 >>> www-client/brave-bin-1.33.106: 1 minute, 7 seconds
2021-12-16T16:43:33 >>> virtual/dist-kernel-5.15.8: 42 seconds
2021-12-16T16:42:51 >>> x11-base/xwayland-21.1.4: 1 minute, 36 seconds
2021-12-16T16:42:47 >>> x11-base/xorg-server-1.20.14: 2 minutes, 44 seconds
2021-12-16T16:25:44 >>> net-misc/openssh-8.7_p1-r3: 26 minutes, 11 seconds
2021-12-16T16:45:26 >>> dev-qt/qtgui-5.15.2-r15: 6 minutes, 34 seconds
2021-12-16T16:52:00 >>> x11-drivers/xf86-input-libinput-1.2.0: 15 seconds
2021-12-16T16:52:04 >>> dev-qt/qtwidgets-5.15.2-r12: 3 minutes, 52 seconds
2021-12-16T16:55:56 >>> x11-drivers/xf86-video-amdgpu-21.0.0: 16 seconds
2021-12-16T16:56:01 >>> dev-qt/qtdeclarative-5.15.2-r14: 12 minutes, 35 seconds
2021-12-16T17:08:36 >>> x11-drivers/xf86-video-ati-19.1.0: 28 seconds
2021-12-16T17:08:41 >>> dev-qt/qtsvg-5.15.2-r11: 29 seconds
2021-12-16T17:09:10 >>> dev-qt/qtprintsupport-5.15.2-r11: 1 minute, 26 seconds
2021-12-16T17:09:15 >>> dev-qt/qtwayland-5.15.2-r16: 4 minutes, 24 seconds
2021-12-16T17:13:39 >>> app-editors/vscodium-1.63.1: 16 seconds
2021-12-16T17:13:48 >>> kde-plasma/libksysguard-5.23.4-r1: 2 minutes, 25 seconds
2021-12-16T17:13:53 >>> kde-plasma/kwin-5.23.4-r2: 10 minutes, 2 seconds


This is one of the systems that I typically update every day (give or take a day or two), so it may be worth mentioning that I am continuing to update that system every day on the chance something rebuilds that turns out to "magically" fix it, but I don't know if I'm digging myself deeper into the proverbial hole by doing that or not. I have several other Gentoo systems running broadly the same setup, especially with respect to Qt/KDE, and those systems updated fine, so it's very specific to this system.

Some of the behavior that I've experienced. Generally I'm getting segfaults seemingly around certain functions in the libQt5Qml library. I also haven't been compiling stuff with debug symbols so I don't know how useful the information is going to be, but in case someone else notices something I haven't.

sddm "loads" but basically just has a blank screen instead of loading the login form. There isn't anything particularly useful in /var/log/sddm.log, but whenever I try loading sddm (through the display-manager service) I see this in my dmesg:

Code:
[ 3987.314098] elogind-daemon[4493]: New session c2 of user sddm.
[ 3987.381401] QQmlThread[20428]: segfault at 40 ip 00007f6df0595f8e sp 00007f6de983ebe0 error 4 in libQt5Qml.so.5.15.2[7f6df048d000+1c5000]
[ 3987.381408] Code: 66 89 44 24 06 8b 44 24 04 48 8b 54 24 08 64 48 2b 14 25 28 00 00 00 74 05 e8 0e 7c ef ff 48 83 c4 18 c3 90 41 54 85 f6 78 3f <4c> 8b 67 28 8b 47 18 41 8b 54 24 04 01 c2 39 f2 7e 2d 39 f0 7e 06
[ 3987.387808] elogind-daemon[4493]: Removed session c2.

I tried starting plasma X11 by putting the following .xinitrc and running startx:
Code:
#!/bin/sh

kate&
exec dbus-launch --exit-with-session startplasma-x11


Using startx, I get the Plasma splash screen indicating that Plasma is loading, and after something like 30 seconds, the splash screen ends and I'm faced with a drkonqi crash window with the following stack trace:

Code:
Application: Plasma (plasmashell), signal: Segmentation fault

[KCrash Handler]
#4  0x00007fa1f8164f8e in QQmlPropertyCache::property(int) const () from /usr/lib64/libQt5Qml.so.5
#5  0x00007fa1f81ce23e in ?? () from /usr/lib64/libQt5Qml.so.5
#6  0x00007fa1f81ce506 in ?? () from /usr/lib64/libQt5Qml.so.5
#7  0x00007fa1f81cc565 in ?? () from /usr/lib64/libQt5Qml.so.5
#8  0x00007fa1f81cc9a5 in ?? () from /usr/lib64/libQt5Qml.so.5
#9  0x00007fa1f81cccad in ?? () from /usr/lib64/libQt5Qml.so.5
#10 0x00007fa1f8160157 in ?? () from /usr/lib64/libQt5Qml.so.5
#11 0x00007fa1f8164178 in ?? () from /usr/lib64/libQt5Qml.so.5
#12 0x00007fa1f815924b in QQmlDataBlob::tryDone() () from /usr/lib64/libQt5Qml.so.5
#13 0x00007fa1f81946cf in QQmlTypeLoader::setData(QQmlDataBlob*, QQmlDataBlob::SourceCodeData const&) () from /usr/lib64/libQt5Qml.so.5
#14 0x00007fa1f8194917 in QQmlTypeLoader::setData(QQmlDataBlob*, QString const&) () from /usr/lib64/libQt5Qml.so.5
#15 0x00007fa1f8194f9b in QQmlTypeLoader::loadThread(QQmlDataBlob*) () from /usr/lib64/libQt5Qml.so.5
#16 0x00007fa1f81950ca in QQmlTypeLoader::load(QQmlDataBlob*, QQmlTypeLoader::Mode) () from /usr/lib64/libQt5Qml.so.5
#17 0x00007fa1f8196919 in QQmlTypeLoader::getType(QUrl const&, QQmlTypeLoader::Mode) () from /usr/lib64/libQt5Qml.so.5
#18 0x00007fa1f8162f38 in ?? () from /usr/lib64/libQt5Qml.so.5
#19 0x00007fa1f8164dd1 in ?? () from /usr/lib64/libQt5Qml.so.5
#20 0x00007fa1f81946a8 in QQmlTypeLoader::setData(QQmlDataBlob*, QQmlDataBlob::SourceCodeData const&) () from /usr/lib64/libQt5Qml.so.5
#21 0x00007fa1f8194917 in QQmlTypeLoader::setData(QQmlDataBlob*, QString const&) () from /usr/lib64/libQt5Qml.so.5
#22 0x00007fa1f8194f9b in QQmlTypeLoader::loadThread(QQmlDataBlob*) () from /usr/lib64/libQt5Qml.so.5
#23 0x00007fa1f816a577 in ?? () from /usr/lib64/libQt5Qml.so.5
#24 0x00007fa1f81e05ab in ?? () from /usr/lib64/libQt5Qml.so.5
#25 0x00007fa1f81e07d6 in ?? () from /usr/lib64/libQt5Qml.so.5
#26 0x00007fa1f7b99be1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#27 0x00007fa1f7169a74 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#28 0x00007fa1f716a3c5 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQt5Core.so.5
#29 0x00007fa1f719f7eb in ?? () from /usr/lib64/libQt5Core.so.5
#30 0x00007fa1f5aa27f1 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#31 0x00007fa1f5aa2a58 in ?? () from /usr/lib64/libglib-2.0.so.0
#32 0x00007fa1f5aa2b0a in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#33 0x00007fa1f719f3a0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#34 0x00007fa1f7167192 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#35 0x00007fa1f7040a6e in QThread::exec() () from /usr/lib64/libQt5Core.so.5
#36 0x00007fa1f81e009f in ?? () from /usr/lib64/libQt5Qml.so.5
#37 0x00007fa1f7041a35 in ?? () from /usr/lib64/libQt5Core.so.5
#38 0x00007fa1f620acfe in start_thread () from /lib64/libpthread.so.0
#39 0x00007fa1f6cc424f in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7fa1ebfff640 (LWP 25493) "plasmas:disk$0"):
#1  0x00007fa1f6210c20 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#2  0x00007fa1f0acbe03 in ?? () from /usr/lib64/dri/i965_dri.so
#3  0x00007fa1f0acb899 in ?? () from /usr/lib64/dri/i965_dri.so
#4  0x00007fa1f620acfe in start_thread () from /lib64/libpthread.so.0
#5  0x00007fa1f6cc424f in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7fa1f1fc5640 (LWP 25464) "QDBusConnection"):
#1  0x00007fa1f5ad9aee in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fa1f5aa248c in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fa1f5aa2a46 in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007fa1f5aa2b0a in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x00007fa1f719f3a0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#6  0x00007fa1f7167192 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#7  0x00007fa1f7040a6e in QThread::exec() () from /usr/lib64/libQt5Core.so.5
#8  0x00007fa1f7889f87 in ?? () from /usr/lib64/libQt5DBus.so.5
#9  0x00007fa1f7041a35 in ?? () from /usr/lib64/libQt5Core.so.5
#10 0x00007fa1f620acfe in start_thread () from /lib64/libpthread.so.0
#11 0x00007fa1f6cc424f in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fa1f2ae8640 (LWP 25452) "QXcbEventQueue"):
#1  0x00007fa1f8aafc2c in ?? () from /usr/lib64/libxcb.so.1
#2  0x00007fa1f8ab12ef in xcb_wait_for_event () from /usr/lib64/libxcb.so.1
#3  0x00007fa1f2be5ff2 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007fa1f7041a35 in ?? () from /usr/lib64/libQt5Core.so.5
#5  0x00007fa1f620acfe in start_thread () from /lib64/libpthread.so.0
#6  0x00007fa1f6cc424f in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fa1f335e800 (LWP 25447) "plasmashell"):
#1  0x00007fa1f6210c20 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#2  0x00007fa1f7045edc in ?? () from /usr/lib64/libQt5Core.so.5
#3  0x00007fa1f7045c2b in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /usr/lib64/libQt5Core.so.5
#4  0x00007fa1f81e06a3 in ?? () from /usr/lib64/libQt5Qml.so.5
#5  0x00007fa1f8195117 in QQmlTypeLoader::load(QQmlDataBlob*, QQmlTypeLoader::Mode) () from /usr/lib64/libQt5Qml.so.5
#6  0x00007fa1f8196919 in QQmlTypeLoader::getType(QUrl const&, QQmlTypeLoader::Mode) () from /usr/lib64/libQt5Qml.so.5
#7  0x00007fa1f817f2e0 in QQmlComponentPrivate::loadUrl(QUrl const&, QQmlComponent::CompilationMode) () from /usr/lib64/libQt5Qml.so.5
#8  0x00007fa1f89a6ed0 in ?? () from /usr/lib64/libKF5Declarative.so.5
#9  0x00007fa1e88f5e15 in ?? () from /usr/lib64/qt5/plugins/plasma/scriptengines/plasma_appletscript_declarative.so
#10 0x00007fa1e88f6189 in ?? () from /usr/lib64/qt5/plugins/plasma/scriptengines/plasma_appletscript_declarative.so
#11 0x00007fa1e88f1b13 in ?? () from /usr/lib64/qt5/plugins/plasma/scriptengines/plasma_appletscript_declarative.so
#12 0x00007fa1e88f268a in ?? () from /usr/lib64/qt5/plugins/plasma/scriptengines/plasma_appletscript_declarative.so
#13 0x00007fa1f8c6daac in PlasmaQuick::AppletQuickItem::itemChange(QQuickItem::ItemChange, QQuickItem::ItemChangeData const&) () from /usr/lib64/libKF5PlasmaQuick.so.5
#14 0x00007fa1f8587695 in QQuickItemPrivate::refWindow(QQuickWindow*) () from /usr/lib64/libQt5Quick.so.5
#15 0x00007fa1f8589807 in QQuickItem::setParentItem(QQuickItem*) () from /usr/lib64/libQt5Quick.so.5
#16 0x00007fa1f8c76e43 in ?? () from /usr/lib64/libKF5PlasmaQuick.so.5
#17 0x0000555eaf134280 in ?? ()
#18 0x0000555eaf1393e9 in ?? ()
#19 0x00007fa1f8a3591c in Plasma::Corona::loadLayout(QString const&) () from /usr/lib64/libKF5Plasma.so.5
#20 0x0000555eaf139bb3 in ?? ()
#21 0x00007fa1f7189aba in ?? () from /usr/lib64/libQt5Core.so.5
#22 0x00007fa1f8c2d17d in KActivities::Consumer::serviceStatusChanged(KActivities::Consumer::ServiceStatus) () from /usr/lib64/libKF5Activities.so.5
#23 0x00007fa1f7189aba in ?? () from /usr/lib64/libQt5Core.so.5
#24 0x00007fa1f8c2d121 in ?? () from /usr/lib64/libKF5Activities.so.5
#25 0x00007fa1f8c3900c in ?? () from /usr/lib64/libKF5Activities.so.5
#26 0x00007fa1f8c38d16 in ?? () from /usr/lib64/libKF5Activities.so.5
#27 0x00007fa1f7189b14 in ?? () from /usr/lib64/libQt5Core.so.5
#28 0x00007fa1f78bb39f in QDBusPendingCallWatcher::finished(QDBusPendingCallWatcher*) () from /usr/lib64/libQt5DBus.so.5
#29 0x00007fa1f7182814 in QObject::event(QEvent*) () from /usr/lib64/libQt5Core.so.5
#30 0x00007fa1f7b99be1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#31 0x00007fa1f7169a74 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#32 0x00007fa1f716a3c5 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQt5Core.so.5
#33 0x00007fa1f719f7eb in ?? () from /usr/lib64/libQt5Core.so.5
#34 0x00007fa1f5aa27f1 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#35 0x00007fa1f5aa2a58 in ?? () from /usr/lib64/libglib-2.0.so.0
#36 0x00007fa1f5aa2b0a in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#37 0x00007fa1f719f3a0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#38 0x00007fa1f7167192 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#39 0x00007fa1f716ba75 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5
#40 0x0000555eaf11c431 in ?? ()
#41 0x00007fa1f6bf07fd in __libc_start_main () from /lib64/libc.so.6
#42 0x0000555eaf11c50a in ?? ()
[Inferior 1 (process 25447) detached]

Early on I also installed openbox just to verify there wasn't anything wrong with Xorg specifically. I could get into Xorg with openbox just fine, and I could also run most of the standard Qt or KDE apps I normally run like Dolphin, Kate and qmmp.

I found that app-crypt/yubioauth-desktop (which I use quite frequently) had a dependency on qtdeclarative, so I decided to see if I could run that or not. yubioath-desktop immediately segfaults and I'm pretty sure it's related to the other issues I'm seeing because of the dependency on qtdeclarative and each time I run yubioath-desktop, I see an error in dmesg relating to a segfault for QQmlThread, similar to what I described related to sddm.

And finally, if it helps, the output of emerge --info:

Code:
Portage 3.0.28 (python 3.9.9-final-0, default/linux/amd64/17.1/desktop/plasma, gcc-11.2.0, glibc-2.33-r7, 5.15.8-200.fc35.x86_64 x86_64)
=================================================================
System uname: Linux-5.15.8-200.fc35.x86_64-x86_64-Intel-R-_Core-TM-_i7-6700K_CPU_@_4.00GHz-with-glibc2.33
KiB Mem:    32798640 total,  16397684 free
KiB Swap:   25165816 total,  25165816 free
Timestamp of repository gentoo: Sun, 19 Dec 2021 07:15:01 +0000
Head commit of repository gentoo: 09e3648d3511bcfbcb78a2fe34c0957c2858d312
Timestamp of repository brave-overlay: Thu, 16 Dec 2021 12:06:51 +0000
Head commit of repository brave-overlay: 3d86d77b9cf07992b4876c38f0d3c6529b83d6b1

Timestamp of repository dotnet: Sat, 18 Dec 2021 22:08:26 +0000
Head commit of repository dotnet: cf2a685bfa8712ccba577aeb6da116cdaf55104a

Timestamp of repository guru: Sat, 18 Dec 2021 22:09:05 +0000
Head commit of repository guru: 00dbfe3d352b5f98afefadc385edee59772fadf9

Timestamp of repository kde: Sat, 18 Dec 2021 22:08:47 +0000
Head commit of repository kde: cd91e060a91c3ee6ec0ac85b887f6a3e5ecaf718

Timestamp of repository miramir: Sat, 18 Dec 2021 22:08:30 +0000
Head commit of repository miramir: a3b6872e8a613e789ed02d011c30ed0384ecdb20

Timestamp of repository steam-overlay: Sat, 18 Dec 2021 22:08:33 +0000
Head commit of repository steam-overlay: 803ed6c29a6afcc637b1bad0ee44a1695f47fc5e

Head commit of repository superjaded: 792f739d3fe9f38e873495ed52b60f38173efc42

Timestamp of repository waffle-builds: Sat, 18 Dec 2021 22:08:58 +0000
Head commit of repository waffle-builds: f4d86605ceccf37bfa021f699f1059f2c1ec5f08

Timestamp of repository zGentoo: Sat, 18 Dec 2021 22:09:00 +0000
Head commit of repository zGentoo: 1a551474c3c1d7bf45b46b8db5061a7ef1ceb7e0

sh bash 5.1_p8
ld GNU ld (Gentoo 2.37_p1 p0) 2.37
app-misc/pax-utils:        1.3.3::gentoo
app-shells/bash:           5.1_p8::gentoo
dev-lang/perl:             5.34.0-r3::gentoo
dev-lang/python:           3.9.9::gentoo, 3.10.0_p1::gentoo
dev-lang/rust-bin:         1.56.1::gentoo
dev-util/cmake:            3.21.4::gentoo
dev-util/meson:            0.59.4::gentoo
sys-apps/baselayout:       2.7-r3::gentoo
sys-apps/openrc:           0.44.9::gentoo
sys-apps/sandbox:          2.25::gentoo
sys-devel/autoconf:        2.71-r1::gentoo
sys-devel/automake:        1.16.4::gentoo
sys-devel/binutils:        2.37_p1::gentoo
sys-devel/binutils-config: 5.4::gentoo
sys-devel/clang:           13.0.0::gentoo
sys-devel/gcc:             11.2.0::gentoo
sys-devel/gcc-config:      2.4::gentoo
sys-devel/libtool:         2.4.6-r6::gentoo
sys-devel/llvm:            13.0.0::gentoo
sys-devel/make:            4.3::gentoo
sys-kernel/linux-headers:  5.10-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.33-r7::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rakka.mothership.local/gentoo-portage
    priority: -1000
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-max-age: 24
    sync-rsync-extra-opts:
    sync-rsync-verify-jobs: 1

brave-overlay
    location: /var/db/repos/brave-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/brave-overlay.git
    masters: gentoo

dotnet
    location: /var/db/repos/dotnet
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/dotnet.git
    masters: gentoo

guru
    location: /var/db/repos/guru
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/guru.git
    masters: gentoo

kde
    location: /var/db/repos/kde
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/kde.git
    masters: gentoo

miramir
    location: /var/db/repos/miramir
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/miramir.git
    masters: gentoo

steam-overlay
    location: /var/db/repos/steam-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/steam-overlay.git
    masters: gentoo

superjaded
    location: /var/db/repos/superjaded
    sync-type: git
    sync-uri: https://gitlab.com/superjaded/gentoo-repo.git
    masters: gentoo

waffle-builds
    location: /var/db/repos/waffle-builds
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/waffle-builds.git
    masters: gentoo

zGentoo
    location: /var/db/repos/zGentoo
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/zGentoo.git
    masters: gentoo

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-Os -march=native -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-Os -march=native -pipe"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--jobs=4 --load-average=8"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-Os -march=native -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-Os -march=native -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j8"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="X a52 aac acl acpi activities alsa amd64 branding btrfs bzip2 cairo cdda cdr cjk cli crypt cryptsetup dbus declarative device-mapper dist-kernel dri dts dvd dvdr elogind emboss encode exif fcitx4 flac fortran gdbm gif gles gles2 gphoto2 gpm gtk gui iconv icu ipv6 jpeg kde kipi kwallet lcms libglvnd libnotify libtirpc lm-sensors lvm mad mng mp3 mp4 mpeg multilib ncurses nls nptl ogg opengl openmp pam pango pcre pdf pipewire plasma plymouth png policykit ppds pulseaudio qml qt5 readline sdl seccomp spell split-usr ssl startup-notification svg tiff truetype udev udisks unicode upower usb vaapi vdpau vorbis vulkan vulkan-overlay wayland widgets wxwidgets x264 xattr xcb xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gnat_2020" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words flow" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput" KERNEL="linux" L10N="ja" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LLVM_TARGETS="X86 AMDGPU WebAssembly BPF" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-3 php7-4" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_9" PYTHON_TARGETS="python3_9" RUBY_TARGETS="ruby26 ruby27" USERLAND="GNU" VIDEO_CARDS="amdgpu radeonsi intel i965 radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

The perceptive among you might notice the Fedora kernel which is because I installed Fedora onto a new btrfs subvolume just to have a graphical environment, so that emerge --info is output from that gentoo subvolume in a chroot. Kinda wanted to avoid nuking and paving this Gentoo install, so curious if anyone may have any ideas of something I haven't tried.
Back to top
View user's profile Send private message
turtles
Veteran
Veteran


Joined: 31 Dec 2004
Posts: 1650

PostPosted: Tue Dec 21, 2021 5:25 pm    Post subject: Reply with quote

Sounds frustrating, something is obviously broken
you have tried everything I would.
I just noticed this news item today in eselect news:

2021-09-29-possible-failure-to-preserve-libraries
Perhaps check that out?
Code:
emerge --ask --verbose --oneshot app-portage/recover-broken-vdb

and
Code:
recover-broken-vdb-find-broken.sh | tee broken_vdb_packages

_________________
Donate to Gentoo
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21489

PostPosted: Tue Dec 21, 2021 6:20 pm    Post subject: Reply with quote

That should be unrelated. The broken VDB allows Portage to remove files it should not remove, because the data to tell it not to remove them is missing; a broken VDB does not cause an existing file to misbehave.
Back to top
View user's profile Send private message
turtles
Veteran
Veteran


Joined: 31 Dec 2004
Posts: 1650

PostPosted: Tue Dec 21, 2021 9:10 pm    Post subject: Re: I broke QtQml/KDE during a routine update. Any ideas? Reply with quote

Hu wrote:
That should be unrelated. The broken VDB allows Portage to remove files it should not remove, because the data to tell it not to remove them is missing; a broken VDB does not cause an existing file to misbehave.

Ahh ok I see.

superjaded wrote:
...After the update, it seems like anything that uses certain functions from libQt5Qml (from dev-qt/qtdeclarative) will segfault. This includes things like sddm, plasmashell and systemsettings5.
../..
What I've tried to do in order to fix (most of which was just throwing stuff at the wall in hopes of something sticking):

  • I've tried recompiling all of dev-qt/*, kde-frameworks/*, kde-plasma/* and kde-apps/*
  • Doing a search for the error referencing QQmlThread, I found a forum thread for nixos related to an earlier version of Qt that had a bug related to qmlcache invalidation. This was specifically related to SDDM, and the suggested workaround was to delete /var/lib/sddm/.cache/sddm-greeter/qmlcache/*. Deleting that didn't do anything, so I tried deleting /var/lib/sddm entirely. That didn't do anything either. this is the nixos bug report in case it helps.
  • I've also tried starting Plasma via startx after moving my home directory (ie; mv chris chris.old && mkdir chris, etc). I still get the same issue with plasmashell crashing which I go into more detail below.
  • I've also had some stability issues with kernel 5.15.x, so I installed sys-kernel/gentoo-kernel-bin-5.10.84. I wasn't expecting it to help,and it didn't.
  • I did try running revdep-rebuild and it reports my system is consistent. That may not be too surprising thourgh since the segfaults I'm getting aren't indicating missing libraries/dependencies.

The packages that were updated prior to this happening:

What does
Code:
ldd /usr/lib64/libQt5Qml.so.5.15.2

or whatever its path is give you?

Seems like you should get all your dev-qt/* stuff on the same version i.e dev-qt/qtdeclarative-5.15.2-r12
Short of that you could emerge -1 dev-qt/qtdeclarative
_________________
Donate to Gentoo
Back to top
View user's profile Send private message
superjaded
l33t
l33t


Joined: 05 Jul 2002
Posts: 802

PostPosted: Wed Dec 22, 2021 3:11 am    Post subject: Re: I broke QtQml/KDE during a routine update. Any ideas? Reply with quote

turtles wrote:

What does
Code:
ldd /usr/lib64/libQt5Qml.so.5.15.2

or whatever its path is give you?


Code:
haibane ~ # ldd /usr/lib64/libQt5Qml.so.5
        linux-vdso.so.1 (0x00007ffe3d720000)
        libQt5Network.so.5 => /usr/lib64/libQt5Network.so.5 (0x00007fb2d9a51000)
        libQt5Core.so.5 => /usr/lib64/libQt5Core.so.5 (0x00007fb2d9603000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fb2d95e3000)
        libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/libstdc++.so.6 (0x00007fb2d93ce000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fb2d929c000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fb2d90e3000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fb2d90cb000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fb2d90c5000)
        libssl.so.1.1 => /usr/lib64/libssl.so.1.1 (0x00007fb2d9042000)
        libcrypto.so.1.1 => /usr/lib64/libcrypto.so.1.1 (0x00007fb2d8dc3000)
        libdouble-conversion.so.3 => /usr/lib64/libdouble-conversion.so.3 (0x00007fb2d8db6000)
        libicui18n.so.69 => /usr/lib64/libicui18n.so.69 (0x00007fb2d8b1f000)
        libicuuc.so.69 => /usr/lib64/libicuuc.so.69 (0x00007fb2d8975000)
        libpcre2-16.so.0 => /usr/lib64/libpcre2-16.so.0 (0x00007fb2d8909000)
        libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fb2d8800000)
        libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/libgcc_s.so.1 (0x00007fb2d87e6000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fb2d9f11000)
        libicudata.so.69 => /usr/lib64/libicudata.so.69 (0x00007fb2d6c8b000)
        libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fb2d6c2d000)


I had actually looked into the output of ldd for libQt5Qml and the applications that were segfaulting, but everything looks good from that perspective. At the very least, no libraries were reported as "not found" at least among what I looked at. which includes systemsettings5, dolphin, plasmashell and libQt5Qml.so.5 of course.

Quote:
Seems like you should get all your dev-qt/* stuff on the same version i.e dev-qt/qtdeclarative-5.15.2-r12


At least of the dev-qt/* packages that follow the standard Qt version scheme, they all are at the same version, minus the Gentoo specific revision of course. And for whatever it's worth, I don't currently have anything custom for keywords related to dev-qt.

Quote:
Short of that you could emerge -1 dev-qt/qtdeclarative


Yep. I mentioned earlier that I did try rebuilding dev-qt/* and kde-*/*, and it looks like I rebuilt dev-qt/qtdeclarative three times since the breakage happened.

I appreciate the input, and I suppose it's somewhat academic issue at this point. I went ahead and did a fresh Gentoo install on a new btrfs subvolume, though I did keep keep the old volume around on the offchance someone had an idea that I hadn't thought of previously (which is where that copy & paste is from above).
Back to top
View user's profile Send private message
sam_
Developer
Developer


Joined: 14 Aug 2020
Posts: 1670

PostPosted: Wed Dec 22, 2021 4:08 am    Post subject: Reply with quote

The only thing I'd add is that I'm not sure Qt upstream test with -Os and it's the kind of thing which could be caused by that (sadly). A more detailed backtrace (with debug symbols) could've been useful but it is what it is now.

I think the rest of what you tried is pretty reasonable (revdep-rebuild was still a sensible idea for e.g. ABI breaks though!). Qt components seem particularly prone to break when compiler bits change (known to be dodgy with LTO on occasion too).
Back to top
View user's profile Send private message
StaffanP
n00b
n00b


Joined: 01 Oct 2002
Posts: 35
Location: Sweden

PostPosted: Tue Jun 14, 2022 2:51 pm    Post subject: Reply with quote

I have the exact same problem as the OP and I tried pretty much the same things as well.

KDE won't start and I get the segfault error 4 in libQt5Qml.so.5.15.4


I also have -Os, perhaps I should change it to -O3 and recompile Qt5?
Back to top
View user's profile Send private message
asturm
Developer
Developer


Joined: 05 Apr 2007
Posts: 8933

PostPosted: Tue Jun 14, 2022 2:58 pm    Post subject: Reply with quote

Don't use -Os for dev-qt/declarative.
Back to top
View user's profile Send private message
StaffanP
n00b
n00b


Joined: 01 Oct 2002
Posts: 35
Location: Sweden

PostPosted: Tue Jun 14, 2022 4:22 pm    Post subject: Reply with quote

asturm wrote:
Don't use -Os for dev-qt/declarative.


Yep, that solved it! I changed my cflags to -O3 and recompiled qtdeclarative and now it works just fine!

That's unfortunate but it's not a big deal. I guess I'll just have to go with -O3 then.

Thanks for your help!
Back to top
View user's profile Send private message
mrbassie
l33t
l33t


Joined: 31 May 2013
Posts: 771
Location: over here

PostPosted: Wed Jun 15, 2022 4:37 pm    Post subject: Reply with quote

Worth mentioning in the wiki. :?:
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum