Bug 524500 - kwalletd6 repeatedly logs QObject::killTimer() errors
Summary: kwalletd6 repeatedly logs QObject::killTimer() errors
Status: RESOLVED FIXED
Alias: None
Product: frameworks-kwallet
Classification: Frameworks and Libraries
Component: general (other bugs)
Version First Reported In: 6.29.0
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Valentin Rusu
URL:
Keywords:
: 524479 524621 524703 (view as bug list)
Depends on:
Blocks:
 
Reported: 2026-08-20 18:26 UTC by teo.bekan
Modified: 2026-08-26 04:03 UTC (History)
10 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 6.30
Sentry Crash Report:


Attachments
KSystemLog example (211.65 KB, image/png)
2026-08-20 18:26 UTC, teo.bekan
Details

Note You need to log in before you can comment on or make changes to this bug.
Description teo.bekan 2026-08-20 18:26:58 UTC
Created attachment 195305 [details]
KSystemLog example

KWalletD6 repeatedly produces errors in the journal
For example
Aug 20 20:14:58 fedora-49cd kwalletd6[4635]: QObject::killTimer(): Error: timer id 1207959553 is not valid for object 0x7ffe1778e980 (KWalletD, ), timer has not been killed

Errors happen very rapidly one after eachother, multiple timer IDs are reported after each log

busctl --user call org.freedesktop.DBus /org/freedesktop/DBus \
  org.freedesktop.DBus GetNameOwner s org.kde.kwalletd6
Reports "The name does not have an owner"
Killing kwallet stops the spam.

KDE version : 6.7.4
KDE Frameworks version: 6.29.0
Qt Version: 6.11.1
Kernel Version: 7.1.8-200.fc44.x86_64
Comment 1 teo.bekan 2026-08-20 18:31:08 UTC
New info. I disabled kwallet and logged out and back in. Got this error:
Aug 20 20:27:42 fedora-49cd kwalletd6[15039]: Failed to register with host portal QDBusError("org.freedesktop.portal.Error.Failed", "Could not register app ID: App info not found for 'org.kde.kwalletd'")
Aug 20 20:28:28 fedora-49cd kwalletd6[15039]: The Wayland connection broke. Did the Wayland compositor die?
Aug 20 20:28:28 fedora-49cd kwalletd6[15039]: Attempting wayland reconnect
Aug 20 20:28:28 fedora-49cd kwalletd6[15039]: Failed to write to the pipe: Bad file descriptor.
Aug 20 20:28:28 fedora-49cd systemd[1816]: dbus-:1.2-org.kde.kwalletd6@1.service: Failed with result 'exit-code'.
Aug 20 20:28:47 fedora-49cd systemd[1816]: dbus-:1.2-org.kde.kwalletd6@2.service: Failed with result 'exit-code'.
Aug 20 20:28:47 fedora-49cd systemd[1816]: dbus-:1.2-org.kde.kwalletd6@3.service: Failed with result 'exit-code'.
teo@fedora-49cd:~$
Comment 2 TraceyC 2026-08-20 23:18:47 UTC
I found that there's an existing bug about this, so I'll merge this in with the older one. Please follow bug 522615 for updates.

*** This bug has been marked as a duplicate of bug 522615 ***
Comment 3 michaelk83 2026-08-23 07:56:44 UTC
(In reply to TraceyC from comment #2)
> I found that there's an existing bug about this, so I'll merge this in with
> the older one. Please follow bug 522615 for updates.
> 
> *** This bug has been marked as a duplicate of bug 522615 ***

Although similar timer errors were mentioned in bug 522615 comment 7, that is the only observation of those errors in 522615, so I'm not sure that it's indeed the same bug. It does seem related, but I think 522615 is a mixed bag of several similar or related issues. I think it's best to keep this one as a separate report.
Comment 4 michaelk83 2026-08-23 08:01:46 UTC
*** Bug 524621 has been marked as a duplicate of this bug. ***
Comment 5 michaelk83 2026-08-23 08:06:18 UTC
Marking as confirmed, as this has been reported by at least 4 users (including the one in bug 522615 comment 7).

Just to confirm and differentiate this from bug 522615 - are you also seeing increased memory usage along with these errors?
Comment 6 Carsten Ziepke 2026-08-23 09:06:20 UTC
Here, as reported in https://bugs.kde.org/show_bug.cgi?id=524621, it started with the update to KDE Frameworks 6.29.

The massive log entries (1000 per second) disappear when i deactivate Close Behavoir -> "When unsued for:"
 (KDE Wallet -> Wallet Preferences -> Close Behavoir -> "When unsued for:").

Before I had an timeout for  "When unsued for:" of 10 minutes.
But I  am not seeing increased memory usage.

Operating System: openSUSE Leap 16.0
KDE Plasma Version: 6.7.4
KDE Frameworks Version: 6.29.0
Qt Version: 6.11.2
Comment 7 teo.bekan 2026-08-23 12:21:35 UTC
(In reply to michaelk83 from comment #5)
> Marking as confirmed, as this has been reported by at least 4 users
> (including the one in bug 522615 comment 7).
> 
> Just to confirm and differentiate this from bug 522615 - are you also seeing
> increased memory usage along with these errors?

I'm not sure about the memory as I wasn't looking at that. However what interested me more (and what caught my attention) was that my CPU was running hotter than usual (7C higher cca.)
Comment 8 teo.bekan 2026-08-23 12:33:46 UTC
(In reply to teo.bekan from comment #7)
> (In reply to michaelk83 from comment #5)
> > Marking as confirmed, as this has been reported by at least 4 users
> > (including the one in bug 522615 comment 7).
> > 
> > Just to confirm and differentiate this from bug 522615 - are you also seeing
> > increased memory usage along with these errors?
> 
> I'm not sure about the memory as I wasn't looking at that. However what
> interested me more (and what caught my attention) was that my CPU was
> running hotter than usual (7C higher cca.)

My memory was fine if I remember, however my disk space was being used up.
Comment 10 Bug Janitor Service 2026-08-23 15:13:00 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kwallet/-/merge_requests/179
Comment 11 jasoncarrete5 2026-08-23 20:01:23 UTC
(In reply to Bug Janitor Service from comment #10)
> A possibly relevant merge request was started @
> https://invent.kde.org/frameworks/kwallet/-/merge_requests/179

This looks like it fixes a different bug than https://bugs.kde.org/show_bug.cgi?id=524621. This MR fixes an issue where "Idle Timeout" was read as milliseconds instead of minutes which is a more serious issue. I noticed that with "Close When Idle" set to true, I couldn't open a wallet in kwalletmanager without it being closed very quickly which is likely due to this misinterpretation of the units of "Idle Timeout". Fixing this issue will not resolve the killTimer error; It will only make it happen much less frequently.

The bug in https://bugs.kde.org/show_bug.cgi?id=524621 is caused because there is a cycle of timers that are created. When an idle timer fires, it will attempt to close the wallet associated with the timer ID and then kill the timer, however, the KWalletD::close function calls the KWalletD::walletForHandle function which, when "Close When Idle" is set, kills the timer and starts a new timer associated with the wallet. Then after these function calls resolve, the old timer ID is killed again in the KWalletD::timerEvent function after closing the wallet causing the error in the logs.

The error log will keep happening on the "Idle Timeout" interval indefinitely because a new timer is started every time the timerEvent fires and the previous timer is killed.
Comment 12 michaelk83 2026-08-23 20:40:36 UTC
(In reply to jasoncarrete5 from comment #11)

I think the error was pre-existing before dc47c041, but dc47c041 exposed it by changing the units here:
https://invent.kde.org/frameworks/kwallet/-/commit/dc47c0410ca4a5dd060ba949c3c066afa5cca118?file_path=src%2Fruntime%2Fkwalletd%2Fkwalletd.cpp#line_efc102716_1008

MR 179 fixes that change.

The erroring code should be removed in https://invent.kde.org/frameworks/kwallet/-/merge_requests/161 , leaving the idle timeout handling to ksecretd.
Comment 13 Nicolas Fella 2026-08-24 14:20:28 UTC
*** Bug 524703 has been marked as a duplicate of this bug. ***
Comment 14 Nicolas Fella 2026-08-24 14:30:52 UTC
Git commit 1f942bf6d8801d9caadecf15c0a3e620adc5da69 by Nicolas Fella.
Committed on 24/08/2026 at 13:58.
Pushed by nicolasfella into branch 'master'.

Drop Close When Idle handling from kwalletd

This code is currently duplicated between kwalletd and ksecretd.

Doing this is the responsibility of the backend (ksecretd). kwalletd
should only be a thin wrapper around the FDO secrets API.

M  +0    -47   src/runtime/kwalletd/kwalletd.cpp
M  +0    -6    src/runtime/kwalletd/kwalletd.h

https://invent.kde.org/frameworks/kwallet/-/commit/1f942bf6d8801d9caadecf15c0a3e620adc5da69
Comment 15 Nicolas Fella 2026-08-24 14:31:55 UTC
This completely removes the code that produced the error since it's conceptually wrong anyway.

ksecretd has similar code though, so that should be checked if it's working correctly
Comment 16 michaelk83 2026-08-25 15:39:48 UTC
*** Bug 524479 has been marked as a duplicate of this bug. ***