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 b011e4a5dbb..b795470ec06 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 | } |
