Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Oct 2002 08:47:13 -0400 (EDT)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        ticso@cicely.de
Cc:        Poul-Henning Kamp <phk@critter.freebsd.dk>, freebsd-alpha@FreeBSD.ORG
Subject:   Re: booting UFS2 on alpha (was: cvs commit: src/sys/boot/common ufsread.c)
Message-ID:  <15782.51281.422120.59406@grasshopper.cs.duke.edu>
In-Reply-To: <20021011104520.GY17920@cicely8.cicely.de>
References:  <20021010210124.GV17920@cicely8.cicely.de> <14845.1034332326@critter.freebsd.dk> <20021011104520.GY17920@cicely8.cicely.de>

next in thread | previous in thread | raw e-mail | index | archive | help

Bernd Walter writes:
 > > Is there some place which documents what the requirements for being
 > > a valid boot-block is ?
 > 
 > None that I know about.
 > Maybe someone else on the alpha list knows?
 > 

Pages (III) 3-36 and 3-37 of the brown book describe the boot
block format.

Bascially, everything below offset 480 (which is where the count goes)
is reserved.  488 is the starting lbn, 496 are the flags,
and 504 is a checksum:


63............................,.0
|Reserved (VAX compat)		| :BB
|Reserved (Expansion)		| :+136
|Reserved			| :+472
|Count	(LBNS)			| :+480
|Starting LBM			| :+488
|Flags				| :+496
|Checksum			| :+504
................................  :+512

The first thing I'd look at is the checksum.  The brown book has this
to say about the checksum:

"The console computes the checksum of the first 63 quadwords in the
block as a 64-bit sum, ignoring overflow.  The computation includes
both reserved regions."

Its too bad we don't have a Bird to try these on.  They'ed spit
out the AUDIT_CHECKSUM_GOOD, AUDIT_LOAD_BEGINS, AUDIT_LOAD_DONE
messages to let you know where in the bootstrap it failed.

Drew

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15782.51281.422120.59406>