From owner-freebsd-hackers Fri Sep 14 13:53:23 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from mail.speakeasy.net (mail5.speakeasy.net [216.254.0.205]) by hub.freebsd.org (Postfix) with ESMTP id 496E337B403 for ; Fri, 14 Sep 2001 13:53:10 -0700 (PDT) Received: (qmail 46345 invoked from network); 14 Sep 2001 20:53:09 -0000 Received: from unknown (HELO laptop.baldwin.cx) ([64.81.54.73]) (envelope-sender ) by mail5.speakeasy.net (qmail-ldap-1.03) with SMTP for ; 14 Sep 2001 20:53:09 -0000 Message-ID: X-Mailer: XFMail 1.4.0 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <200109142039.f8EKdNT75021@ambrisko.com> Date: Fri, 14 Sep 2001 13:53:01 -0700 (PDT) From: John Baldwin To: Doug Ambrisko Subject: Re: Does boot1 still have a > 1023 cyl limit? Cc: dhw@whistle.com, mark@whistle.com, freebsd-hackers@FreeBSD.ORG, roam@ringlet.net, msmith@FreeBSD.ORG, kstewart@urx.com, rnordier@FreeBSD.ORG Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On 14-Sep-01 Doug Ambrisko wrote: > rnordier@FreeBSD.ORG writes: >| Kent Stewart wrote: >| >| > Mike Smith wrote: >| > > >| > > > So.. if I read you right, booting correctly for > 1024 cylinders works >| > > > if boot0 knows about it. Isn't boot0 the one in the MBR, not in the >| > > > fbsd >| > > > slice? Does this mean that boot1 and boot2 should work just fine if >| > > > they >| > > > are loaded by another kind of MBR loader (say, Grub), and they find >| > > > out >| > > > that they are placed beyond the 1023th cylinder? >| > > >| > > This should work, yes. >| > >| > I tried this with a boot1 from FreeBSD 4.4-rc and get a BTX error. I >| > had to go back to the boot1 from 4.3 before I could boot. >| >| That could be serious. Can you post a brief description of your >| hardware, together with the BTX register dump if possible? boot1 was >| changed to address some problems with certain hardware, so it is >| important to know if other incompatibilities have been introduced. > > ... in 4.3: > warp% nm boot1.o | grep flags > 00000199 t flags > warp% > > in -current > a21p% !nm > nm boot1.o | grep flags > 000001ba t flags > a21p% > > Is someone writing into boot1 "flags"? Then there is a problem since this > has moved. We did some work to avoid this "linking type" problem for xread > in boot2.c to prevent this type of error. Do we have to do it for "flags"? > > I see in libdisk: > static void > Cfg_Boot_Mgr(u_char *mbr, int edd) > { > if (mbr[0x1b0] == 0x66 && mbr[0x1b1] == 0xbb) { > if (edd) > mbr[0x1bb] |= 0x80; /* Packet mode on */ > else > mbr[0x1bb] &= 0x7f; /* Packet mode off */ > } > } This is for boot0. Nothing should be touching boot1 flags. My guess is that someone has somehow mixed an old boot2 with the new boot1 which is jumping to the wrong place to call xread. The "code" at cs:eip looks a lot like the BPB in boot1 now. -- John Baldwin -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message