[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#401916:



On Tue, Feb 06, 2007 at 11:14:34AM +0100, Michael Prokop wrote:
* David Härdeman <david@hardeman.nu> [20070201 18:08]:
 On Thu, Feb 01, 2007 at 05:16:11PM +0100, maximilian attems wrote:
> On Thu, Feb 01, 2007 at 04:38:03PM +0100, David Härdeman wrote:
>> So, as a workaround for Etch until this is fixed (presumably by upstream
>> changes to udev and/or the kernel), how about changing the following lines
>> in the udev initramfs script:
>>   udevtrigger
>>   udevsettle || true
>> to something like this:
>>   udevtrigger
>>   udevsettle || true
>>   while ps | grep -q "[usb-stor-scan]"; do
>>       sleep 1;
>>   done
>>   while ps | grep -q "[scsi_scan_.*]"; do
>>       sleep 1;
>>   done
>>   udevsettle || true

Ok, after running several different tests: nope, this does not fix
the problem. The usb stuff is running very asynchron. :(
...
I tried to find out what other distributions do and I like the
approaches of for example OLPC and SuSE. They use an udev rule for
creating the /dev/root device as an symlink to the main device,
like:

 SUBSYSTEM=="block", SYSFS{dev}=="$major:$minor", SYMLINK+="root"

I tried to adopt the code for Debian's initramfs-tools but udev does
not work as I expect it to (I do not find any devices inside /dev
created by udev - huh?!) so I could not resolve the issue so far. :(

Unfortunately this wouldn't work because scripts which are independent of udev might also bring up the root partition (e.g. lvm, evms, cryptsetup). At least that is my understanding...

...
Any further tips, hints,... what I could try?

Could you try these lines in the udev script and then mail the contents of /begin.ps, /middle.ps and /finish.ps? It would be interesting to see if we can find out why the previously suggested approach didn't work:

udevtrigger
udevsettle || true
ps > /begin.ps
while ps | grep -q "usb-stor-scan"; do
 sleep 1;
done
while ps | grep -q "scsi_scan_"; do
 sleep 1;
done
ps > /middle.ps
udevsettle || true
ps > /finish.ps


--
David Härdeman



Reply to: