WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] mapping of memory below 16Mb

To: Jan Beulich <jbeulich@xxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] mapping of memory below 16Mb
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Thu, 24 Jan 2008 16:22:40 +0000
Delivery-date: Thu, 24 Jan 2008 08:23:23 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <C3BE5EAE.1B616%Keir.Fraser@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AchenYL0wYC7+8qQEdyCrwAX8io7RQAB9Pq2
Thread-topic: [Xen-devel] mapping of memory below 16Mb
User-agent: Microsoft-Entourage/11.3.6.070618
On 24/1/08 15:26, "Keir Fraser" <Keir.Fraser@xxxxxxxxxxxx> wrote:

>> One point I got a little surprised about while doing the 1Gb page support:
>> The 1:1 mapping of the low 16 Mb (and most significantly the first Mb)
>> created at boot time is being retained permanently. Shouldn't Xen be
>> following the E820 map also for this memory range (by either not
>> mapping non-RAM at all or at best mapping them UC/WP)?
> 
> Below 1MB is a special case, and 1MB-16MB we're dodging BIOS tables, not
> actual hardware. At least this is the case for all system I know about. If
> there are exceptions which we care about, then we can try harder. Otherwise
> that code is quite complicated enough as it is.

Actually this isn't hard to fix now I think about it. Also we should be
mapping the range 0-4MB or 0-2MB with 4kB mappings anyway, to avoid
conflicting with memory access constraints specified by the fixed MTRRs.
Every modern BIOS sets the fixed MTRRs with a mixture of memory types, and
if we map that range with a superpage we either get undefined behaviour or
at best (e.g., Intel CPUs) the processor will implicitly shatter the
superpage mapping so that we get 4kB-mapping levels of performance anyway.

This has a side 'benefit' that the range 0-1GB cannot be mapped with a 1GB
superpage mapping, and that simplifies your patch a bit (since we will never
need to free the statically-allocated first few l2e ident mapping pages).

 -- Keir



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel