Hi,
It appears that the failure to created /dev/hd* devices is a simple timing
issue. If I change 'sleep 2' to 'sleep 20' right after udevsynthesize
call on line 77 in init, then the devices are created fine and root disk
is mounted. However, it still fails to complete the boot with the
following symptoms:
[...]
Begin: Running /scripts/init-bottom ...
Done.
Kernel panic - not syncing: Attempted to kill init!
<0>Press Stop-A (L1-A) to return to the boot prom
run-init: current directory on the same filesystem as the root: error 0
The last message before the panic is emitted by the following test in
klibc's run-init.c:
/* Make sure the current directory is not on the same filesystem
as the root directory */
if ( stat("/", &rst) || stat(".", &cst) )
die("stat");
if ( rst.st_dev == cst.st_dev )
die("current directory on the same filesystem as the root");
I've checked the values returned by stat and, surprisingly, they both were
zero. On the other hand, by invoking a shell right before run-init
invocation, I was able to confirm that the root disk is indeed mounted as
/root, and everything should be set. The only explanation I currently have
is that stat() is broken in klibc for sparc. This is indirectly confirmed
by the fact that if I remove this check, then next check (verifying the
existence of /sbin/init on the root disk using stat()) fails too.
Best regards,
Jurij Smakov [EMAIL PROTECTED]
Key: http://www.wooyd.org/pgpkey/ KeyID: C99E03CC
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]