geninitrd + udev

Marcin Krol hawk at limanowa.net
Tue Mar 11 00:39:56 CET 2008


I've been playing a bit with udev inside initrd. Currently it doesn't 
work at all because after starting 'udevd --daemon' /dev is almost empty 
(just basic entries like null, console, etc., no device nodes). This may 
be fixed by using PROBESTATICMODULES=yes in geninitrd (just commited 
small fixes to make this option work).

So here is a question to people who know udev better than I. Should we 
always call udevsettle and udevtrigger after starting udevd? IMHO yes. 
Otherwise there will be no /dev entries for devices supported by modules 
which were loaded before udevd was started. If answer will be 'yes' then 
I'll drop PROBESTATICMODULES variable and make udevsettle/udevtrigger 
always executed after udevd. If answer will be 'no' then what must be 
done to populate /dev with nodes for devices initiated before starting 
udevd.

Now, even after applying changes proposed above there was still problem 
with mdassemble. /dev/mdX nodes were not created by udev making 
mdassemble fail. This will be probably fixed by this change:
http://cvs.pld-linux.org/cgi-bin/cvsweb/SPECS/mdadm.spec?r1=1.73&r2=1.74

I'll test it tomorrow. I'll also test initrd with udev and lvm.

M.


More information about the pld-devel-en mailing list