Date: Sat, 16 Nov 1996 22:33:19 -0800 From: Erich Boleyn <erich@uruk.org> To: dg@root.com Cc: hackers@freebsd.org Subject: Re: Memory probe(s) in FreeBSD Message-ID: <E0vP0nA-0004qS-00@uruk.org> In-Reply-To: Your message of "Sat, 16 Nov 1996 17:44:50 PST." <199611170144.RAA17595@root.com>
next in thread | previous in thread | raw e-mail | index | archive | help
David Greenman <dg@root.com> writes: > >I would argue that the BIOS values should always be used, and the RTC > >values simply ignored unless something specific (like the SMP probe) needs > >them. > > I seem to recall that there was a problem with doing this on some systems, > but since my memory is so vague, I'm inclined to agree with you. :-) It's > probably that old FreeBSD bootblocks didn't pass in the BIOS information (via > the bootinfo struct)...but this was so long ago that I don't think it matters > anymore. Perhaps it should use the RTC numbers if the passed-in BIOS numbers > are zero? There is a "valid" flag set in the info passed by the bootloader. You'll see it if you look in "i386/i386/machdep.c". What I'd suggest is to use the values from the bootloader if they are "valid", or otherwise use the RTC values. Just take out the current parts where it complains if the RTC values are different from the BIOS values. It is confusing and on many modern machines they are usually different anyway, so you'll see it all the time for no good reason. As to there being a problem a while ago... the problem was that the FreeBSD bootblocks read the return value from the EAX register for the upper memory BIOS call, where it is only valid for the AX register. Some machines return garbage in the high bits of EAX. The proper thing to do is to zero the top 16 bits of EAX after the INT 0x15 AH=0x88 call in the bootloader, not in the kernel proper (again, because some bootloaders might pass valid information from other BIOS interfaces). -- Erich Stefan Boleyn \_ E-mail (preferred): <erich@uruk.org> Mad Genius wanna-be, CyberMuffin \__ (finger me for other stats) Web: http://www.uruk.org/~erich/ Motto: "I'll live forever or die trying"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E0vP0nA-0004qS-00>