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: [PATCH] switch to a known good/static GDT beforekexe

To: Jan Beulich <JBeulich@xxxxxxxxxx>, Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Re: [PATCH] switch to a known good/static GDT beforekexec
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Thu, 02 Jul 2009 20:59:36 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Thu, 02 Jul 2009 13:05:06 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C67268C0.885D%keir.fraser@xxxxxxxxxxxxx>
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: Acn7CpIwZ9n09n6TQGy0FDS+0hJ09AAB2GbGAA9rBQg=
Thread-topic: [Xen-devel] Re: [PATCH] switch to a known good/static GDT beforekexec
User-agent: Microsoft-Entourage/
On 02/07/2009 13:38, "Keir Fraser" <keir.fraser@xxxxxxxxxxxxx> wrote:

>>> I have one more question then -- when need_full_gdt(n), why do we always
>>> unconditionally rewrite the l1es mapping the reserved gdt entries? Shouldn't
>>> that be done on vcpu creation only and perhaps on compat mode switch (i.e.,
>>> isn't it wasteful to do it in the context switch path)?
>> While that's correct, we're talking about a single memory write here (plus
>> the setup code), which I think is no more wasteful than adding the extra
>> checking that would be needed to see whether we switch between
>> compat and !compat (including the !need_full_gdt(p) case, where we
>> don't know what kind of mapping we currently have).
> Hm yes, fair enough.

Actually no, I'm not sure what extra checking you think you'd need? You'd
create the per-vcpu mapping when a vcpu is created and when it changes
to/from compat mode, and that would be it wouldn't it? You'd only delete
code from __context_switch(); not add different code to it?

 -- Keir

Xen-devel mailing list