Hi,

> Thus spake Mitsuru IWASAKI <[EMAIL PROTECTED]>:
> > OK, it seems to be difficult to determine the region for any BIOSes.
> > I've decided to introduce a new loader tunable to indicate that BIOS
> > has broken int 12H.  Attached patch back out 1.385.2.26 changes to
> > support older BIOSes, and add support for broken int 12 BIOSes by
> > new loader tunable.
> > I don't think this is the best solution, but it is probably good for
> > all people for now.
> > I'll make the equivalent patches for CURRENT and commit them,
> > then MFC soon.
> > Sorry for inconvenience, folks.
> 
> This approach is okay with me in the sense that it doesn't break
> anything that wasn't already broken, but as you say, I think we
> can do better.  Below is a patch that merely extracts the basemem
> size from the bootinfo structure for the purposes of mapping the
> EBDA.  I retained the int 12h fallback just to be safe, but I
> think the bootinfo structure is initialized with a valid basemem
> for all loaders since at least 1998.  (Maybe the fallbacks in the
> kernel should be removed entirely to avoid redundancy, or moved
> from loader and boot2 to locore.s.)

Yes, this idea was in my first patch actually, and this was not
good solution as Bruce explained.  Please see the archive at:
http://docs.freebsd.org/cgi/getmsg.cgi?fetch=94412+0+archive/2002/freebsd-current/20021006.freebsd-current

I think that this is not so easy problem, we need to re-design memory
size detection code carefully considering PAE support in future.  This
will take time, so the patch I committed into CURRENT last night is
reasonable for the time being, I think.

Thanks

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to