Bug 623802 - another possibility of Xorg at 100% CPU
Summary: another possibility of Xorg at 100% CPU
Alias: None
Product: Fedora
Classification: Fedora
Component: systemd (Show other bugs)
(Show other bugs)
Version: 14
Hardware: All Linux
Target Milestone: ---
Assignee: Lennart Poettering
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2010-08-12 19:41 UTC by Michal Schmidt
Modified: 2010-08-14 17:35 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2010-08-14 17:35:41 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

Description Michal Schmidt 2010-08-12 19:41:20 UTC
Description of problem:
I can reproduce a situation with symptoms similar to bug 619889 - Xorg spinning with 100% CPU usage and impossible to do a VT switch.
The problem does not happen in the default installation, but it will appear as soon as someone's /etc/rc.local takes more than a few seconds to execute.

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

How reproducible:

Steps to Reproduce:
1. Put "sleep 10" into your /etc/rc.local to simulate work on startup.
2. Reboot into graphical.target
Actual results:
Xorg is spinning, repeatedly calling "ioctl(6, TCFLSH, 0x2)" and failing with EIO. VT switching does not work.

Expected results:
Idle system, working VT switching.

Additional info:
/lib/systemd/system/rc-local.service has:
When the line is commented out, the problem goes away.
Though I'm not sure what expectations people have about the usability of a terminal in their rc.local scripts.

Comment 1 Bill Nottingham 2010-08-12 20:05:23 UTC
c.f. https://bugzilla.redhat.com/show_bug.cgi?id=623561#c5 ?

Comment 2 Michal Schmidt 2010-08-12 22:15:06 UTC
(In reply to comment #1)
> c.f. https://bugzilla.redhat.com/show_bug.cgi?id=623561#c5 ?    

Yes, starting prefdm.service after rc-local.service would solve it too. (Note that rc-local.service does not currently have "Type=finish" which would be necessary for this synchronization to work.)

On the other hand, it would also decrease the amount of parallelism. Currently it's possible for Xorg to be running while many daemons are not yet started.

Comment 3 Bill Nottingham 2010-08-13 00:36:21 UTC
Yes, but we need to make sure that our gdm/gnome/etc setup is ready for 'early' startup in this manner before we enable that.

Comment 4 Lennart Poettering 2010-08-14 17:35:13 UTC
Bill, I think there's only one way to find out whether we are ready for early start-up: trying it out. Thus I'll now drop the console requirement of local.service and we'll see what happens. It should be easy to revert this back shortly before F14 is released if people complain too loud if local.service does not take input or when gnome breaks.

Comment 5 Lennart Poettering 2010-08-14 17:35:41 UTC
Fixed now upstream.

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