Bug 538006

Summary: udev makes intel card crashing
Product: [Fedora] Fedora Reporter: Pierre-YvesChibon <pingou>
Component: udevAssignee: Harald Hoyer <harald>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 12CC: harald
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-11-17 07:23:51 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Attachments:
Description Flags
output from udevmonitor
none
udev.log
none
output from the while loop
none
output from the 2nd while loop none

Description Pierre-YvesChibon 2009-11-17 02:48:58 EST
Created attachment 369838 [details]
output from udevmonitor

Description of problem:
After a while (sometimes it is from the beginning) it seems that udev is crashing my machine

Version-Release number of selected component (if applicable):
udev-145-12.fc12.x86_64

How reproducible:
always

Steps to Reproduce:
1. boot 
2. wait for a while
3. crash
  
Actual results:
Computer really, really slow
When I kill udevd it comes back to life

Expected results:
working normally from the beginning

Additional info:
Attached is the output of
udevmonitor > udevmonitor.txt run while the computer was crashing
Comment 1 Harald Hoyer 2009-11-17 04:51:53 EST
Something is opening the drm device with the write flag and closes it. This causes a change event. Seems like the same thing is triggered by it.
Can you identify what it is? Boot with "udevinfo" and /var/log/messages should contain the info.
Comment 2 Pierre-YvesChibon 2009-11-17 05:01:31 EST
I see a: 
Nov 17 08:33:14 localhost kernel: [drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own
Nov 17 08:33:14 localhost kernel: [drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own

in /var/log/messages

Regarding udevinfo it says that I should use udevadm info <options> however I don't have any clue what option I shoud use, any hint ?
Comment 3 Pierre-YvesChibon 2009-11-17 05:04:45 EST
ok so I log into root, start udevd command line:

I run tail -f on /var/log/message, it gave the following output:
Nov 17 11:02:10 localhost kernel: udev: starting version 145
Nov 17 11:02:55 localhost udevadm[9070]: the program '/bin/bash' called 'udevmonitor', it should use 'udevadm monitor <options>', this will stop working in a future release

I run udevmonitor which again gave a bunch of:
UDEV  [1258452193.190305] change   /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
UDEV  [1258452193.191538] change   /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
KERNEL[1258452194.513870] change   /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
KERNEL[1258452194.514843] change   /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
UDEV  [1258452194.515617] change   /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
UDEV  [1258452194.520309] change   /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
Comment 4 Harald Hoyer 2009-11-17 05:25:03 EST
start udev daemon
# udevd

set the logging level
# udevadm control --log-priority=info

start the monitor
# udevadm monitor

... see change events...

<ctrl>-<c>
# killall udevd

# grep udev /var/log/messages > udev.log

and attach udev.log in this bugzilla.
Comment 5 Pierre-YvesChibon 2009-11-17 05:35:58 EST
udev.log attached to the bug
Comment 6 Pierre-YvesChibon 2009-11-17 05:36:24 EST
Created attachment 369855 [details]
udev.log
Comment 7 Harald Hoyer 2009-11-17 06:12:32 EST
hmm.. reminds me of bug #528312
Comment 8 Harald Hoyer 2009-11-17 06:15:16 EST
can you run:

# while true; do lsof +c 16 /dev/dri/card0;done

for a while (while udevd is looping) and post the output?
Comment 9 Pierre-YvesChibon 2009-11-17 06:34:49 EST
output from the while loop attached
Comment 10 Pierre-YvesChibon 2009-11-17 06:35:51 EST
Created attachment 369864 [details]
output from the while loop
Comment 11 Harald Hoyer 2009-11-17 07:03:36 EST
doh! I am sorry.. got the number wrong.. log is full of error messages..

please again with

# while true; do lsof +c 15 /dev/dri/card0;done
Comment 12 Pierre-YvesChibon 2009-11-17 07:12:22 EST
There is the file :)
Comment 13 Pierre-YvesChibon 2009-11-17 07:12:46 EST
Created attachment 369869 [details]
output from the 2nd while loop
Comment 14 Harald Hoyer 2009-11-17 07:23:51 EST
ok, so I see only firefox and Xorg (the X server) have this file open..

I guess, it's bug 528312  .. so I will close this bug, and you will be attached to the other bug automatically.

*** This bug has been marked as a duplicate of bug 528312 ***
Comment 15 Pierre-YvesChibon 2009-11-17 07:29:28 EST
Thanks for your help.