Public bug reported:

Since 0.16.0, isKwalletAvailable() in qtkeychain makes a blocking D-Bus
call with the default 25 second timeout. Backend detection runs inline
on the first keychain job, which is normally the application's GUI
thread. When kwalletd is running but the wallet is locked, it holds
replies, so the call neither succeeds nor fails fast and the thread
blocks for the full timeout.

Any Qt application using QtKeychain therefore freezes for 25 seconds if
it starts before the wallet is unlocked. That is the ordinary case for
applications autostarted at login when the wallet password differs from
the login password, so kwallet-pam cannot open it. For a Plasma applet,
where QtKeychain runs inside plasmashell, the whole desktop shell
freezes.

Reproduced on a clean Kubuntu 26.10 install with the archive package:

  libqt6keychain1  0.17.0-1  (stonking/universe)

A test program issuing a single ReadPasswordJob, with a 500 ms heartbeat
timer started before the job so that a blocked thread can be told apart
from a merely outstanding one:

  wallet locked:     tick 24614 ms, elapsed 24621 ms
  wallet unlocked:   elapsed 3 ms

One tick in 24.6 seconds. At 500 ms the timer should have fired around
49 times, so the event loop was not running and the thread was blocked.

Ubuntu 26.04 ships 0.15.0 and predates the regression. 26.10 has carried
0.17.0 since 9 July 2026 and will release with this unless it is fixed
or patched.

Upstream report and proposed fix:
  https://github.com/frankosterfeld/qtkeychain/issues/303
  https://github.com/frankosterfeld/qtkeychain/pull/304

The fix caps the probe at 5 seconds and treats a timeout as
available-but-busy, which preserves the behaviour the regressing commit
(c7e1063) was introduced to fix. It is a five line change if Ubuntu
wants to carry it ahead of upstream.

ProblemType: Bug
DistroRelease: Ubuntu 26.10
Package: libqt6keychain1 0.17.0-1
ProcVersionSignature: Ubuntu 7.0.0-14.14-generic 7.0.0
Uname: Linux 7.0.0-14-generic x86_64
ApportVersion: 2.36.0-0ubuntu1
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: KDE
Date: Thu Aug 27 15:03:19 2026
InstallationDate: Installed on 2026-08-27 (0 days ago)
InstallationMedia: Kubuntu 26.10 "Stonking Stingray" - Daily amd64 (20260622)
SourcePackage: qtkeychain
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: qtkeychain (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug stonking wayland-session

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2165214

Title:
  libqt6keychain1 0.17.0-1: applications block for 25 seconds when the
  KWallet is locked

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qtkeychain/+bug/2165214/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to