From: Keir Fraser <keir.fraser@eu.citrix.com>
To: Trolle Selander <trolle.selander@gmail.com>
Cc: xen-devel <xen-devel@lists.xensource.com>
Subject: Re: [PATCH] [RFC] More fp instructions for realmode emulation (Enables booting OS/2 as a HVM guest on Intel/VT hardware)
Date: Mon, 03 Mar 2008 12:21:50 +0000 [thread overview]
Message-ID: <C3F19DDE.1D58D%keir.fraser@eu.citrix.com> (raw)
In-Reply-To: <515922b50803030418g4df884basfb2f6278dea47a3b@mail.gmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 1880 bytes --]
I¹ll have some time to do it this afternoon.
-- Keir
On 3/3/08 12:18, "Trolle Selander" <trolle.selander@gmail.com> wrote:
> That's what I was worried about. I honestly had zilch experience working with
> assembler-level x87 stuff before Friday afternoon when I whipped up this
> patch, mainly to see if the fp instructions were all that was missing to get
> OS/2 on VT to work. I'll see if I can find time to make an exception-safe
> version of this sometime this week. I'm not worrying about life being too
> short, but rather that March 2008 is too dense... ;)
>
> On Sat, Mar 1, 2008 at 10:18 AM, Keir Fraser <keir.fraser@eu.citrix.com>
> wrote:
>> Intel SDM Volume 1 Section 8.6 ("X87 FPU Exception Synchronization") is very
>> helpful in this regard. It confirms my suspicions, that we will need to wrap
>> the FPU inline asms in some fixup glue. The only exceptions to this rule are
>> the FN* (no-wait) instructions. Properly speaking we should also check for
>> unmasked exceptions becoming pending after any FPU instruction and set the
>> faulting CS:IP in the FPU context block appropriately. But life is perhaps
>> too short. :-)
>>
>> -- Keir
>>
>>
>> On 1/3/08 08:46, "Keir Fraser" <keir.fraser@eu.citrix.com> wrote:
>>
>>> Regarding point 1: Don't FPU instructions that raise an exception only log
>>> that in the status word, to be picked up by the next FPU instruction which
>>> checks for exceptions? It strikes me that we can have previously loaded up a
>>> status word that requires an exception to occur on FWAIT, in which case
>>> semantics are broken. More worryingly, if any of the instructions you have
>>> added can cause an exception, we will crash Xen because you have not added
>>> fixup handling. Unfortunately I'm not really up on exactly how FPU exception
>>> handling works: are you?
>>
>
>
[-- Attachment #1.2: Type: text/html, Size: 2814 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
next prev parent reply other threads:[~2008-03-03 12:21 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-29 22:14 [PATCH] [RFC] More fp instructions for realmode emulation (Enables booting OS/2 as a HVM guest on Intel/VT hardware) Trolle Selander
2008-03-01 8:46 ` Keir Fraser
2008-03-01 9:18 ` Keir Fraser
2008-03-03 12:18 ` Trolle Selander
2008-03-03 12:21 ` Keir Fraser [this message]
2008-03-03 14:52 ` Andi Kleen
2008-03-03 15:00 ` Keir Fraser
2008-03-03 16:59 ` Andi Kleen
2008-03-03 17:30 ` Keir Fraser
2008-03-03 18:11 ` Andi Kleen
2008-03-04 10:13 ` Keir Fraser
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=C3F19DDE.1D58D%keir.fraser@eu.citrix.com \
--to=keir.fraser@eu.citrix.com \
--cc=trolle.selander@gmail.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.