On Tuesday 25 of August 2009, Arkadiusz Miskiewicz wrote: > On Tuesday 25 of August 2009, you wrote: > > On Tue, 2009-08-25 at 21:44 +0200, Arkadiusz Miskiewicz wrote: > > > On Tuesday 25 of August 2009, James Bottomley wrote: > > > > On Tue, 2009-08-25 at 21:24 +0200, Arkadiusz Miskiewicz wrote: > > > > > What could be the reason for scsi_wait_scan not waiting untill all > > > > > disks are found? > > > > > > > > > > I'm testing 2.6.30.5 on hardware with LSI Logic / Symbios Logic > > > > > MegaRAID 530 SCSI 320-0X RAID controller and modprobe > > > > > scsi_wait_scan finishes earlier than disks are found. > > > > > > > > > > My initrd (romfs) does: > > > > > insmod /lib/modules/2.6.30.5-0.3/kernel/drivers/scsi/scsi_mod.ko > > > > > insmod > > > > > /lib/modules/2.6.30.5-0.3/kernel/drivers/scsi/megaraid/megaraid_mm. > > > > >ko insmod > > > > > /lib/modules/2.6.30.5-0.3/kernel/drivers/scsi/megaraid/megaraid_mbo > > > > >x. ko insmod /lib/modules/2.6.30.5-0.3/kernel/lib/crc-t10dif.ko > > > > > insmod /lib/modules/2.6.30.5-0.3/kernel/drivers/scsi/sd_mod.ko > > > > > insmod > > > > > /lib/modules/2.6.30.5-0.3/kernel/drivers/scsi/scsi_wait_scan.ko > > > > > insmod /lib/modules/2.6.30.5-0.3/kernel/fs/exportfs/exportfs.ko > > > > > insmod /lib/modules/2.6.30.5-0.3/kernel/fs/xfs/xfs.ko > > > > > if [ "${ROOT##/dev/}" != "${ROOT}" ]; then > > > > > rootnr="$(busybox awk -v rootnode="${ROOT##/dev/}" '$4 == rootnode > > > > > { print 256 * $1 + $2 }' /proc/partitions)" > > > > > if [ -n "$rootnr" ]; then > > > > > echo "$rootnr" > /proc/sys/kernel/real-root-dev > > > > > fi > > > > > > > > > > > > > > > Now if I add sleep few seconds or /bin/sh at the end of this > > > > > initrd, then boot and then disks are detected properly and rootfs > > > > > is mounted properly (after I exit from sh in case when /bin/sh is > > > > > used). > > > > > > > > > > The question remains - why scsi_wait_scan doesn't wait? > > > > > > > > It's caused by the sd async patches. What's happening is wait_scan > > > > is waiting until all the scans are complete, but now sd attachment > > > > may not be completed by the time that happens. So, although you have > > > > a scanned disk, you can't mount it without and attached sd driver. > > > > > > > > Hopefully when > > > > all initrds are configured to wait until root appears, this problem > > > > will go away. > > > > > > Uh, ugly. I'll disable SCSI_SCAN_ASYNC here then. > > > > That won't actually help: the sd async scan is a separate mechanism not > > tied to that variable > > I assume there is no configurable way to disable this? I found this patch http://marc.info/?l=linux-scsi&m=124388639906873&w=2 but it doesn't work on 30.5 (it's still not waiting untill everything is discovered) -- Arkadiusz Miśkiewicz PLD/Linux Team arekm / maven.pl http://ftp.pld-linux.org/ -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html