Messages in this thread |  | | Subject | Re: [PATCH v2 3/6] kvm: x86: Emulate split-lock access as a write | From | Paolo Bonzini <> | Date | Tue, 11 Feb 2020 14:34:18 +0100 |
| |
On 11/02/20 14:22, Thomas Gleixner wrote: > Paolo Bonzini <pbonzini@redhat.com> writes: >> On 03/02/20 16:16, Xiaoyao Li wrote: >>> A sane guest should never tigger emulation on a split-lock access, but >>> it cannot prevent malicous guest from doing this. So just emulating the >>> access as a write if it's a split-lock access to avoid malicous guest >>> polluting the kernel log. >> >> Saying that anything doing a split lock access is malicious makes little >> sense. > > Correct, but we also have to accept, that split lock access can be used > in a malicious way, aka. DoS.
Indeed, a more accurate emulation such as temporarily disabling split-lock detection in the emulator would allow the guest to use split lock access as a vehicle for DoS, but that's not what the commit message says. If it were only about polluting the kernel log, there's printk_ratelimited for that. (In fact, if we went for incorrect emulation as in this patch, a rate-limited pr_warn would be a good idea).
It is much more convincing to say that since this is pretty much a theoretical case, we can assume that it is only done with the purpose of DoS-ing the host or something like that, and therefore we kill the guest.
>> Split lock detection is essentially a debugging feature, there's a >> reason why the MSR is called "TEST_CTL". So you don't want to make the > > The fact that it ended up in MSR_TEST_CTL does not say anything. That's > where they it ended up to be as it was hastily cobbled together for > whatever reason.
Or perhaps it was there all the time in test silicon or something like that... That would be a very plausible reason for all the quirks behind it.
Paolo
|  |