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

Re: [Xen-devel] [PATCH] x86/amd: fix crash as Xen Dom0 on AMD Trinity systems

>>> On 30.05.12 at 16:02, Andre Przywara <andre.przywara@xxxxxxx> wrote:
> On 05/30/2012 03:33 PM, Jan Beulich wrote:
>> Further, I can't see how checking_wrmsrl() is being paravirtualized
>> any better than wrmsrl_amd_safe() - both have nothing but an
>> exception handling fixup attached to the wrmsr invocation. Care
>> to point out what actual crash it is that was seen?
> AFAIK, the difference is between the "l" and the regs version for 
> rd/wrmsr. We have a patch already here to fix this. Will send it out 
> soon. Jacob, can you comment on this?

I see - the Xen code blindly overwrites pv_cpu_ops, despite not
having initialized all members. That's an obvious oversight of the
patch that introduced the _regs variants.

Plus having secondary instances of things like rdmsrl_amd_safe()
in asm/paravirt.h seems pretty strange an approach (which was
why initially I didn't spot how a crash could happen there) - only
the lowest level functions should get re-implemented here.

>> Finally, I would question whether re-enabling the topology
>> extensions under Xen shouldn't be skipped altogether, perhaps
>> even on Dom0 (as the hypervisor is controlling this MSR, but in
>> any case on DomU - the hypervisor won't allow (read: ignore,
>> not fault on) the write anyway (and will log a message for each
>> (v)CPU that attempts this).
> This is probably right. Let me think about this.

I'll submit a respective hypervisor side patch soonish.


Xen-devel mailing list



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