On Thu, 27 May 2021 at 10:50, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
Hi all,
After merging the kvm-fixes tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:
In file included from arch/powerpc/include/asm/kvm_ppc.h:19,
from arch/powerpc/include/asm/dbell.h:17,
from arch/powerpc/kernel/asm-offsets.c:38:
include/linux/kvm_host.h: In function 'kvm_vcpu_can_poll':
include/linux/kvm_host.h:270:9: error: implicit declaration of function 'single_task_running' [-Werror=implicit-function-declaration]
270 | return single_task_running() && !need_resched() && ktime_before(cur, stop);
| ^~~~~~~~~~~~~~~~~~~
Caused by commit
85d4c3baeb45 ("KVM: PPC: exit halt polling on need_resched()")
I have used the kvm-fixes tree from next-20210524 again today.
The kvm/master is broken by several patches.
diff --git a/arch/x86/kvm/hyperv.c b/arch/x86/kvm/hyperv.c
index 0f6f394..e851671 100644
--- a/arch/x86/kvm/hyperv.c
+++ b/arch/x86/kvm/hyperv.c
@@ -1659,7 +1659,7 @@ struct kvm_hv_hcall {
static u64 kvm_hv_flush_tlb(struct kvm_vcpu *vcpu, struct
kvm_hv_hcall *hc, bool ex)
{
- int i, j;
+ int i;
gpa_t gpa;
struct kvm *kvm = vcpu->kvm;
struct kvm_vcpu_hv *hv_vcpu = to_hv_vcpu(vcpu);
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 9d095bed..feb9611 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -3604,7 +3604,7 @@ int kvm_get_msr_common(struct kvm_vcpu *vcpu,
struct msr_data *msr_info)
* to ensure backwards-compatible behavior for migration.
*/
if (msr_info->host_initiated &&
- kvm_check_has_quirk(vcpu->kvm, KVM_X86_QUIRK_TSC_HOST_ACCESS))
+ kvm_check_has_quirk(vcpu->kvm, KVM_X86_QUIRK_TSC_HOST_ACCESS)) {
offset = vcpu->arch.l1_tsc_offset;
ratio = vcpu->arch.l1_tsc_scaling_ratio;
} else {
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index 18905c9..4273e04 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -10,6 +10,7 @@
#include <linux/spinlock.h>
#include <linux/signal.h>
#include <linux/sched.h>
+#include <linux/sched/stat.h>
#include <linux/bug.h>
#include <linux/minmax.h>
#include <linux/mm.h>