Bug 623802 - another possibility of Xorg at 100% CPU
another possibility of Xorg at 100% CPU
Status: CLOSED UPSTREAM
Product: Fedora
Classification: Fedora
Component: systemd (Show other bugs)
14
All Linux
low Severity medium
: ---
: ---
Assigned To: Lennart Poettering
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-08-12 15:41 EDT by Michal Schmidt
Modified: 2010-08-14 13:35 EDT (History)
4 users (show)

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


Attachments (Terms of Use)

  None (edit)
Description Michal Schmidt 2010-08-12 15:41:20 EDT
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):
systemd-7-3.fc14

How reproducible:
reliably

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:
StandardInput=tty
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 16:05:23 EDT
c.f. https://bugzilla.redhat.com/show_bug.cgi?id=623561#c5 ?
Comment 2 Michal Schmidt 2010-08-12 18:15:06 EDT
(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-12 20:36:21 EDT
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 13:35:13 EDT
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 13:35:41 EDT
Fixed now upstream.

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