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

[Xen-devel] The memory type of non-RAM address is WB by default?

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Subject: [Xen-devel] The memory type of non-RAM address is WB by default?
From: "Cui, Dexuan" <dexuan.cui@xxxxxxxxx>
Date: Thu, 23 Oct 2008 17:36:10 +0800
Accept-language: zh-CN, en-US
Acceptlanguage: zh-CN, en-US
Cc: "Su, Disheng" <disheng.su@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Thu, 23 Oct 2008 02:36:38 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Ack08sfKD6uwiNRuQZe6GWvOlYpURQ==
Thread-topic: The memory type of non-RAM address is WB by default?
In changeset 17471:cd5dc735bdf3(x86, hvm: Lots of MTRR/PAT emulation cleanup), 
the default memory type is set to WB and the type of each special memory range 
is set properly. Specially, [3.75G, 4G) is assumed as PCI space and marked as 
UC.

I meet with an issue:
When I "xm pci-attach" a NIC into RHEL5.1 Linux guest(memory=256M), the virtual 
MMIO BAR assigned by guest starts from 0x20000000 and I don't find guest kernel 
tries to set the MTRR registers at all; as a result, the type of the pfn is WB, 
but in hypervisor, the host mfn is UC, so when guest accesses the vBAR, there 
are many lines of such warnings printed:

(XEN) mtrr.c:400:d10 Conflict occurs for a given guest l1e flags:163 at 
20000000 (the effective mm type:6), because the host mtrr type is:0

Here I think the device should work normally since the actual host mfn  is UC, 
but we might as well fix such inconsistency.
Can't we set the default type to UC?

BTW: when I statically assign a NIC to guest via config file, since the vBAR 
assigned by hvmloader starts from 0xF0000000, I don't see the warnings.

Thanks,
-- Dexuan




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