Port-vax archive

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

Re: installboot is broken



On 2013-03-24 17:33, Matt Thomas wrote:

On Mar 24, 2013, at 9:32 AM, Johnny Billquist <bqt%softjar.se@localhost> wrote:

On 2013-03-24 16:39, Anders Magnusson wrote:
On 03/24/2013 03:36 PM, Martin Husemann wrote:
On Sun, Mar 24, 2013 at 09:21:39AM +0100, Martin Husemann wrote:
I didn't have old enough disklabel sources around, will check there.
It looks to me that installboot does exactly what disklabel -B did after
this commit:

revision 1.17
date: 1995/04/23 19:27:59;  author: ragge;  state: Exp;  lines: +3 -3
Changed to use only one bootblock file on VAX.

to sbin/disklabel/Makefile.
Vax only have one bootblock which is installed in the first 16 sectors
on the disk.
The boot block is the same for all different disk types. Which is nice :-)

Right. However, the real problem is that installboot does not use block 0 from xxboot. 
installboot instead have a structure defined with some "magic" fields, and 
installboot only changes one or two values in the boot block when you run it. It does 
copy block 1 and up from xxboot, but it totally skips block 0 of xxboot.

The reason for that is not overwrite the disklabel.

Maybe I haven't been clear enough here.
To clarify my point - I'm not trying to say that installboot should copy block 0 of xxboot straight off. What I'm trying to say is that installboot needs to merge block 0 of the disk with block 0 of the primary bootstrap. The parts that are outside of the actual disklabel should be taken from the primary bootstrap, while the parts that are the disklabel should be kept from the disk.
That is the proper way installboot should work.

        Johnny

--
Johnny Billquist                  || "I'm on a bus
                                  ||  on a psychedelic trip
email: bqt%softjar.se@localhost             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol


Home | Main Index | Thread Index | Old Index