Created attachment 174711 [details] RAM usage of kdialog 1-2 minutes after the dialog open command SUMMARY The kdialog process uses 100% CPU on 1 threads, and allocates memory endlessly, until the memory runs out and the system freezes. STEPS TO REPRODUCE 1. Do anything in VS Code that would open an open folder dialog (for example, clone a git repo) OBSERVED RESULT The dialog doesn't open. Instead, a kdialog process is started, which uses maximum CPU on 1 thread and allocates memory constantly. EXPECTED RESULT The dialog should open. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Kernel version: 6.8.0-45-generic KDE Plasma Version: 5.27.11 KDE Frameworks Version: 5.115.0 Qt Version: 5.15.13 ADDITIONAL INFORMATION I checked the process with strace, and it is constantly calling brk() Example: brk(0x586bfb6ea000) = 0x586bfb6ea000 brk(0x586bfb70b000) = 0x586bfb70b000 brk(0x586bfb72c000) = 0x586bfb72c000 brk(0x586bfb74d000) = 0x586bfb74d000 brk(0x586bfb76e000) = 0x586bfb76e000 brk(0x586bfb78f000) = 0x586bfb78f000 brk(0x586bfb7b0000) = 0x586bfb7b0000 brk(0x586bfb7d1000) = 0x586bfb7d1000 brk(0x586bfb7f2000) = 0x586bfb7f2000 brk(0x586bfb813000) = 0x586bfb813000 brk(0x586bfb834000) = 0x586bfb834000 brk(0x586bfb855000) = 0x586bfb855000 brk(0x586bfb876000) = 0x586bfb876000 brk(0x586bfb897000) = 0x586bfb897000 brk(0x586bfb8b8000) = 0x586bfb8b8000 brk(0x586bfb8d9000) = 0x586bfb8d9000 brk(0x586bfb8fa000) = 0x586bfb8fa000 brk(0x586bfb91b000) = 0x586bfb91b000 brk(0x586bfb93c000) = 0x586bfb93c000 brk(0x586bfb95d000) = 0x586bfb95d000 brk(0x586bfb97e000) = 0x586bfb97e000 brk(0x586bfb99f000) = 0x586bfb99f000 brk(0x586bfb9c0000) = 0x586bfb9c0000 brk(0x586bfb9e1000) = 0x586bfb9e1000 brk(0x586bfba02000) = 0x586bfba02000 brk(0x586bfba23000) = 0x586bfba23000 brk(0x586bfba44000) = 0x586bfba44000 brk(0x586bfba65000) = 0x586bfba65000 brk(0x586bfba86000) = 0x586bfba86000 brk(0x586bfbaa7000) = 0x586bfbaa7000 brk(0x586bfbac8000) = 0x586bfbac8000 brk(0x586bfbae9000) = 0x586bfbae9000 brk(0x586bfbb0a000) = 0x586bfbb0a000 brk(0x586bfbb2b000) = 0x586bfbb2b000 brk(0x586bfbb4c000) = 0x586bfbb4c000 brk(0x586bfbb6d000) = 0x586bfbb6d000 brk(0x586bfbb8e000) = 0x586bfbb8e000 brk(0x586bfbbaf000) = 0x586bfbbaf000 brk(0x586bfbbd0000) = 0x586bfbbd0000 brk(0x586bfbbf1000) = 0x586bfbbf1000 brk(0x586bfbc12000) = 0x586bfbc12000 brk(0x586bfbc33000) = 0x586bfbc33000 brk(0x586bfbc54000) = 0x586bfbc54000 brk(0x586bfbc75000) = 0x586bfbc75000 brk(0x586bfbc96000) = 0x586bfbc96000 brk(0x586bfbcb7000) = 0x586bfbcb7000 brk(0x586bfbcd8000) = 0x586bfbcd8000 brk(0x586bfbcf9000) = 0x586bfbcf9000 brk(0x586bfbd1a000) = 0x586bfbd1a000 brk(0x586bfbd3b000) = 0x586bfbd3b000 brk(0x586bfbd5c000) = 0x586bfbd5c000 brk(0x586bfbd7d000) = 0x586bfbd7d000 brk(0x586bfbd9e000) = 0x586bfbd9e000 brk(0x586bfbdbf000) = 0x586bfbdbf000 brk(0x586bfbde0000) = 0x586bfbde0000 brk(0x586bfbe01000) = 0x586bfbe01000 brk(0x586bfbe22000) = 0x586bfbe22000 brk(0x586bfbe43000) = 0x586bfbe43000 brk(0x586bfbe64000) = 0x586bfbe64000 Stack trace (from gdb): #0 0x00007ab5bc93759a in qstrcmp(QByteArray const&, char const*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #1 0x00007ab5bcbbc22c in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #2 0x00007ab5bcbafbe7 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #3 0x00007ab5bcbb0322 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #4 0x00007ab5bc3d0f2a in KBuildSycoca::recreate(bool) () from /lib/x86_64-linux-gnu/libKF5Service.so.5 #5 0x00007ab5bc3bd9a0 in KSycocaPrivate::buildSycoca() () from /lib/x86_64-linux-gnu/libKF5Service.so.5 #6 0x00007ab5bc3bdb8d in KSycocaPrivate::checkDatabase(QFlags<KSycocaPrivate::BehaviorIfNotFound>) () from /lib/x86_64-linux-gnu/libKF5Service.so.5 #7 0x00007ab5bc3bed72 in KSycoca::ensureCacheValid() () from /lib/x86_64-linux-gnu/libKF5Service.so.5 #8 0x00007ab5bc3b685a in KServiceTypeTrader::defaultOffers(QString const&, QString const&) const () from /lib/x86_64-linux-gnu/libKF5Service.so.5 #9 0x00007ab5bc3b6a61 in KServiceTypeTrader::query(QString const&, QString const&) const () from /lib/x86_64-linux-gnu/libKF5Service.so.5 #10 0x00007ab5b7c4590e in ?? () from /lib/x86_64-linux-gnu/libKF5KIOWidgets.so.5 #11 0x00007ab5b7c3e87a in KIO::PreviewJob::supportedMimeTypes() () from /lib/x86_64-linux-gnu/libKF5KIOWidgets.so.5 #12 0x00007ab5b7d4c03d in ?? () from /lib/x86_64-linux-gnu/libKF5KIOFileWidgets.so.5 #13 0x00007ab5b7d531d9 in KDirOperator::checkPreviewSupport() () from /lib/x86_64-linux-gnu/libKF5KIOFileWidgets.so.5 #14 0x00007ab5b7d72159 in KFileWidget::setFilter(QString const&) () from /lib/x86_64-linux-gnu/libKF5KIOFileWidgets.so.5 #15 0x00007ab5b8724ee2 in ?? () from /usr/lib/x86_64-linux-gnu/qt5/plugins/platformthemes/KDEPlasmaPlatformTheme.so #16 0x00007ab5b872c190 in ?? () from /usr/lib/x86_64-linux-gnu/qt5/plugins/platformthemes/KDEPlasmaPlatformTheme.so #17 0x00007ab5bdb89bb8 in QDialogPrivate::setNativeDialogVisible(bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #18 0x00007ab5bdb9f4cf in QFileDialog::setVisible(bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #19 0x00007ab5bdb8ad69 in QDialog::exec() () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #20 0x000064f785471084 in ?? () #21 0x00007ab5bc02a1ca in __libc_start_call_main (main=main@entry=0x64f78546b700, argc=argc@entry=5, argv=argv@entry=0x7ffc511b30d8) at ../sysdeps/nptl/libc_start_call_main.h:58 #22 0x00007ab5bc02a28b in __libc_start_main_impl (main=0x64f78546b700, argc=5, argv=0x7ffc511b30d8, --Type <RET> for more, q to quit, c to continue without paging-- init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc511b30c8) at ../csu/libc-start.c:360 #23 0x000064f785472725 in ?? ()
VS Code reports the following error in the Main output view: 2024-10-11 22:16:01.499 [error] [DialogMainService]: file open dialog is already or will be showing for the window with the same configuration (Of course every time i try to open the dialog)
I've found a Github issue reported in the VS Code repo https://github.com/microsoft/vscode/issues/230679
*** This bug has been marked as a duplicate of bug 494160 ***