From: Steve Ofsthun <sofsthun@virtualiron.com>
To: Petersson, Mats
Cc: xen-devel@lists.xensource.com
Subject: Re: [RFC] Hypercalls from HVM guests
Date: Fri, 07 Apr 2006 15:30:42 -0400 [thread overview]
Message-ID: <4436BDE2.5090504@virtualiron.com> (raw)
In-Reply-To: <907625E08839C4409CE5768403633E0BA7FBCF@sefsexmb1.amd.com>
Petersson, Mats wrote:
>> From: Keir Fraser [mailto:Keir.Fraser@cl.cam.ac.uk]
>>
>> I like the idea of stealing some MSR space for this, and
>> doing some initial interaction with the underlying hypervisor
>> platform via RDMSR/WRMSR to known MSRs. We could 'read' an
>> 'MSR' that would tell us the correct instruction sequence to
>> do a hypercall (either directly, or maybe tell us a 'physical
>> address' to read the hypercall transport information from --
>> then we could have a hypercall transfer page just as we
>> already do for paravirtualised guests).
>>
>> We just need to pick some MSRs that won't get used by Intel
>> or AMD in the future. There's quite a lot of addressing space
>> to carve up though.
>> :-)
>
> I like this idea, it's quirky and neat at the same time...
>
> But isn't this going to be a catch-22 situation? We don't know if we're
> virtualized or not, so we can't make hypercalls, and to find out, we
> read an unimplemented MSR, which on REAL hardware causes a GP fault (and
> probably also in SVM, since the map for SVM capturing MSR read/write
> operations is very specific - at least if we use a MSR like 0xb0000000
> or such).
This sounds like a simple to use method for communicating with the HVM code,
but I would like to gracefully detect native execution and print a useful
error message at module load time. Recovering from a native mode exception
will be very O/S specific (if allowed at all).
> Actually, maybe using an unused index for CPUID (e.g. 0xb0000000) would
> be better? As that's defined to return all zero's, and not cause any
> traps whatever value you use (unless the CPU is so old that it doesn't
> support CPUID, of course).
This sounds encouraging, but is CPUID always trapped by the HVM code?
Steve
--
Steve Ofsthun - Virtual Iron Software, Inc.
next prev parent reply other threads:[~2006-04-07 19:30 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-07 17:56 [RFC] Hypercalls from HVM guests Petersson, Mats
2006-04-07 19:30 ` Steve Ofsthun [this message]
2006-04-07 20:22 ` Anthony Liguori
2006-04-08 7:31 ` Keir Fraser
2006-04-08 14:12 ` Andi Kleen
2006-04-08 15:05 ` Keir Fraser
2006-04-12 15:39 ` Stephen C. Tweedie
2006-04-12 17:05 ` Keir Fraser
-- strict thread matches above, loose matches on Subject: below --
2006-04-09 15:08 Nakajima, Jun
2006-04-09 13:56 Nakajima, Jun
2006-04-09 14:09 ` Keir Fraser
2006-04-12 15:58 ` Stephen C. Tweedie
2006-04-08 23:33 Nakajima, Jun
2006-04-09 7:56 ` Keir Fraser
2006-04-07 17:24 Petersson, Mats
2006-04-07 17:40 ` Keir Fraser
2006-04-07 8:47 Petersson, Mats
2006-04-07 17:06 ` Steve Ofsthun
2006-04-07 2:32 Yu, Ke
2006-04-06 21:10 Steve Ofsthun
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=4436BDE2.5090504@virtualiron.com \
--to=sofsthun@virtualiron.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.