KRunner keeps crashing (possibly due to AMD GPU)

About half the times I try to use KRunner for math it crashes. For instance, I hit Alt+F2 to open KRunner, start typing a math formula like =4*10, but it crashes before I can finish typing. Here is the output of journalctl -b at around the crash:

May 31 17:34:15 desk dbus-daemon[1993]: [session uid=1000 pid=1993] Activating via systemd: service name='org.kde.krunner' unit='plasma-krunner.service' requested by ':1.14' (uid=1000 pid=2686 comm="/usr/bin/kglobalaccel5")
May 31 17:34:15 desk systemd[1788]: Starting KRunner...
May 31 17:34:15 desk dbus-daemon[1993]: [session uid=1000 pid=1993] Successfully activated service 'org.kde.krunner'
May 31 17:34:15 desk systemd[1788]: Started KRunner.
May 31 17:34:15 desk krunner[73914]: QCommandLineParser: argument list cannot be empty, it should contain at least the executable name
May 31 17:34:27 desk krunner[73914]: QCommandLineParser: argument list cannot be empty, it should contain at least the executable name
May 31 17:34:30 desk krunner[73914]: KCrash: crashing... crashRecursionCounter = 2
May 31 17:34:30 desk krunner[73914]: KCrash: Application Name = krunner path = /usr/bin pid = 73914
May 31 17:34:30 desk krunner[73914]: KCrash: Arguments: /usr/bin/krunner
May 31 17:34:30 desk krunner[73914]: KCrash: Attempting to start /usr/lib/drkonqi
May 31 17:34:30 desk krunner[73914]: amdgpu: amdgpu_cs_query_reset_state failed. (-9)
May 31 17:34:30 desk krunner[73914]: amdgpu: amdgpu_cs_query_reset_state failed. (-9)
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: Failed to allocate a buffer:
May 31 17:34:30 desk krunner[73914]: amdgpu:    size      : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    alignment : 2097152 bytes
May 31 17:34:30 desk krunner[73914]: amdgpu:    domains   : 4
May 31 17:34:30 desk krunner[73914]: amdgpu:    flags   : 6
May 31 17:34:30 desk krunner[73914]: amdgpu: The CS has been rejected (-9). Recreate the context.
May 31 17:34:30 desk krunner[73914]: amdgpu: amdgpu_cs_query_reset_state failed. (-9)
May 31 17:34:30 desk krunner[73914]: amdgpu: The CS has been rejected (-9). Recreate the context.
May 31 17:34:30 desk kded5[2633]: Registering ":1.512/StatusNotifierItem" to system tray
May 31 17:34:30 desk plasmashell[2700]: Could not find the Plasmoid for Plasma::FrameSvgItem(0x561f6ac7c9b0) QQmlContext(0x561f683c3180) QUrl("file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/global/Globals.qml")
May 31 17:34:30 desk plasmashell[2700]: Could not find the Plasmoid for Plasma::FrameSvgItem(0x561f6ac7c9b0) QQmlContext(0x561f683c3180) QUrl("file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/global/Globals.qml")
May 31 17:34:31 desk plasmashell[2700]: QFont::setPointSizeF: Point size <= 0 (0.000000), must be greater than 0
May 31 17:34:32 desk krunner[73914]: Unable to start Dr. Konqi
May 31 17:34:32 desk kded5[2633]: Service  ":1.512" unregistered
May 31 17:34:32 desk systemd[1788]: plasma-krunner.service: Main process exited, code=exited, status=255/EXCEPTION
May 31 17:34:32 desk systemd[1788]: plasma-krunner.service: Failed with result 'exit-code'.

I see from the many references to amdgpu that maybe it has something to do with my video drivers. How would one proceed to debug this issue?

It could be connected, but without a backtrace of the crash, there’s no way to be sure. The next step would be to get one. See Guidelines and HOWTOs/Debugging/How to create useful crash reports - KDE Community Wiki

1 Like

I managed to run KRunner in GDB:

Thread 104 "GlobalQueue[25]" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x1553ed10e6c0 (LWP 153161)]
0x0000155521862537 in MathStructure::set (this=0x1554e5ec99c0, o=..., merge_precision=<optimized out>) at /usr/src/debug/libqalculate/libqalculate-4.6.1/libqalculate/MathStructure.cc:218
Downloading source file /usr/src/debug/libqalculate/libqalculate-4.6.1/libqalculate/MathStructure.cc
218             if(var_bak) var_bak->ref();                                                                                                                                                                                                                
(gdb) backtrace
#0  0x0000155521862537 in MathStructure::set (this=0x1554e5ec99c0, o=..., merge_precision=<optimized out>) at /usr/src/debug/libqalculate/libqalculate-4.6.1/libqalculate/MathStructure.cc:218
#1  0x00001555217c3d55 in CalculateThread::run (this=0x155504040560) at /usr/src/debug/libqalculate/libqalculate-4.6.1/libqalculate/Calculator-calculate.cc:86
#2  0x0000155521876113 in Thread::doRun (data=0x155504040560) at /usr/src/debug/libqalculate/libqalculate-4.6.1/libqalculate/util.cc:1078
#3  0x0000155552c9d44b in start_thread (arg=<optimized out>) at pthread_create.c:444
#4  0x0000155552d20e40 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
(gdb) 

but I don’t know what to do with that. None of the lines seem to reference any KDE libraries or executables.

I tried building KRunner from source but I am unable to find the executable. I followed the KDE developer guide, set up my system, and built KRunner with kdesrc-build krunner. But where is the executable built? I ran find -name krunner in the source, build, and install directories (default for the latter is ~/kde) but nothing comes up. Is there a way for me to build the executable myself? I can usually figure out my KDE related errors by playing with the source code directly.

That should be ~/kde/usr/bin/krunner
You can also use kdesrc-run krunner to start it.

€: Might be resolved? 470219 – krunner sometimes crashes in MathStructure::setAborted() after typing a few numbers/letters
altough: 470312 – krunner crashed when typing in 4000000 is still open.
Not sure, but they look related to your problem.

I checked and ~/kde/usr/bin/krunner does not exist. If I run kdesrc-run krunner it says

Program "krunner" does not exist.
Try to set executable name with -e option.

However, the KRunner package seems to be built successfully. Here are build.log

# kdesrc-build running: 'make' '-j32'
# from directory: /home/raul/builds/kde/krunner
[  1%] Built target runnerpython_kapptemplate
[  3%] Built target runner_kapptemplate
[  4%] Automatic MOC for target KF5Runner
[  4%] Built target KF5Runner_autogen
[ 23%] Built target KF5Runner
[ 25%] Automatic MOC for target fakerunnerplugin
[ 31%] Automatic MOC for target runnercontexttest
[ 31%] Automatic MOC for target runnermodelplugin
[ 31%] Automatic MOC for target testmetadataconversion
[ 31%] Automatic MOC for target runnermatchmethodstest
[ 33%] Automatic MOC for target testremoterunner
[ 33%] Built target runnercontexttest_autogen
[ 34%] Built target fakerunnerplugin_autogen
[ 34%] Built target runnermodelplugin_autogen
[ 34%] Built target testremoterunner_autogen
[ 34%] Built target testmetadataconversion_autogen
[ 34%] Built target runnermatchmethodstest_autogen
[ 49%] Built target fakerunnerplugin
[ 49%] Built target runnermatchmethodstest
[ 49%] Built target runnercontexttest
[ 53%] Built target testmetadataconversion
[ 71%] Built target testremoterunner
[ 69%] Built target runnermodelplugin
[ 73%] Automatic MOC for target runnermanagerhistorytest
[ 74%] Automatic MOC for target runnermanagersinglerunnermodetest
[ 76%] Automatic MOC for target dbusrunnertest
[ 77%] Automatic MOC for target runnermanagertest
[ 77%] Built target runnermanagerhistorytest_autogen
[ 77%] Built target runnermanagersinglerunnermodetest_autogen
[ 77%] Built target runnermanagertest_autogen
[ 77%] Built target dbusrunnertest_autogen
[ 84%] Built target runnermanagerhistorytest
[ 88%] Built target runnermanagersinglerunnermodetest
[ 96%] Built target runnermanagertest
[100%] Built target dbusrunnertest

and install.log

# kdesrc-build running: 'make' 'install/fast'
# from directory: /home/raul/builds/kde/krunner
Install the project...
-- Install configuration: "RelWithDebInfo"
-- Up-to-date: /home/raul/kde/usr/lib/qml/org/kde/runnermodel/librunnermodelplugin.so
-- Up-to-date: /home/raul/kde/usr/lib/qml/org/kde/runnermodel/qmldir
-- Up-to-date: /home/raul/kde/usr/lib/libKF5Runner.so.5.107.0
-- Up-to-date: /home/raul/kde/usr/lib/libKF5Runner.so.5
-- Up-to-date: /home/raul/kde/usr/lib/libKF5Runner.so
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/KRunner/AbstractRunner
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/KRunner/RunnerContext
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/KRunner/RunnerManager
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/KRunner/RunnerSyntax
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/KRunner/QueryMatch
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/KRunner/AbstractRunnerTest
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner/krunner_export.h
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner/abstractrunner.h
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner/runnercontext.h
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner/runnermanager.h
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner/runnersyntax.h
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner/querymatch.h
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner/abstractrunnertest.h
-- Up-to-date: /home/raul/kde/usr/share/kservicetypes5/plasma-runner.desktop
-- Up-to-date: /home/raul/kde/usr/share/qlogging-categories5/krunner.categories
-- Up-to-date: /home/raul/kde/usr/share/qlogging-categories5/krunner.renamecategories
-- Up-to-date: /home/raul/kde/usr/mkspecs/modules/qt_KRunner.pri
-- Up-to-date: /home/raul/kde/usr/share/dbus-1/interfaces/kf5_org.kde.krunner1.xml
-- Installing: /home/raul/kde/usr/share/kdevappwizard/templates/runner.tar.bz2
-- Up-to-date: /home/raul/kde/usr/share/kdevappwizard/templates/runnerpython.tar.bz2
-- Up-to-date: /home/raul/kde/usr/lib/cmake/KF5Runner/KF5RunnerConfig.cmake
-- Up-to-date: /home/raul/kde/usr/lib/cmake/KF5Runner/KF5RunnerConfigVersion.cmake
-- Up-to-date: /home/raul/kde/usr/lib/cmake/KF5Runner/KF5KRunnerMacros.cmake
-- Up-to-date: /home/raul/kde/usr/lib/cmake/KF5Runner/KF5RunnerTargets.cmake
-- Up-to-date: /home/raul/kde/usr/lib/cmake/KF5Runner/KF5RunnerTargets-relwithdebinfo.cmake
-- Up-to-date: /home/raul/kde/usr/include/KF5/KRunner/krunner_version.h

of running kdesrc-build krunner. But I don’t see the krunner executable anywhere. In fact, if I run find -name CMakeLists.txt | xargs grep -i 'add_executable(krunner' on the entire KDE source tree nothing comes up. I’m guessing it’s defined differently, like a byproduct of some other CMake command.

Yep, that’s it. Happily, it was just fixed a few minutes ago, with the fix scheduled to be released in Plasma 5.27.6.