[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [vMCE design RFC] Xen vMCE design



>>> On 22.06.12 at 12:40, "Liu, Jinsong" <jinsong.liu@xxxxxxxxx> wrote:
> Jan Beulich wrote:
>>>>> On 20.06.12 at 18:13, "Liu, Jinsong" <jinsong.liu@xxxxxxxxx> wrote:
>>> Recently we design xen vMCE as attached.
>>> Please kindly help me to review it, any comments/suggestions are
>>> appreciated.
>> 
>> The concept looks quite okay, provided no OS has a problem with
>> the limitations imposed (most notably the restriction to a single
>> reporting bank, particularly in the context of e.g. Linux partly
>> ignoring the first bank under some conditions iirc).
> 
> 'bank0 skipping' quirks is only for older model cpus, I think we have 2 
> options:
> 1). still use 1 bank and simply ignore this issue. I mean, even if guest 
> runs at bank0 quirks platform, when hypervisor inject vMCE# to guest, guest 
> skip bank0, then guest MCE logic would think it detect a spurious mce, then 
> kill itself. Considering bank0 quirks is only for old cpus, this is 
> acceptable;
> 2). use 32 banks
> 
> In fact, a third option is, use 1 bank, but hypervisor kill guest when it 
> detect bank0 quirks. This would be same effect as option 1, so I prefer let 
> guest kill itself.

Out of these, I'd actually favor using 32 banks. Using 2 banks
instead of 1 might be another option.

>> As to not needing any migration specific adjustments - what if
>> a migration is in progress when an event needs to be delivered?
> 
> If a migration is in progress while an event delivered, we abort the 
> migration.

Is there a way the hypervisor can tell the tools to abort a
migration? Or are you meaning to say such functionality would
need to be added?

One other concern that occurred to me after long having sent
the original response: Your proposal aims at a fixed,
unmodifiable vMCE interface. How is that going to be forward
compatible? I.e. consider you had made that proposal before
the SRAO/SRAR changes went in - would the same interface (with
the same set of capability bits set/clear) still be suitable?

I think that we minimally need to retain the MCG_CAP register
as being of potentially variable content (and hence needing
saving/restoring on migration). To support this in a forward
compatible manner, we may have to have a way to tell the
hypervisor e.g. via command line option which extra MSRs
have to be treated read-as-zero/writes-ignored upon guest
accesses.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.