Skip to content

Commit 9ca0c1a

Browse files
committed
KVM: VMX: Delete ancient pr_warn() about KVM_SET_TSS_ADDR not being set
Delete KVM's printk about KVM_SET_TSS_ADDR not being called. When the printk was added by commit 776e58e ("KVM: unbreak userspace that does not sets tss address"), KVM also stuffed a "hopefully safe" value, i.e. the message wasn't purely informational. For reasons unknown, ostensibly to try and help people running outdated qemu-kvm versions, the message got left behind when KVM's stuffing was removed by commit 4918c6c ("KVM: VMX: Require KVM_SET_TSS_ADDR being called prior to running a VCPU"). Today, the message is completely nonsensical, as it has been over a decade since KVM supported userspace running a Real Mode guest, on a CPU without unrestricted guest support, without doing KVM_SET_TSS_ADDR before KVM_RUN. I.e. KVM's ABI has required KVM_SET_TSS_ADDR for 10+ years. To make matters worse, the message is prone to false positives as it triggers when simply *creating* a vCPU due to RESET putting vCPUs into Real Mode, even when the user has no intention of ever *running* the vCPU in a Real Mode. E.g. KVM selftests stuff 64-bit mode and never touch Real Mode, but trigger the message even though they run just fine without doing KVM_SET_TSS_ADDR. Creating "dummy" vCPUs, e.g. to probe features, can also trigger the message. In both scenarios, the message confuses users and falsely implies that they've done something wrong. Reported-by: Thorsten Glaser <t.glaser@tarent.de> Closes: https://lkml.kernel.org/r/f1afa6c0-cde2-ab8b-ea71-bfa62a45b956%40tarent.de Link: https://lore.kernel.org/r/20230815174215.433222-1-seanjc@google.com Signed-off-by: Sean Christopherson <seanjc@google.com>
1 parent 7d18eef commit 9ca0c1a

File tree

1 file changed

+0
-7
lines changed

1 file changed

+0
-7
lines changed

arch/x86/kvm/vmx/vmx.c

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3047,13 +3047,6 @@ static void enter_rmode(struct kvm_vcpu *vcpu)
30473047

30483048
vmx->rmode.vm86_active = 1;
30493049

3050-
/*
3051-
* Very old userspace does not call KVM_SET_TSS_ADDR before entering
3052-
* vcpu. Warn the user that an update is overdue.
3053-
*/
3054-
if (!kvm_vmx->tss_addr)
3055-
pr_warn_once("KVM_SET_TSS_ADDR needs to be called before running vCPU\n");
3056-
30573050
vmx_segment_cache_clear(vmx);
30583051

30593052
vmcs_writel(GUEST_TR_BASE, kvm_vmx->tss_addr);

0 commit comments

Comments
 (0)