Bug 457845 - Excessive spawning of new console-kit-daemon processes
Excessive spawning of new console-kit-daemon processes
Product: Fedora
Classification: Fedora
Component: ConsoleKit (Show other bugs)
x86_64 Linux
medium Severity medium
: ---
: ---
Assigned To: David Zeuthen
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2008-08-04 18:25 EDT by Adam Huffman
Modified: 2009-10-28 20:20 EDT (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-08-05 18:28:43 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Patch for ConsoleKit 0.30 to remove so many threads (2.62 KB, patch)
2009-03-24 16:57 EDT, Jason Hegler
no flags Details | Diff
Kernel patch to add new VT ioctl. (1.35 KB, patch)
2009-03-24 16:59 EDT, Jason Hegler
no flags Details | Diff

  None (edit)
Description Adam Huffman 2008-08-04 18:25:46 EDT
Description of problem:
I have upgraded a new F9 system to Rawhide.  Whereas other recent bugs related to switching runlevels, I have seen the creation of lots of console-kit-daemon processes when going straight into runlevel 5.  As of this writing, there are 62 such processes on the system, which has been up 30 minutes.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
Actual results:

Expected results:

Additional info:

excerpt of pstree output:

     │        └─{auditd}
Comment 1 Matthias Clasen 2008-08-05 18:28:43 EDT
This is not a bug, it is working around the limitiations of the linux vt system.
These are threads, one for each vt, sleeping in VT_WAITACTIVE.
Comment 2 Jason Hegler 2009-03-24 16:57:13 EDT
Created attachment 336537 [details]
Patch for ConsoleKit 0.30 to remove so many threads

This patch changes ConsoleKit to use an new VT ioctl and wait on a terminal switch without requiring a thread for every possible VT.
Comment 3 Jason Hegler 2009-03-24 16:59:26 EDT
Created attachment 336538 [details]
Kernel patch to add new VT ioctl.

This patch must be added to the kernel to support the previous patch for ConsoleKit.  Basically we add a VT_WAITSWITCH ioctl which sleeps until any virtual console switch occurs; this allows ConsoleKit to only use one thread to wait, and it uses the VT_GETSTATE ioctl to determine the active VT (as with Solaris implementation).
Comment 4 Topher 2009-10-28 20:20:30 EDT
FYI: I'm seeing the same thing in F12. (63 console-kit-daemon processes)

Note You need to log in before you can comment on or make changes to this bug.