[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Guest-vs-Host MTRR/PAT conflict and a crash?
On 12/12/07 22:13, "David Stone" <unclestoner@xxxxxxxxx> wrote: > root@localhost xen]# (XEN) mtrr.c:552:d1 Conflict occurs for a given > guest l1e flags:63 at 10000000 (the effective mm type:6), because the > host mtrr type is:0 > (XEN) CPU 1: Machine Check Exception: 0000000000000005 > (XEN) Bank 0: b200004000000800 > (XEN) Bank 5: b200121020080400 > (XEN) > (XEN) **************************************** > (XEN) Panic on CPU 1: > (XEN) CPU context corrupt**************************************** > (XEN) > (XEN) Reboot in five seconds.. That looks like the CPU toasted itself. Bits 0-16 == 0x0400 in a machine-check status register means 'CPU internal timer error'. Perhaps this #MC means something else in the context of VT-d though? We probably need someone from Intel to help decode what happened here. > I guess my question is can someone give a higher-level explaination of > how MTRR/PAT is supposed to work between Xen (the real MTRRs and real > PATs in the real ("shadow") PTEs) and an HVM DomU (virtual MTRRs and > fake PATs in the fake PTEs)? You pretty much described it yourself. It tries to pick a shadow-pte PAT value which, coupled with the physical MTRR value for that physical address, will give the same cache attribute as the guest virtual PAT/MTRR combination. If it can't find a match (not entirely unlikely I suspect) then we print a warning and fall back to UC. This code is quite 'fresh' and definitely open for changes based on real-world testing. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |