From owner-freebsd-stable Fri Oct 27 14:12:34 2000 Delivered-To: freebsd-stable@freebsd.org Received: from siri.nordier.com (c2-dbn-94.dial-up.net [196.34.155.222]) by hub.freebsd.org (Postfix) with ESMTP id 607C637B479; Fri, 27 Oct 2000 14:12:23 -0700 (PDT) Received: (from rnordier@localhost) by siri.nordier.com (8.9.3/8.6.12) id XAA32064; Fri, 27 Oct 2000 23:11:26 +0200 (SAST) From: Robert Nordier Message-Id: <200010272111.XAA32064@siri.nordier.com> Subject: Re: Really odd "BTX halted" problem booting FreeBSD on VALinux To: fclift@verio.net (Fred Clift) Date: Fri, 27 Oct 2000 23:11:26 +0200 (SAST) Cc: dillon@earth.backplane.com (Matt Dillon), tlambert@primenet.com (Terry Lambert), freebsd-stable@FreeBSD.ORG (freebsd-stable@FreeBSD.ORG), hackers@FreeBSD.ORG In-Reply-To: from "Fred Clift" at Oct 27, 2000 02:45:10 PM X-Mailer: ELM [version 2.5 PL3] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Fred Clift wrote: > On Fri, 27 Oct 2000, Robert Nordier wrote: > > > > > Just doing the disklabel -w -r followed by the disklabel -B is creating > > a dangerously dedicated disk, which your BIOS apparently doesn't like. > > (See the first hex dump you did, where boot1 has ended up in the MBR.) > > > > That's why installing boot blocks is messing with the partition table, > > to answer the question you asked elsewhere. > > > > You need to dd and fdisk before the disklabel commands, which will give > > you a standard partition table (at the cost of 63 sectors of disk > > space). > > > So why not just put a valid partition table inside the boot1 that gets put > on sector zero? When boot1 gets dropped onto sector zero, it does hose > the partition table, but there is no reason why a valid one couln't be put > there insead of this broken one: There seems to be a lot of muddy thinking going around, so let's go over some basics: o Dangerously dedicated mode was created so that boot1 could sit on sector zero, as it does on non-PC implementations of UNIX. (It also saved space, since PC partitions are usually head- aligned and up to 62 sectors could be wasted, though that's hardly an issue now.) o A dangerously dedicated disk can _never_ be a valid PC partition. By even a loose definition, a PC partition always _excludes_ the MBR. By definition, a dangerously dedicated disk explicitly _includes_ the MBR sector. o Given that a dangerously dedicated disk is an invalid PC partition and can't be otherwise, the PC partition table entry is invalid and can't be otherwise. It is therefore better to "limit the damage" and always use the same invalid entry 0x80, 0x00, 0x01, 0x00 0xa5, 0xff, 0xff, 0xff 0x00, 0x00, 0x00, 0x00 0x50, 0xc3, 0x00, 0x00 rather than change it to better fit the disk. > > Information from DOS bootblock is: > The data for partition 1 is: > > The data for partition 2 is: > > The data for partition 3 is: > > The data for partition 4 is: > sysid 165,(FreeBSD/NetBSD/386BSD) > start 0, size 50000 (24 Meg), flag 80 (active) > beg: cyl 0/ sector 1/ head 0; > end: cyl 1023/ sector 63/ head 255 > > Why not edit the partition table after boot1 gets installed? Because you can never make it valid. By keeping it the same set of illegal values, at least the system can recognise it. A final point: o Don't use dangerously dedicated mode. -- Robert Nordier rnordier@nordier.com rnordier@FreeBSD.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message