Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Mar 1995 02:46:07 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        current@FreeBSD.org, uhclem@nemesis.lonestar.org
Subject:   Re: Invalid DOSpartition table may be a bad idea
Message-ID:  <199503261646.CAA27307@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>[2]If there is no DOSpartition table then there is one slice (the whole
>[2]disk).  Unfortunately you have to have a DOSpartition table to boot with
>[2]biosboot, and disklabel -B writes a dummy DOSpartition table whether you
>[2]want it or not.  Fortunately it writes an _invalid_ DOSpartition table.

>If I understand what you are saying here, this may be a bad thing.
>Windows 95 (which I have to run on some systems at work) takes a disk with
>a missing or invalid partition table as an open invitation to automatically
>initialize the entire disk for Windows 95 by putting a "use entire disk"
>DOS partition table in there.

The FreeBSD invalid DOSpartition table is historical baggage.  I haven't
been able to eradicate it.  Perhaps Windows 95 will do a better job :-).

What does Windows 95 consider to be an invalid table?  We want a table
with one partition that covers the whole disk _including_ the MBR to
be valid, but that may be an invalid table for DOS.

The slice driver does the following validity checks:

1) Last 2 bytes in MBR must be 0x55, 0xAA, else table is ignored.
2) For each partition, the C/H/S start and end must equal the logical
   start and end, else a warning is printed.  The logical start and end
   are always considered valid.  If the logical start or end corresponds
   to a C >= 1024, then no warning is printed in the following cases:
   a) C = 1023, H = max, S = max.
   b) C = correct mod 1024, H = correct, S = correct.

It doesn't do any overlap or ordering checks.

Bruce



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