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/
Home Products Support Community News


Re: [Xen-devel] Re: Continuing problems booting

To: Gerd Hoffmann <kraxel@xxxxxxxxxx>
Subject: Re: [Xen-devel] Re: Continuing problems booting
From: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Date: Mon, 09 Mar 2009 09:35:41 -0700
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, M A Young <m.a.young@xxxxxxxxxxxx>
Delivery-date: Mon, 09 Mar 2009 09:36:07 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <49B53C44.1090706@xxxxxxxxxx>
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>
References: <alpine.GSO.2.00.0902201239010.757@xxxxxxxxxxxxxxxx> <alpine.GSO.2.00.0902201554500.757@xxxxxxxxxxxxxxxx> <alpine.LFD.2.00.0902211225540.14632@xxxxxxxxxxxxxxx> <49A0F68D.9070306@xxxxxxxx> <alpine.LFD.2.00.0902220922040.4149@xxxxxxxxxxxxxxx> <alpine.LFD.2.00.0902221449410.17196@xxxxxxxxxxxxxxx> <49A187B8.7000902@xxxxxxxx> <alpine.LFD.2.00.0902222257230.4472@xxxxxxxxxxxxxxx> <49A1DD80.1080903@xxxxxxxx> <alpine.LFD.2.00.0902222359090.4472@xxxxxxxxxxxxxxx> <49A241EC.3050300@xxxxxxxx> <alpine.LFD.2.00.0902242228550.12607@xxxxxxxxxxxxxxx> <alpine.LFD.2.00.0902272317030.17305@xxxxxxxxxxxxxxx> <49A890FF.4080803@xxxxxxxx> <49ABAF7C.6050906@xxxxxxxxxx> <49AF5FEB.4010508@xxxxxxxx> <49AF80C1.2060307@xxxxxxxxxx> <49AFB122.5040301@xxxxxxxxxx> <49B02069.5000207@xxxxxxxx> <49B12FE4.7050503@xxxxxxxxxx> <49B139A1.6050002@xxxxxxxxxx> <49B13F70.1060802@xxxxxxxx> <49B537F2.8070106@xxxxxxxxxx> <49B53C44.1090706@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (X11/20090105)
Gerd Hoffmann wrote:
Gerd Hoffmann wrote:
i.e. early iomap setup is different in 32bit and 64bit.  Which would
also explain why vgacon works just fine in 64bit mode.

I think it is something else.

arch/x86/mm/init_64.c, phys_pte_init():

         * We will re-use the existing mapping.
         * Xen for example has some special requirements, like mapping
         * pagetable pages as RO. So assume someone who pre-setup
         * these mappings are more intelligent.
        if (pte_val(*pte)) {

I think that does also make sure vga mappings are not overwritten with
something else.  32bit seems to have no equivalent for this though ...
It does, in a fairly hacky and disgusting way. During boot, we use a special version of xen_set_pte which ignores attempts to convert a RO->RW mapping, in order to protect existing pagetable mappings. But it probably won't help if someone is trying to replace the ISA mappings with something else. In theory all those mappings should be created with _PAGE_IOMAP anyway, so we'd do the right thing; but I don't think that's happening. In the meantime I could extend the hack to look for attempts to overwrite _PAGE_IOMAP mappings or something... Or force _PAGE_IOMAP on for pfns in the ISA window.

Fortunately there seems to be an active attempt to unify 32 and 64-bit mapping creation, should help (so long as it converges on the 64-bit code, which is more sensible).


Xen-devel mailing list