]> Zhao Yanbai Git Server - minix.git/commitdiff
ramdisk rc: start disk drivers synchronously.
authorDavid van Moolenbroek <david@minix3.org>
Thu, 1 Jul 2010 14:35:47 +0000 (14:35 +0000)
committerDavid van Moolenbroek <david@minix3.org>
Thu, 1 Jul 2010 14:35:47 +0000 (14:35 +0000)
This eliminates a race condition between the disk driver calling
sys_statectl(SYS_STATE_CLEAR_IPC_REFS) as part of driver_announce(),
and the root MFS calling sendrec(DEV_OPEN) on the disk driver.

drivers/ramdisk/rc

index 94ac386ac45243155233854752b8902e72b6ba8a..c4b37cf7112d1f8b115cc186f7f8d9f3f6cf95c9 100644 (file)
@@ -10,10 +10,10 @@ exec </dev/null
 if [ X`/bin/sysenv bios_wini` = Xyes ]
 then
        echo Using bios_wini.
-       /bin/service -cn up /bin/bios_wini -dev /dev/c0d0
+       /bin/service -c up /bin/bios_wini -dev /dev/c0d0
 else
-       /bin/service -cn up /bin/at_wini -dev /dev/c0d0 -config /etc/system.conf -label at_wini_0
-       /bin/service -cnr up /bin/at_wini -dev /dev/c1d0 -config /etc/system.conf -label at_wini_1 -args ata_instance=1
+       /bin/service -c up /bin/at_wini -dev /dev/c0d0 -config /etc/system.conf -label at_wini_0
+       /bin/service -cr up /bin/at_wini -dev /dev/c1d0 -config /etc/system.conf -label at_wini_1 -args ata_instance=1
 fi
 
 rootdev=`sysenv rootdev` || echo 'No rootdev?'