Subject: Re: [i386 1.6-R installation] disklabel doesn't obey SCSI HDD C/H/S standard
To: Alexey G. Khramkov <lamb@mustdie.ru>
From: David Laight <david@l8s.co.uk>
List: netbsd-help
Date: 06/08/2003 21:30:16
> I've tried to install NetBSD on old HP NetServer w/ 1GB HDDs. Standard
> model is x/64/32 for C/H/S values and BIOS uses this model. I can change
> geometry in fdisk, but disklabel (later) rewrites w/ "real" 2700/9/84 values.
> Therefore I get "No operation system" or "Bad magic" after rebooting.
> I don't find workaround. I'd tried OpenBSD's disklabel and leave these
> partitions untouched by NetBSD installator, but it doesn't help.

1) ignore disklabel, it doesn't affect the boot sequence (at that level)

2) The CHS values used by fdisk (and hence stored in the mbr and used
   when the pbr is read) must match those used by the bios when doing
   its CHS => LBA translation, otherwise the wrong sector gets read....

fdisk will almost always get the correct bios geometry - because it
can find the geometry for each bios disk.  So changing the numbers
is usually a really bad move (IIRC I made it rather harder to do in the
most recent version of fdisk).

If the bios is new enough to support LBA addressing you can force the
netbsd more recent versions of the MBR code to request LBA reads
(which should always find the correct sectors) by giving it an
incorrect geometry! (or by setting a flag - but you have to patch
that in by hand).

Also check that you have actually run installboot!  and that the
root partition is at the start of the bios partition.

	David

-- 
David Laight: david@l8s.co.uk