FDisk won't detect or accept correct disk geometry from BIOS

W. Sierke ws+freebsd-questions at au.dyndns.ws
Thu Jan 22 23:26:30 PST 2004


"Keith Kelly" wrote:
> > On Jan 22, 2004, at 5:24 PM, Keith Kelly wrote:
> > > I already tried (with both 4.9 and 5.1) letting the FreeBSD install
> > > proceed
> > > with fdisk's  geometry value assumptions, and what I always get is a
> > > non-bootable hard drive that gives the "Missing operating system"
> > > error at
> > > boot.
> >
> > Sufficiently old motherboards and BIOS versions don't understand the
> > LBA addressing mode used by modern drives, and are limited to seeing
> > approx 8.4 GB using the classic C/H/S values.  See whether the BIOS
> > lets you configure the drive to LBA mode rather than "automatic",
> > "C/H/S", or "extended C/H/S" mode.  If it doesn't, check to see whether
> > there is a BIOS update available for your hardware.
>
> The motherboard is not old.  It is an MSI KT4 Ultra motherboard, if I
> remember the model number correctly off the top of my head, for the Athlon
> XP architecture.  The BIOS doesn't even explicitly list what mode (LBA,
CHS,
> extended CHS) it is using to address the drive -- I just set it to "Auto",
> it detects the device name, and fills out a small listing telling me the
> C/H/S geometry it is using.  The motherboard is already running the latest
> available BIOS update from MSI.

From: "Christopher Turner" <christopher at contemplation.org>
> I have two 40Gig Seagate Baracuda IV's.
>
> The physical drive is 1023/256/63
> The BIOS detects it at 1024/255/63

I have an 80G Seagate (ST380024A) attached to an old MB (pentium socket
7(?)) with an AMI BIOS. Seagate specify the logical geometry (for Barracuda
ATA V drives) as 16383/16/63. This is also what the BIOS auto-detects the
drive as. (Note this corresponds to only 8G.) I used this as the BIOS
setting to install FreeBSD.

However, FreeBSD (4.8) wouldn't boot from the drive until I dropped the BIOS
heads setting down (to 16383/15/63). FreeBSD happily ignored this setting
change which was done after FreeBSD had been installed. I had assumed that
this was a bug in the BIOS. I wonder now whether there is some quirk in
FreeBSD's boot managers/loaders that is affected by BIOS settings (perhaps
with specific BIOSes)? The AMI BIOS has LBA, Block mode and 32-bit mode
settings enabled.

To further add to the curiosity, fdisk reports the drive as 9729/255/63
(which is 5103 sectors short of the drive's full capacity). dmesg.boot,
however, shows:

ad0: 76319MB <ST380024A> [155061/16/63] at ata0-master WDMA2

which corresponds to the drive's full capacity.


Wayne



More information about the freebsd-questions mailing list