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

Re: snapshot booting problem for spar64



"Berk D. Demir" <bdd@ieee.org> writes:
> Date: Tue, 3 Jun 2003 11:13:40 +0300
> From: "Berk D. Demir" <bdd@ieee.org>
> To: tech@openbsd.org
> Subject: snapshot booting problem for spar64
> Message-ID: <20030603081340.GA3742@tarp.tubitak.gov.tr>
> 
> Hi,
> 
> As Theo requested, here is a problem report for the latest snapshot.
> I did a fresh install from local ftp mirror.
> Everything goes well with the installation procedure but when it tries
> to boot the new shiny system, fails with an error and requests boot
> command.
> 
> Here's a terminal output
> ---
> Sun Ultra5/10 UPA/PCI (UltraSPARC-IIi 270 Mhz), Keyboard Present
> OpenBoot 3.11, 128 MB memory installed, Serial #10506835
> Ethernet address *:*:**:**:**:**, Host ID: ********
> 
> Rebooting with command boot
> Boot device: disk:a File and args
> ...>> OpenBSD 3.3-current (obj) #38: Sun Jun 1 16:03:55 MDT 2003
>      deraadt@sparc64.openbsd.org:/usr/src/sys/arch/sparc64/stand/ofwboot/obj
> : trying bsd ...
> open /pci@1f,0/pci@1,1/ide@3/disk@0,0:a/bsd : No such file or directory
> : trying obsd ...
> open /pci@1f,0/pci@1,1/ide@3/disk@0,0:a/obsd : No such file or directory
> 
> Boot:
> ---
> 
> The interesting point is, when you type "bsd" like nothing happened, it
> gracefully boots the bsd kernel.
> 
> I tried to reinstall bootblk with installboot but the it acts the same.
> 
> Is this a strl{cpy,cat} converison round bug?
> 
> Machine is an Ultra5 with two IDE disks.
> I didn't attach dmesg output to save bandwidth. If you need, I can send
> it.

dmesg output will not help here.

Looks to me like a space padding problem - "bsd " instead of "bsd"
etc.  Probably that's because of
	char *kernels[] = {
		"bsd ",
		"obsd ",
		NULL
	};
instead of
	char *kernels[] = {
		"bsd",
		"obsd",
		NULL
	};
in
	/usr/src/sys/arch/sparc64/stand/ofwboot/boot.c
which is, now that I look at this, probably my fault.  This isn't
actually a strlcpy bug, but rather, the result of unsnarling some
twisted parsing code, which I hadn't realized included spaces at the
end of the table entries.  Sorry about that.

On the bright side, at least your copy got to a boot prompt.  The
original twisted parsing code ran off the end of the world when it
couldn't find a bootable kernel in the default list.

					-Marcus Watts