There's a process called gsd-smartcard -- a plugin for the GNOME settings daemon -- which has a tendency in particular on newer dists, e.g. Ubuntu22.04 and RHEL9, to constantly talk to the exported smartcard reader. It's evident from the intensely blinking LED activity indicator and from inspecting the ThinLinc pcsctun process on the client machine with gdb, where there's an endless stream of threading, > [New Thread 0x7f2324fce6c0 (LWP 482494)] > [Thread 0x7f2324fce6c0 (LWP 482494) exited] > [New Thread 0x7f2324fce6c0 (LWP 482495)] > [Thread 0x7f2324fce6c0 (LWP 482495) exited] > [New Thread 0x7f2324fce6c0 (LWP 482496)] > [Thread 0x7f2324fce6c0 (LWP 482496) exited] > [New Thread 0x7f2324fce6c0 (LWP 482497)] > [Thread 0x7f2324fce6c0 (LWP 482497) exited] This is not the case for an older dist such as Ubuntu20.04, where we could only observe this activity temporarily while actually interacting with the smartcard. If one for instance wants to read the smartcard certificates in the session, the request is much slower on Ubuntu 22.04 compared to Ubuntu 20.04. Furthermore, while the request is being handled, seemingly unrelated applications on the client machine such as Firefox are significantly slowed down. Killing the gsd-smartcard process on the server for the affected user seems to have only positive effects on the smartcard usage, speeding up all related operations as a result. Inspecting the pcsctun process on the client machine confirms it has returned to its intended behaviour.
Under some circumstances where the smartcard-related processes hanged, we could observe a lingering ThinLinc pcsctun process on the client machine after having managed to log out. However, we were not able to consistently reproduce this.
(In reply to Tobias from comment #0) This was tested using ThinLinc server versions 4.15.0 and 4.16.0rc2 on RHEL9, Ubuntu20.04, and Ubuntu22.04, and corresponding clients on Fedora39.
I tested this with Ubuntu installed on one of our workstations. The issue occurs when connecting through ThinLinc, but not when logging in locally. When in the ThinLinc session, I can reinsert the card and the frequent reads resume (can be seen as a blinking status led on the card reader). There were also a couple of times when I could not read at all from the card reader until I had reinserted the card at least once.
Created attachment 1178 [details] gsd-smartcard crash log At one point, gsd-smartcard crashed when I removed the card from the reader (in a session). See attached log. It states that: > You have some obsolete package versions installed. Please upgrade the > following packages and check if the problem still occurs: > coreutils, libip4tc2 These packages were then updated, and I have not seen the same crash since. Not sure if this is related to our issue.