diff options
author | Wanpeng Li <wanpengli@tencent.com> | 2022-04-18 00:42:32 -0700 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2022-04-21 13:16:14 -0400 |
commit | 0361bdfddca20c8855ea3bdbbbc9c999912b10ff (patch) | |
tree | aeca0d8b3e7130ed76f6335be47c7b9afe178aca /arch/x86/kernel/cpu/powerflags.c | |
parent | a413a625b43e5f085d4e1a8c4053494d593fb3c1 (diff) | |
download | linux-0361bdfddca20c8855ea3bdbbbc9c999912b10ff.tar.bz2 |
x86/kvm: Preserve BSP MSR_KVM_POLL_CONTROL across suspend/resume
MSR_KVM_POLL_CONTROL is cleared on reset, thus reverting guests to
host-side polling after suspend/resume. Non-bootstrap CPUs are
restored correctly by the haltpoll driver because they are hot-unplugged
during suspend and hot-plugged during resume; however, the BSP
is not hotpluggable and remains in host-sde polling mode after
the guest resume. The makes the guest pay for the cost of vmexits
every time the guest enters idle.
Fix it by recording BSP's haltpoll state and resuming it during guest
resume.
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Wanpeng Li <wanpengli@tencent.com>
Message-Id: <1650267752-46796-1-git-send-email-wanpengli@tencent.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/kernel/cpu/powerflags.c')
0 files changed, 0 insertions, 0 deletions