xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] x86/MCE: Present MSR_IA32_MCx_MISC(2-6) as invalid on AMD
@ 2013-03-12 15:32 Boris Ostrovsky
  2013-03-12 15:43 ` Egger Christoph
  2013-03-12 16:34 ` Jan Beulich
  0 siblings, 2 replies; 6+ messages in thread
From: Boris Ostrovsky @ 2013-03-12 15:32 UTC (permalink / raw)
  To: chegger; +Cc: bp, boris.ostrovsky, xen-devel

MSR_IA32_MCx_MISC(4) register on AMD processors is used for error
thresholding. PV guests may try to set it up for threshold
interrupts which will fail and result in these warnings in the log:

  [Firmware Bug]: cpu 0, try to use APIC510 (LVT offset 1) for vector
  0xf9, but the register is already in use for vector 0x0 on this cpu

Mark this register as invalid to avoid this. While at it, also present
other MSR_IA32_MCx_MISC() registers as invalid (except for the first
GUEST_MC_BANK_NUM which are emulated).

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
---
 xen/arch/x86/cpu/mcheck/mce.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/cpu/mcheck/mce.h b/xen/arch/x86/cpu/mcheck/mce.h
index f2aeacb..d6526a4 100644
--- a/xen/arch/x86/cpu/mcheck/mce.h
+++ b/xen/arch/x86/cpu/mcheck/mce.h
@@ -166,6 +166,7 @@ static inline int mce_vendor_bank_msr(const struct vcpu *v, uint32_t msr)
         case MSR_F10_MC4_MISC1:
         case MSR_F10_MC4_MISC2:
         case MSR_F10_MC4_MISC3:
+        case MSR_IA32_MCx_MISC(GUEST_MC_BANK_NUM)...MSR_IA32_MCx_MISC(6):
             return 1;
         }
         break;
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-03-13  9:16 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-12 15:32 [PATCH] x86/MCE: Present MSR_IA32_MCx_MISC(2-6) as invalid on AMD Boris Ostrovsky
2013-03-12 15:43 ` Egger Christoph
2013-03-12 16:34 ` Jan Beulich
2013-03-12 17:00   ` Boris Ostrovsky
2013-03-13  7:41     ` Jan Beulich
2013-03-13  9:16       ` Egger Christoph

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).