diff options
author | Jeremy Fitzhardinge <jeremy@goop.org> | 2008-07-24 16:48:58 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-28 10:33:08 -0400 |
commit | d89961e2dc87b6e30b8e3f60bd2af5cd92cf4643 (patch) | |
tree | 63b6192ad4bf4a74edbcea6ab4540789f148b60b | |
parent | fde28e8f49ed86e771667a3fe81fcc25c93ede8e (diff) |
xen: suppress known wrmsrs
In general, Xen doesn't support wrmsr from an unprivileged domain; it
just ends up ignoring the instruction and printing a message on the
console.
Given that there are sets of MSRs we know the kernel will try to write
to, but we don't care, just eat them in xen_write_msr to cut down on
console noise.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | arch/x86/xen/enlighten.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index b011e4a5dbbe..b795470ec069 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c | |||
@@ -854,6 +854,19 @@ static int xen_write_msr_safe(unsigned int msr, unsigned low, unsigned high) | |||
854 | ret = -EFAULT; | 854 | ret = -EFAULT; |
855 | break; | 855 | break; |
856 | #endif | 856 | #endif |
857 | |||
858 | case MSR_STAR: | ||
859 | case MSR_CSTAR: | ||
860 | case MSR_LSTAR: | ||
861 | case MSR_SYSCALL_MASK: | ||
862 | case MSR_IA32_SYSENTER_CS: | ||
863 | case MSR_IA32_SYSENTER_ESP: | ||
864 | case MSR_IA32_SYSENTER_EIP: | ||
865 | /* Fast syscall setup is all done in hypercalls, so | ||
866 | these are all ignored. Stub them out here to stop | ||
867 | Xen console noise. */ | ||
868 | break; | ||
869 | |||
857 | default: | 870 | default: |
858 | ret = native_write_msr_safe(msr, low, high); | 871 | ret = native_write_msr_safe(msr, low, high); |
859 | } | 872 | } |