Red Hat Bugzilla – Bug 195761
udev 071 breaks loading matroxfb
Last modified: 2007-11-30 17:11:35 EST
Description of problem:
there are other bugreports about new udev 071 loading unrequested fb drivers on
x init (#180003 and #179041), however my problem is exactly the opposite: i do
use matroxfb for a dualhead setup - just that udev 071 broke it.
i had to downgrade to udev 058 to fix my system.
Version-Release number of selected component (if applicable):
note: same problem with different fc4 kernels (2.6.13-1.1532, 2.6.14-1.1656,
note: same problem with different module-init-tools (3.2-0.pre9.0.FC4.4 and
Steps to Reproduce:
1. install udev-071
2. modprobe matroxfb_g450
/dev/fb0 is not created.
here is the only matroxfb related messages in dmesg:
kernel: Driver for 1-wire Dallas network protocol.
kernel: matrox_w1 0000:01:00.0: Matrox G400 GPIO transport layer for 1-wire.
it is interesting that matroxfb is loaded and "fb" is correctly listed as
character device in /proc/devices. trying old and good MAKEDEV doesn't work
framebuffer devices (fb0, fb1, etc) are correctly initialized.
notice the expected dmesg messages for my boot script:
kernel: matroxfb: Matrox G450 detected
kernel: PInS memtype = 4
kernel: matroxfb: MTRR's turned on
kernel: matroxfb: 640x480x8bpp (virtual: 640x26214)
kernel: matroxfb: framebuffer at 0xD8000000, mapped to 0xe0c80000, size 16777216
kernel: Console: switching to colour frame buffer device 80x30
kernel: fb0: MATROX frame buffer device
kernel: matroxfb_crtc2: secondary head of fb0 was registered as fb1
the boot script i have been using for ages (since kernel 2.4.10 or something):
modprobe matroxfb_crtc2 mem=2048
fbset -fb /dev/fb1 "1024x768-75" -depth 16
/dev/fb* is not created _at all_? Or just a little bit later?
If modprobe is executed, the device node is created in the background. Maybe the
fbset runs before udev can create it?
yes, it is not created at all. this is also the reason why my X fails to initialize.
i have a good background on driver development for linux 2.4, but i lost track
with udev - i don't have a clue on how it works.
so, i'm actually puzzled with two things:
1) the modules are correctly loaded, including all their dependencies. how can a
problem in udev cause then to not initialize? (i'm talking about the lack of
basic matroxfb messages on kernel log).
2) "fb" is listed in /proc/devices, so i would guess the module has sucessfuly
registered the character device. still, it doesn't work even if i do the mknod
could you provide the output of:
# find /sys -name dev
Created attachment 131243 [details]
lsmod using udev 071
Created attachment 131244 [details]
find /sys -name dev (using udev 071 - same state as lsmod)
# find /sys -name dev
Does not list any framebuffer device. Could you please post the lsmod and find
output with udev-058. Udev creates the devices according to the entries in /sys,
which are provided by the kernel. So, I suspect other (additional) modules are
Created attachment 131329 [details]
lsmod using udev 058
Created attachment 131330 [details]
find /sys -name dev (using udev 058)
"install matrox_w1 /bin/true" in /etc/modprobe.conf fixed it.
perhaps matrox_w1 is broken or something.
is this the proper fix?
This report targets the FC3 or FC4 products, which have now been EOL'd.
Could you please check that it still applies to a current Fedora release, and
either update the target product or close it ?
Christian, it was not EOL'd by the time i reported it...
unfortunately i can no longer reproduce the issue.
after using RH distros since 1998, last week i switched to opensuse (no, not
because of this problem).