SUMMARY I recently updated from 5 to 6.5.0. Dolphin freezes for several minutes when started. Other apps also get stuck in the file open/save dialogs. The freeze happens in KSambaShare::instance() ppoll(). There are no samba mounts in use. There are no samba daemons running so it is not network related (like "freeze-on-NFS"). STEPS TO REPRODUCE 1. Start Dolphin... 2. ...Dolphin hangs 1. Start Kolourpaint 2. Press "Open..." button 3. Kolourpaint hangs OBSERVED RESULT Application freezes for a couple (2-3?) minutes. EXPECTED RESULT Application does not freeze and files are displayed immediately. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Gentoo on amd64 KDE Plasma Version: 6.5.0 KDE Frameworks Version: 6.5.0 Qt Version: 6.7.2-r2 Samba: 4.18.9 ADDITIONAL INFORMATION gdb trace from Dolphin getting stuck at startup: 0x00007ffff54496c6 in ppoll () from /lib64/libc.so.6 (gdb) bt 100 #0 0x00007ffff54496c6 in ppoll () at /lib64/libc.so.6 #1 0x00007ffff598f34d in qt_safe_poll(pollfd*, unsigned long, QDeadlineTimer) () at /usr/lib64/libQt6Core.so.6 #2 0x00007ffff58df8e4 in ??? () at /usr/lib64/libQt6Core.so.6 #3 0x00007ffff58e8ae7 in QProcess::waitForFinished(int) () at /usr/lib64/libQt6Core.so.6 #4 0x00007ffff78194d8 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #5 0x00007ffff7819857 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #6 0x00007ffff781ac90 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #7 0x00007ffff781c8ac in ??? () at /usr/lib64/libKF6KIOCore.so.6 #8 0x00007ffff781c98c in ??? () at /usr/lib64/libKF6KIOCore.so.6 #9 0x00007ffff781cacf in KSambaShare::instance() () at /usr/lib64/libKF6KIOCore.so.6 #10 0x00007ffff7829ccd in KFileItem::overlays() const () at /usr/lib64/libKF6KIOCore.so.6 #11 0x00007ffff7e927db in KFileItemModelRolesUpdater::rolesData(KFileItem const&, int) () at /usr/lib64/libdolphinprivate.so.6 #12 0x00007ffff7e93141 in KFileItemModelRolesUpdater::applyResolvedRoles(int, KFileItemModelRolesUpdater::ResolveHint) () at /usr/lib64/libdolphinprivate.so.6 #13 0x00007ffff7e940b4 in KFileItemModelRolesUpdater::slotPreviewFailed(KFileItem const&) () at /usr/lib64/libdolphinprivate.so.6 #14 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #15 0x00007ffff7a87679 in KIO::PreviewJob::failed(KFileItem const&) () at /usr/lib64/libKF6KIOGui.so.6 #16 0x00007ffff7a88603 in ??? () at /usr/lib64/libKF6KIOGui.so.6 #17 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #18 0x00007ffff70338c7 in KJob::result(KJob*, KJob::QPrivateSignal) () at /usr/lib64/libKF6CoreAddons.so.6 #19 0x00007ffff703452b in ??? () at /usr/lib64/libKF6CoreAddons.so.6 #20 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #21 0x00007ffff78edb43 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #22 0x00007ffff78eb1ef in ??? () at /usr/lib64/libKF6KIOCore.so.6 #23 0x00007ffff78e80f7 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #24 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #25 0x00007ffff5a32b7b in QObject::event(QEvent*) () at /usr/lib64/libQt6Core.so.6 #26 0x00007ffff6b98835 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt6Widgets.so.6 #27 0x00007ffff5aa7c68 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt6Core.so.6 #28 0x00007ffff5accba7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt6Core.so.6 #29 0x00007ffff5884da7 in ??? () at /usr/lib64/libQt6Core.so.6 #30 0x00007ffff26f0c84 in ??? () at /usr/lib64/libglib-2.0.so.0 #31 0x00007ffff26f3d27 in ??? () at /usr/lib64/libglib-2.0.so.0 #32 0x00007ffff26f431c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0 #33 0x00007ffff58833d0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #34 0x00007ffff5ad17ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #35 0x00007ffff5ad196a in QCoreApplication::exec() () at /usr/lib64/libQt6Core.so.6 #36 0x00005555555ae474 in ??? () #37 0x00007ffff5375f50 in ??? () at /lib64/libc.so.6 #38 0x00007ffff5376009 in __libc_start_main () at /lib64/libc.so.6 #39 0x00005555555aeb55 in ??? () gdb trace from Kolourpaint after open file button is pressed: Thread 1 "kolourpaint" received signal SIGINT, Interrupt. 0x00007ffff5ba76c6 in ppoll () from /lib64/libc.so.6 (gdb) bt 100 #0 0x00007ffff5ba76c6 in ppoll () at /lib64/libc.so.6 #1 0x00007ffff61cb34d in qt_safe_poll(pollfd*, unsigned long, QDeadlineTimer) () at /usr/lib64/libQt6Core.so.6 #2 0x00007ffff611b8e4 in ??? () at /usr/lib64/libQt6Core.so.6 #3 0x00007ffff6124ae7 in QProcess::waitForFinished(int) () at /usr/lib64/libQt6Core.so.6 #4 0x00007ffff79b94d8 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #5 0x00007ffff79b9857 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #6 0x00007ffff79bac90 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #7 0x00007ffff79bc8ac in ??? () at /usr/lib64/libKF6KIOCore.so.6 #8 0x00007ffff79bc98c in ??? () at /usr/lib64/libKF6KIOCore.so.6 #9 0x00007ffff79bcacf in KSambaShare::instance() () at /usr/lib64/libKF6KIOCore.so.6 #10 0x00007ffff79c9ccd in KFileItem::overlays() const () at /usr/lib64/libKF6KIOCore.so.6 #11 0x00007ffff566daa2 in KDirModel::data(QModelIndex const&, int) const () at /usr/lib64/libKF6KIOWidgets.so.6 #12 0x00007ffff612c616 in QSortFilterProxyModel::data(QModelIndex const&, int) const () at /usr/lib64/libQt6Core.so.6 #13 0x00007ffff5686f02 in ??? () at /usr/lib64/libKF6KIOWidgets.so.6 #14 0x00007ffff5687686 in ??? () at /usr/lib64/libKF6KIOWidgets.so.6 #15 0x00007ffff5687d22 in KFileItemDelegate::sizeHint(QStyleOptionViewItem const&, QModelIndex const&) const () at /usr/lib64/libKF6KIOWidgets.so.6 #16 0x00007ffff7056100 in ??? () at /usr/lib64/libQt6Widgets.so.6 #17 0x00007ffff6ff59f0 in ??? () at /usr/lib64/libQt6Widgets.so.6 #18 0x00007ffff6ff5bdd in QListView::doItemsLayout() () at /usr/lib64/libQt6Widgets.so.6 #19 0x00007ffff6ff5dd3 in QListView::rectForIndex(QModelIndex const&) const () at /usr/lib64/libQt6Widgets.so.6 #20 0x00007ffff6ff62d2 in QListView::visualRect(QModelIndex const&) const () at /usr/lib64/libQt6Widgets.so.6 #21 0x00007ffff7e1bd9b in ??? () at /usr/lib64/libKF6KIOFileWidgets.so.6 #22 0x00007ffff7e1d999 in ??? () at /usr/lib64/libKF6KIOFileWidgets.so.6 #23 0x00007ffff62cc1e7 in ??? () at /usr/lib64/libQt6Core.so.6 #24 0x00007ffff7a554c9 in KCoreDirLister::newItems(KFileItemList const&) () at /usr/lib64/libKF6KIOCore.so.6 #25 0x00007ffff7a5a765 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #26 0x00007ffff7a6ea10 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #27 0x00007ffff62cc1e7 in ??? () at /usr/lib64/libQt6Core.so.6 #28 0x00007ffff7a15668 in KIO::ListJob::entries(KIO::Job*, QList<KIO::UDSEntry> const&) () at /usr/lib64/libKF6KIOCore.so.6 #29 0x00007ffff62cc1e7 in ??? () at /usr/lib64/libQt6Core.so.6 #30 0x00007ffff7a8dd1b in ??? () at /usr/lib64/libKF6KIOCore.so.6 #31 0x00007ffff7a8b1ef in ??? () at /usr/lib64/libKF6KIOCore.so.6 #32 0x00007ffff7a880f7 in ??? () at /usr/lib64/libKF6KIOCore.so.6 #33 0x00007ffff62cc1e7 in ??? () at /usr/lib64/libQt6Core.so.6 #34 0x00007ffff626eb7b in QObject::event(QEvent*) () at /usr/lib64/libQt6Core.so.6 #35 0x00007ffff73bb835 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt6Widgets.so.6 #36 0x00007ffff62e3c68 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt6Core.so.6 #37 0x00007ffff6308ba7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt6Core.so.6 #38 0x00007ffff60c0da7 in ??? () at /usr/lib64/libQt6Core.so.6 #39 0x00007ffff4de4c84 in ??? () at /usr/lib64/libglib-2.0.so.0 #40 0x00007ffff4de7d27 in ??? () at /usr/lib64/libglib-2.0.so.0 #41 0x00007ffff4de831c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0 #42 0x00007ffff60bf3d0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #43 0x00007ffff630d7ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #44 0x00007ffff71986c7 in QDialog::exec() () at /usr/lib64/libQt6Widgets.so.6 #45 0x00007ffff71985ce in QDialog::exec() () at /usr/lib64/libQt6Widgets.so.6 #46 0x00005555555f0f0f in ??? () #47 0x00005555555f314f in ??? () #48 0x00007ffff62cc4c3 in ??? () at /usr/lib64/libQt6Core.so.6 #49 0x00007ffff6b54f56 in QAction::triggered(bool) () at /usr/lib64/libQt6Gui.so.6 #50 0x00007ffff6b579a1 in QAction::activate(QAction::ActionEvent) () at /usr/lib64/libQt6Gui.so.6 #51 0x00007ffff72d3238 in ??? () at /usr/lib64/libQt6Widgets.so.6 #52 0x00007ffff72d345b in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib64/libQt6Widgets.so.6 #53 0x00007ffff710b2fb in QToolButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib64/libQt6Widgets.so.6 #54 0x00007ffff73cb017 in QWidget::event(QEvent*) () at /usr/lib64/libQt6Widgets.so.6 #55 0x00007ffff73bb835 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt6Widgets.so.6 #56 0x00007ffff73bc69c in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt6Widgets.so.6 #57 0x00007ffff62e3c68 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt6Core.so.6 #58 0x00007ffff73c2ff3 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () at /usr/lib64/libQt6Widgets.so.6 #59 0x00007ffff73c8c98 in ??? () at /usr/lib64/libQt6Widgets.so.6 #60 0x00007ffff73cc800 in ??? () at /usr/lib64/libQt6Widgets.so.6 #61 0x00007ffff73bb835 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt6Widgets.so.6 #62 0x00007ffff62e3c68 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt6Core.so.6 #63 0x00007ffff68458cf in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib64/libQt6Gui.so.6 #64 0x00007ffff689c89c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Gui.so.6 #65 0x00007fffeffb134e in ??? () at /usr/lib64/qt6/plugins/platforms/../../../libQt6XcbQpa.so.6 #66 0x00007ffff4de4c84 in ??? () at /usr/lib64/libglib-2.0.so.0 #67 0x00007ffff4de7d27 in ??? () at /usr/lib64/libglib-2.0.so.0 #68 0x00007ffff4de831c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0 #69 0x00007ffff60bf3d0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #70 0x00007ffff630d7ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #71 0x00007ffff630d96a in QCoreApplication::exec() () at /usr/lib64/libQt6Core.so.6 #72 0x00005555555a49d5 in ??? () #73 0x00007ffff5ad3f50 in ??? () at /lib64/libc.so.6 #74 0x00007ffff5ad4009 in __libc_start_main () at /lib64/libc.so.6 #75 0x00005555555a4cb5 in ??? () Installed versions: kde-frameworks/kio-5.116.0-r2:5/5.116 kde-frameworks/kio-6.5.0:6/6.5 kde-apps/dolphin-24.05.2-r1:6 kde-apps/kolourpaint-24.05.2:6 net-fs/samba-4.18.9:0 dev-qt/qtbase-6.7.2-r5:6/6.7.2
Either the testparm or net tools are probably broken. You will need to provide a trace with debug symbols to figure out which.
Could you advise which packages should I instrument? I rebuilt qtbase, kio, kio-extras, samba, net-tools. All with the same gcc toolchain. The problem is still there. Running testparm returns: Load smb config files from /etc/samba/smb.conf Loaded services file OK. Weak crypto is allowed by GnuTLS (e.g. NTLM as a compatibility fallback) Server role: ROLE_STANDALONE
When running without gdb I can also observe a testparm process that is a zombie. I rebuilt kio with debug symbols. This is what I get in the stuck state: (gdb) bt full #0 0x00007ffff54496c6 in ppoll () at /lib64/libc.so.6 #1 0x00007ffff598f34d in qt_safe_poll(pollfd*, unsigned long, QDeadlineTimer) () at /usr/lib64/libQt6Core.so.6 #2 0x00007ffff58df8e4 in ??? () at /usr/lib64/libQt6Core.so.6 #3 0x00007ffff58e8ae7 in QProcess::waitForFinished(int) () at /usr/lib64/libQt6Core.so.6 #4 0x00007ffff78194d8 in KSambaSharePrivate::runProcess (progName=..., args=..., stdOut=..., stdErr=...) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:88 process = <incomplete type> exec = {d = {d = 0x555555e959a0, ptr = 0x555555e959b0 u"/usr/bin/testparm", size = 17}, static _empty = 0 u'\000'} #5 0x00007ffff7819857 in KSambaSharePrivate::testparmParamValue (parameterName=...) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:111 stdErr = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 '\000'} stdOut = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 '\000'} args = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x555555e4e600, ptr = 0x555555e4e610, size = 4}} #6 0x00007ffff781ac90 in KSambaSharePrivate::setUserSharePath (this=this@entry=0x555555e7b7f0) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:68 rawString = {d = {d = 0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>, ptr = 0x7fffffffc260 u"", size = 140737488339536}, static _empty = 0 u'\000'} fileInfo = {d_ptr = {d = 0x0}} #7 0x00007ffff781c8ac in KSambaSharePrivate::KSambaSharePrivate (this=0x555555e7b7f0, parent=<optimized out>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:42 #8 0x00007ffff781c98c in KSambaShare::KSambaShare (this=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:455 d = <optimized out> #9 0x00007ffff781cacf in KSambaShareSingleton::KSambaShareSingleton (this=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:523 #10 (anonymous namespace)::Q_QGS__instance::innerFunction (pointer=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:529 #11 QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance>::Holder (this=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/include/qt6/QtCore/qglobalstatic.h:37 --Type <RET> for more, q to quit, c to continue without paging--c #12 QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance () at /usr/include/qt6/QtCore/qglobalstatic.h:100 holder = {static ConstructionIsNoexcept = false, static guard = {_q_value = std::atomic<signed char> = { 0 '\000' }}, storage = {instance = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff5d588e0 <QObject::staticMetaObject>}, stringdata = 0x7ffff7913940 <(anonymous namespace)::qt_meta_stringdata_CLASSKSambaShareENDCLASS>, data = 0x7ffff79138e0 <qt_meta_data_CLASSKSambaShareENDCLASS>, static_metacall = 0x7ffff7817d00 <KSambaShare::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7ffff7953860 <qt_incomplete_metaTypeArray<(anonymous namespace)::qt_meta_stringdata_CLASSKSambaShareENDCLASS_t, QtPrivate::TypeAndForceComplete<KSambaShare, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> > >>, extradata = 0x0}}, d_ptr = 0x0}}} #13 QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::operator() (this=<optimized out>) at /usr/include/qt6/QtCore/qglobalstatic.h:82 #14 KSambaShare::instance () at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:533 #15 0x00007ffff7829ccd in KFileItem::overlays (this=<optimized out>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/kfileitem.cpp:1261 path = {d = {d = 0x555555cd5c70, ptr = 0x555555cd5c80 u"/home/hexx/app", size = 14}, static _empty = 0 u'\000'} url = {d = 0x555555c72170} isLocalUrl = true names = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x0, ptr = 0x0, size = 0}} #16 0x00007ffff7e927db in KFileItemModelRolesUpdater::rolesData(KFileItem const&, int) () at /usr/lib64/libdolphinprivate.so.6 #17 0x00007ffff7e93141 in KFileItemModelRolesUpdater::applyResolvedRoles(int, KFileItemModelRolesUpdater::ResolveHint) () at /usr/lib64/libdolphinprivate.so.6 #18 0x00007ffff7e940b4 in KFileItemModelRolesUpdater::slotPreviewFailed(KFileItem const&) () at /usr/lib64/libdolphinprivate.so.6 #19 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #20 0x00007ffff7a87679 in KIO::PreviewJob::failed (this=this@entry=0x555555e6cbb0, _t1=...) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0_build/src/gui/KF6KIOGui_autogen/include/moc_previewjob.cpp:203 _a = {0x0, 0x555555cd9960} #21 0x00007ffff7a88603 in KIO::PreviewJobPrivate::determineNextFile (this=0x555555cd9890) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/gui/previewjob.cpp:460 q = 0x555555e6cbb0 #22 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #23 0x00007ffff70338c7 in KJob::result(KJob*, KJob::QPrivateSignal) () at /usr/lib64/libKF6CoreAddons.so.6 #24 0x00007ffff703452b in ??? () at /usr/lib64/libKF6CoreAddons.so.6 #25 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #26 0x00007ffff78edb43 in KIO::WorkerInterface::privilegeOperationRequested (this=<optimized out>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0_build/src/core/KF6KIOCore_autogen/include/moc_workerinterface_p.cpp:565 #27 KIO::WorkerInterface::dispatch (this=0x555555e2ab20, _cmd=102, rawdata=<optimized out>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/workerinterface.cpp:278 stream = {<QIODeviceBase> = {<No data fields>}, d = {d = 0x0}, dev = 0x555555e58200, owndev = true, noswap = false, byteorder = QDataStream::BigEndian, ver = 22, q_status = QDataStream::Ok, static NullCode = 4294967295, static ExtendedSize = 4294967294} str1 = {d = {d = 0x555555ea7970, ptr = 0x555555ea7980 u"Cannot create thumbnail for directory", size = 37}, static _empty = 0 u'\000'} i = 104 b = 0 '\000' ul = 1439271856 #28 0x00007ffff78eb1ef in KIO::WorkerInterface::dispatch (this=0x555555e2ab20) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/workerinterface.cpp:60 cmd = 102 data = {d = {d = 0x555555bc3d90, ptr = 0x555555bc3da0 "", size = 82}, static _empty = 0 '\000'} ret = <optimized out> #29 0x00007ffff78e80f7 in KIO::Worker::gotInput (this=0x555555e2ab20) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/worker.cpp:263 #30 0x00007ffff5a901e7 in ??? () at /usr/lib64/libQt6Core.so.6 #31 0x00007ffff5a32b7b in QObject::event(QEvent*) () at /usr/lib64/libQt6Core.so.6 #32 0x00007ffff6b98835 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt6Widgets.so.6 #33 0x00007ffff5aa7c68 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt6Core.so.6 #34 0x00007ffff5accba7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt6Core.so.6 #35 0x00007ffff5884da7 in ??? () at /usr/lib64/libQt6Core.so.6 #36 0x00007ffff26f0c84 in ??? () at /usr/lib64/libglib-2.0.so.0 #37 0x00007ffff26f3d27 in ??? () at /usr/lib64/libglib-2.0.so.0 #38 0x00007ffff26f431c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0 #39 0x00007ffff58833d0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #40 0x00007ffff5ad17ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt6Core.so.6 #41 0x00007ffff5ad196a in QCoreApplication::exec() () at /usr/lib64/libQt6Core.so.6 #42 0x00005555555ae474 in ??? () #43 0x00007ffff5375f50 in ??? () at /lib64/libc.so.6 #44 0x00007ffff5376009 in __libc_start_main () at /lib64/libc.so.6 #45 0x00005555555aeb55 in ??? ()
What happens when you run `testparm -d0 -s --parameter-name "usershare path"`
`testparm -d0 -s --parameter-name "usershare path"` Load smb config files from /etc/samba/smb.conf Loaded services file OK. Weak crypto is allowed by GnuTLS (e.g. NTLM as a compatibility fallback) bash: /var/lib/samba/usershares: No such file or directory If I mkdir /var/lib/samba/usershares then I get: bash: /var/lib/samba/usershares: Is a directory In both cases testparm executes and exits immediately. Dolphin gets stuch no matter if /var/lib/samba/usershares exists or not. Can this possibly be a glibc/kernel issue? I am running glibc-2.39-r6 but quite old kernel 4.15.0-rc7. I also rebuilt qtbase with debug symbols: #0 0x00007ffff54496c6 in ppoll () at /lib64/libc.so.6 #1 0x00007ffff598f34d in ppoll (__ss=<optimized out>, __timeout=<optimized out>, __nfds=<optimized out>, __fds=<optimized out>) at /usr/src/debug/dev-qt/qtbase-6.7.2-r5/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qcore_unix.cpp:100 #2 qt_ppoll (timeout_ts=0x7fffffffbd80, nfds=4, fds=0x7fffffffbe00) at /usr/src/debug/dev-qt/qtbase-6.7.2-r5/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qcore_unix.cpp:103 #3 qt_ppoll (timeout_ts=0x7fffffffbd80, nfds=4, fds=0x7fffffffbe00) at /usr/src/debug/dev-qt/qtbase-6.7.2-r5/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qcore_unix.cpp:100 #4 qt_safe_poll (fds=fds@entry=0x7fffffffbe00, nfds=nfds@entry=4, deadline=...) at /usr/src/debug/dev-qt/qtbase-6.7.2-r5/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qcore_unix.cpp:135 ts = {tv_sec = 29, tv_nsec = 903306472} ret = <optimized out> remaining = std::chrono::duration = { <optimized out>ns } #5 0x00007ffff58df8e4 in (anonymous namespace)::QProcessPoller::poll (deadline=..., this=0x7fffffffbe00) at /usr/src/debug/dev-qt/qtbase-6.7.2-r5/qtbase-everywhere-src-6.7.2/src/corelib/io/qprocess_unix.cpp:224 #6 QProcessPrivate::waitForFinished (this=this@entry=0x555555bda7d0, deadline=...) at /usr/src/debug/dev-qt/qtbase-6.7.2-r5/qtbase-everywhere-src-6.7.2/src/corelib/io/qprocess_unix.cpp:1234 poller = {pfds = {{fd = -1, events = 1, revents = 0}, {fd = -1, events = 1, revents = 0}, {fd = -1, events = 1, revents = 0}, {fd = 53, events = 1, revents = 0}}} ret = <optimized out> #7 0x00007ffff58e8ae7 in QProcess::waitForFinished (this=this@entry=0x7fffffffbed0, msecs=msecs@entry=30000) at /usr/src/debug/dev-qt/qtbase-6.7.2-r5/qtbase-everywhere-src-6.7.2/src/corelib/io/qprocess.cpp:2084 d = 0x555555bda7d0 deadline = {static Forever = QDeadlineTimer::ForeverConstant::Forever, t1 = 2273016157442, t2 = 0, type = 1} #8 0x00007ffff78194d8 in KSambaSharePrivate::runProcess (progName=..., args=..., stdOut=..., stdErr=...) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:88 process = {<QIODevice> = {<QObject> = {_vptr.QObject = 0x7ffff5d5d1a8 <vtable for QProcess+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff5c0a820 <(anonymous namespace)::qt_meta_stringdata_CLASSQObjectENDCLASS>, data = 0x7ffff5c0a700 <qt_meta_data_CLASSQObjectENDCLASS>, static_metacall = 0x7ffff5a6f860 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7ffff5d60320 <qt_incomplete_metaTypeArray<(anonymous namespace)::qt_meta_stringdata_CLASSQObjectENDCLASS_t, QtPrivate::TypeAndForceComplete<QString, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QObject, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QObject*, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::i--Type <RET> for more, q to quit, c to continue without paging--c ntegral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QString const&, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QObject*, std::integral_constant<bool, false> > >>, extradata = 0x0}}, d_ptr = {d = 0x555555bda7d0}}, <QIODeviceBase> = {<No data fields>}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff5d588e0 <QObject::staticMetaObject>}, stringdata = 0x7ffff5c10f60 <(anonymous namespace)::qt_meta_stringdata_CLASSQIODeviceENDCLASS>, data = 0x7ffff5c10e40 <qt_meta_data_CLASSQIODeviceENDCLASS>, static_metacall = 0x7ffff5a9dad0 <QIODevice::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7ffff5d62960 <qt_incomplete_metaTypeArray<(anonymous namespace)::qt_meta_stringdata_CLASSQIODeviceENDCLASS_t, QtPrivate::TypeAndForceComplete<QIODevice, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<int, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<long long, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<int, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<long long, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> > >>, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff5d62ca0 <QIODevice::staticMetaObject>}, stringdata = 0x7ffff5b7fc60 <(anonymous namespace)::qt_meta_stringdata_CLASSQProcessENDCLASS>, data = 0x7ffff5b7f940 <qt_meta_data_CLASSQProcessENDCLASS>, static_metacall = 0x7ffff58e8bb0 <QProcess::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7ffff5d5bd80 <qt_incomplete_metaTypeArray<(anonymous namespace)::qt_meta_stringdata_CLASSQProcessENDCLASS_t, QtPrivate::TypeAndForceComplete<QProcess::ProcessError, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QProcess::ProcessState, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QProcess::ProcessChannel, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QProcess::ProcessChannelMode, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QProcess::InputChannelMode, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QProcess::ExitStatus, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QProcess, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<int, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QProcess::ExitStatus, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<int, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QProcess::ProcessError, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QProcess::ProcessState, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<bool, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<bool, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<bool, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<bool, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> > >>, extradata = 0x0}}} exec = {d = {d = 0x555555be24d0, ptr = 0x555555be24e0 u"/usr/bin/testparm", size = 17}, static _empty = 0 u'\000'} #9 0x00007ffff7819857 in KSambaSharePrivate::testparmParamValue (parameterName=...) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:111 stdErr = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 '\000'} stdOut = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 '\000'} args = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x555555caccc0, ptr = 0x555555caccd0, size = 4}} #10 0x00007ffff781ac90 in KSambaSharePrivate::setUserSharePath (this=this@entry=0x5555564f4050) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:68 rawString = {d = {d = 0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>, ptr = 0x7fffffffc260 u"", size = 140737488339536}, static _empty = 0 u'\000'} fileInfo = {d_ptr = {d = 0x0}} #11 0x00007ffff781c8ac in KSambaSharePrivate::KSambaSharePrivate (this=0x5555564f4050, parent=<optimized out>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:42 #12 0x00007ffff781c98c in KSambaShare::KSambaShare (this=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:455 d = <optimized out> #13 0x00007ffff781cacf in KSambaShareSingleton::KSambaShareSingleton (this=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:523 #14 (anonymous namespace)::Q_QGS__instance::innerFunction (pointer=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/src/debug/kde-frameworks/kio-6.5.0/kio-6.5.0/src/core/ksambashare.cpp:529 #15 QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance>::Holder (this=0x7ffff795f0c0 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance()::holder>) at /usr/include/qt6/QtCore/qglobalstatic.h:37 #16 QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__instance> >::instance () at /usr/include/qt6/QtCore/qglobalstatic.h:100 holder = {static ConstructionIsNoexcept = false, static guard = {_q_value = std::atomic<signed char> = { 0 '\000' }}, storage = {instance = {<QObject> = {_vptr.QObject = 0x7ffff7954828 <vtable for KSambaShare+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff5c0a820 <(anonymous namespace)::qt_meta_stringdata_CLASSQObjectENDCLASS>, data = 0x7ffff5c0a700 <qt_meta_data_CLASSQObjectENDCLASS>, static_metacall = 0x7ffff5a6f860 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7ffff5d60320 <qt_incomplete_metaTypeArray<(anonymous namespace)::qt_meta_stringdata_CLASSQObjectENDCLASS_t, QtPrivate::TypeAndForceComplete<QString, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<QObject, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QObject*, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QString const&, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> >, QtPrivate::TypeAndForceComplete<QObject*, std::integral_constant<bool, false> > >>, extradata = 0x0}}, d_ptr = {d = 0x555555d690b0}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff5d588e0 <QObject::staticMetaObject>}, stringdata = 0x7ffff7913940 <(anonymous namespace)::qt_meta_stringdata_CLASSKSambaShareENDCLASS>, data = 0x7ffff79138e0 <qt_meta_data_CLASSKSambaShareENDCLASS>, static_metacall = 0x7ffff7817d00 <KSambaShare::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7ffff7953860 <qt_incomplete_metaTypeArray<(anonymous namespace)::qt_meta_stringdata_CLASSKSambaShareENDCLASS_t, QtPrivate::TypeAndForceComplete<KSambaShare, std::integral_constant<bool, true> >, QtPrivate::TypeAndForceComplete<void, std::integral_constant<bool, false> > >>, extradata = 0x0}}, d_ptr = 0x0}}}
Very strange. Can you build with a patch perhaps? I may need to add some debug logging to figure this out.
I can try a patch. Some more observations: 1. Renaming /usr/bin/testparm so that it is not found helps and Dolphin never gets stuck (but I'd rather have a working samba installation). 2. I built this minimal test piece based on KSambaSharePrivate::setUserSharePath() using the exact same toolchain & Qt6, and it runs fine (completes immediately): #include <QDebug> #include <QProcess> #include <QStandardPaths> int main(int argc, char *argv[]) { const QStringList args{ QStringLiteral("-d0"), QStringLiteral("-s"), QStringLiteral("--parameter-name"), QStringLiteral("usershare path"), }; QProcess process; process.setProcessChannelMode(QProcess::SeparateChannels); const QString exec = QStandardPaths::findExecutable("/usr/bin/testparm"); if (exec.isEmpty()) { qWarning() << "Could not find an executable named:" << "/usr/bin/testparm"; return -1; } process.start(exec, args); process.waitForFinished(); QByteArray stdOut = process.readAllStandardOutput(); QByteArray stdErr = process.readAllStandardError(); return process.exitCode(); }
Created attachment 174402 [details] debug patch Please patch your KIO and then run the following command to collect output and attach it here QT_LOGGING_RULES="kf.kio.core=true" dolphin
I built KIO with patch and this is the full output: $ QT_LOGGING_RULES="kf.kio.core=true" dolphin kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/timeline.so" supports protocols QList("timeline") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/tags.so" supports protocols QList("tags") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/baloosearch.so" supports protocols QList("baloosearch") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/activities.so" supports protocols QList("activities") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/recentlyused.so" supports protocols QList("recentlyused") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/filter.so" supports protocols QList("bzip", "bzip2", "gzip", "lzma", "xz", "zstd") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/info.so" supports protocols QList("info") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/archive.so" supports protocols QList("ar", "sevenz", "tar", "zip") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/fish.so" supports protocols QList("fish") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/thumbnail.so" supports protocols QList("thumbnail") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/sftp.so" supports protocols QList("sftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_filenamesearch.so" supports protocols QList("filenamesearch") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_fonts.so" supports protocols QList("fonts") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/applications.so" supports protocols QList("applications", "programs") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/desktop.so" supports protocols QList("desktop") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/ldap.so" supports protocols QList("ldap", "ldaps") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/akonadi.so" supports protocols QList("akonadi") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_bluetooth.so" supports protocols QList("bluetooth") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_obexftp.so" supports protocols QList("obexftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/bookmarks.so" supports protocols QList("bookmarks") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kdeconnect.so" supports protocols QList("kdeconnect") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_ftp.so" supports protocols QList("ftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_file.so" supports protocols QList("file") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_http.so" supports protocols QList("http", "https", "webdav", "webdavs") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_remote.so" supports protocols QList("remote") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_trash.so" supports protocols QList("trash") kf.kio.core: Refilling KProtocolInfoFactory cache in the hope to find "mtp" kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/timeline.so" supports protocols QList("timeline") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/tags.so" supports protocols QList("tags") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/baloosearch.so" supports protocols QList("baloosearch") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/activities.so" supports protocols QList("activities") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/recentlyused.so" supports protocols QList("recentlyused") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/filter.so" supports protocols QList("bzip", "bzip2", "gzip", "lzma", "xz", "zstd") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/info.so" supports protocols QList("info") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/archive.so" supports protocols QList("ar", "sevenz", "tar", "zip") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/fish.so" supports protocols QList("fish") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/thumbnail.so" supports protocols QList("thumbnail") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/sftp.so" supports protocols QList("sftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_filenamesearch.so" supports protocols QList("filenamesearch") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_fonts.so" supports protocols QList("fonts") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/applications.so" supports protocols QList("applications", "programs") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/desktop.so" supports protocols QList("desktop") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/ldap.so" supports protocols QList("ldap", "ldaps") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/akonadi.so" supports protocols QList("akonadi") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_bluetooth.so" supports protocols QList("bluetooth") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_obexftp.so" supports protocols QList("obexftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/bookmarks.so" supports protocols QList("bookmarks") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kdeconnect.so" supports protocols QList("kdeconnect") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_ftp.so" supports protocols QList("ftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_file.so" supports protocols QList("file") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_http.so" supports protocols QList("http", "https", "webdav", "webdavs") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_remote.so" supports protocols QList("remote") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_trash.so" supports protocols QList("trash") kf.kio.core: Refilling KProtocolInfoFactory cache in the hope to find "afc" kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/timeline.so" supports protocols QList("timeline") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/tags.so" supports protocols QList("tags") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/baloosearch.so" supports protocols QList("baloosearch") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/activities.so" supports protocols QList("activities") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/recentlyused.so" supports protocols QList("recentlyused") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/filter.so" supports protocols QList("bzip", "bzip2", "gzip", "lzma", "xz", "zstd") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/info.so" supports protocols QList("info") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/archive.so" supports protocols QList("ar", "sevenz", "tar", "zip") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/fish.so" supports protocols QList("fish") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/thumbnail.so" supports protocols QList("thumbnail") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/sftp.so" supports protocols QList("sftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_filenamesearch.so" supports protocols QList("filenamesearch") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_fonts.so" supports protocols QList("fonts") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/applications.so" supports protocols QList("applications", "programs") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/desktop.so" supports protocols QList("desktop") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/ldap.so" supports protocols QList("ldap", "ldaps") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/akonadi.so" supports protocols QList("akonadi") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_bluetooth.so" supports protocols QList("bluetooth") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_obexftp.so" supports protocols QList("obexftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/bookmarks.so" supports protocols QList("bookmarks") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kdeconnect.so" supports protocols QList("kdeconnect") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_ftp.so" supports protocols QList("ftp") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_file.so" supports protocols QList("file") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_http.so" supports protocols QList("http", "https", "webdav", "webdavs") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_remote.so" supports protocols QList("remote") kf.kio.core: "/usr/lib64/qt6/plugins/kf6/kio/kio_trash.so" supports protocols QList("trash") qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairRequested(QString) qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairDone(Solid::ErrorType, QVariant, QString) qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairRequested(QString) qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairDone(Solid::ErrorType, QVariant, QString) kf.kio.core: 0x7f46eaaaf6c0 Creating threaded worker qt.svg: Invalid path data; path truncated. kf.kio.core: 0x7f46e9ef86c0 Creating threaded worker kf.kio.core: 0x7f46e96f76c0 Creating threaded worker qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairRequested(QString) qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairDone(Solid::ErrorType, QVariant, QString) qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairRequested(QString) qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairDone(Solid::ErrorType, QVariant, QString) kf.kio.core: 0x7f46e8ef66c0 Creating threaded worker kf.kio.core: 0x7f46cffff6c0 Creating threaded worker qt.svg: Invalid path data; path truncated. Load smb config files from /etc/samba/smb.conf Loaded services file OK. Weak crypto is allowed by GnuTLS (e.g. NTLM as a compatibility fallback) /var/lib/samba/usershares ---------------------------------------------------------------- I also run it under strace and it seems like everything gets stuck in the ppoll syscall. I think my next step will be to try a more recent kernel. If ppoll or glibc was broken I should see way more problems by now. statx(AT_FDCWD, "/usr/local/sbin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, 0x7fffb0a8dfd0) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/usr/local/bin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, 0x7fffb0a8dfd0) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/usr/sbin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, 0x7fffb0a8dfd0) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/usr/bin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, {stx_mask=STATX_ALL, stx_attributes=0, stx_mode=S_IFREG|0755, stx_size=42944, ...}) = 0 access("/usr/bin/testparm", X_OK) = 0 getcwd("/tmp", 4096) = 5 statx(AT_FDCWD, "/usr/local/sbin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, 0x7fffb0a8e000) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/usr/local/bin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, 0x7fffb0a8e000) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/usr/sbin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, 0x7fffb0a8e000) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/usr/bin/testparm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_ALL, {stx_mask=STATX_ALL, stx_attributes=0, stx_mode=S_IFREG|0755, stx_size=42944, ...}) = 0 access("/usr/bin/testparm", X_OK) = 0 pipe2([26, 45], O_CLOEXEC) = 0 pipe2([46, 47], O_CLOEXEC) = 0 write(4, "\1\0\0\0\0\0\0\0", 8) = 8 rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0 pipe2([48, 49], O_CLOEXEC) = 0 eventfd2(0, EFD_CLOEXEC) = 50 clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f66ce32ac10) = 26354 write(50, "*\0\0\0\0\0\0\0", 8) = 8 close(50) = 0 close(47) = 0 close(26) = 0 fcntl(45, F_GETFL) = 0x1 (flags O_WRONLY) fcntl(45, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 ppoll([{fd=46, events=POLLIN}], 1, {tv_sec=29, tv_nsec=999999552}, NULL, 8) = 1 ([{fd=46, revents=POLLHUP}], left {tv_sec=29, tv_nsec=998886341}) read(46, "", 512) = 0 write(4, "\1\0\0\0\0\0\0\0", 8) = 8 close(46) = 0 write(4, "\1\0\0\0\0\0\0\0", 8) = 8 ppoll([{fd=-1}, {fd=-1}, {fd=-1}, {fd=48, events=POLLIN}], 4, {tv_sec=29, tv_nsec=998541602}, NULL, 8Load smb config files from /etc/samba/smb.conf Loaded services file OK. Weak crypto is allowed by GnuTLS (e.g. NTLM as a compatibility fallback) /var/lib/samba/usershares ) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=26354, si_uid=500, si_status=0, si_utime=1 /* 0.01 s */, si_stime=0} --- ppoll([{fd=-1}, {fd=-1}, {fd=-1}, {fd=48, events=POLLIN}], 4, {tv_sec=29, tv_nsec=978383752}, NULL, 8) = 0 (Timeout) write(2, "QProcess: Destroyed while proces"..., 74QProcess: Destroyed while process ("/usr/bin/testparm") is still running. ) = 74 kill(26354, SIGKILL) = 0 ppoll([{fd=-1}, {fd=-1}, {fd=-1}, {fd=48, events=POLLIN}], 4, {tv_sec=29, tv_nsec=999999034}, NULL, 8
I upgraded the kernel to 6.11.2 and the problem is gone. It must be one of the rare low-level qt/glibc/kernel interactions.