Messages in this thread | | | From | Roland McGrath <> | Subject | Re: [PATCH] x86: prevent unconditional writes to DebugCtl MSR | Date | Fri, 18 Apr 2008 12:43:34 -0700 (PDT) |
| |
I don't think this was a good idea:
commit 5b0e508415a83989fe704b4718a1a214bc333ca7 Author: Jan Beulich <jbeulich@novell.com> Date: Mon Mar 10 13:11:17 2008 +0000
x86: prevent unconditional writes to DebugCtl MSR
It's already a bug if there is any unconditional use of the MSR. Silenting ignoring it is just wrong.
There was such a bug before this fix:
commit 4ba51fd75cc3789be83f0d6f878dabbb0cb19bca Author: Roland McGrath <roland@redhat.com> Date: Thu Apr 3 14:18:55 2008 -0700
x86 ptrace: avoid unnecessary wrmsr
But there should not be any more. The use of the MSR for block-step is controlled by arch_has_block_step(), which uses the same condition. Any use of the MSR for other purposes (DS et al) should be controlled by more specific CPU model checks.
If TIF_DEBUGCTLMSR is ever set on a machine without the support, that is a bug we should diagnose earlier. If you want some paranoia, then keep update_debugctlmsr but make it do:
BUG_ON(boot_cpu_data.x86 < 6);
instead.
Thanks, Roland
| |