Re: [PATCH] reserve end-of-conventional-memory to 1MB on 32-bit

From: Alexander van Heukelum
Date: Fri Feb 29 2008 - 13:57:10 EST



On Fri, 29 Feb 2008 10:44:36 -0800, "H. Peter Anvin" <hpa@xxxxxxxxx>
said:
> Alexander van Heukelum wrote:
> >
> > My first guess is that the BIOS data area is completely non-existent for
> > Xen.
> > Is it guaranteed that the memory is zeroed out on boot? In that case we
> > can
> > special-case it easily:
> >
> > change:
> > /* Paranoia: should never happen, but... */
> > if (lowmem >= 0x100000)
> > lowmem = 0xa0000;
> >
> > into:
> > /* Strange case, like Xen ;) */
> > if (lowmem == 0 || lowmem >= 0x100000)
> > lowmem = 0x9f000;
> >
> > Can you test that?
> >
>
> The EBDA is optional anyway; I presume it should have a zero pointer if
> it isn't present.

Correct, but the value that indicates the size of the conventional
memory
area must be set. At least on any real hardware. My guess is that both
values read as 0 on Xen, which causes 0-0x100000 to be reserved. If that
is always the case the workaround is fine, I think.

Alexander

> -hpa
--
Alexander van Heukelum
heukelum@xxxxxxxxxxx

--
http://www.fastmail.fm - mmm... Fastmail...

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/