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: Xen 3.2 and Big Real Mode support?

To: Guillaume Thouvenin <guillaume.thouvenin@xxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Re: Xen 3.2 and Big Real Mode support?
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Wed, 06 Feb 2008 08:28:00 +0000
Delivery-date: Wed, 06 Feb 2008 00:28:18 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <20080206092030.6ec099c9@frecb000711>
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: Achomi7UbXq2JtSNEdyZaAAWy6hiGQ==
Thread-topic: [Xen-devel] Re: Xen 3.2 and Big Real Mode support?
User-agent: Microsoft-Entourage/
On 6/2/08 08:20, "Guillaume Thouvenin" <guillaume.thouvenin@xxxxxxxxxxxx>

>> By the way, this is now fixed with tip of the xen-unstable tree (changeset
>> 16980), obtainable from http://xenbits.xensource.com/staging/xen-unstable.hg
> Waow. I don't understand everything (and especially how you find that
> the problem was here) but it works now.
>  I have another question, why did you remove VMXASSIST? I saw that you
> replaced all invocation to VMXASSIST by only one call to
> vmx_goto_realmode() in arch/x86/hvm/svm/x86_64/exits.S. Are there some
> links to any discussion about this choice?

The new emulation replaces vmxassist. There are fundamental limitations to
teh vmxassist approach which mean that it could never execute, for example,
the openSuSE install CDs because of their use of 'big real' mode. This is
talked about in a few threads on xen-devel, e.g.:
It's bit hard to understand without more context though!

Roughly speaking the main pro for emulation is more accurate execution
leading to working with a wider range of bootloaders. It's also less code,
and I understand the code (since I wrote it) so I can maintain it better in
future. The main con is that it may be a bit slower than vmxassist, since
vmxassist did direct execution of most real-mode instructions rather than
emulating all of them. But actually most time is spent emulating I/O in both
cases, so I think the speed difference is not that important.

Now that emulation seems to work reliably in xen-unstable (apart from
openSuSE 10.1 CD, argh!) I will remove vmxassist entirely. Also I will
backport the emulation fixes to 3.2-testing so that real-mode emulation will
work properly in 3.2.1. I will keep VMXASSIST as the default in 3.2 branch

 -- Keir

Xen-devel mailing list