diff options
| author | Paul Mackerras <paulus@samba.org> | 2012-03-05 16:42:25 -0500 |
|---|---|---|
| committer | Avi Kivity <avi@redhat.com> | 2012-04-08 07:01:34 -0400 |
| commit | 7657f4089b097846cc37bfa2b74fc0bd2bd60e30 (patch) | |
| tree | 23ab60ce34d29b1cd59e85eb78e760924af3c4bc /arch/powerpc/kernel | |
| parent | c0fe7b099931c6c05c98a05c277185ee25254f35 (diff) | |
KVM: PPC: Book 3S: Fix compilation for !HV configs
Commits 2f5cdd5487 ("KVM: PPC: Book3S HV: Make secondary threads more
robust against stray IPIs") and 1c2066b0f7 ("KVM: PPC: Book3S HV: Make
virtual processor area registration more robust") added fields to
struct kvm_vcpu_arch inside #ifdef CONFIG_KVM_BOOK3S_64_HV regions,
and added lines to arch/powerpc/kernel/asm-offsets.c to generate
assembler constants for their offsets. Unfortunately this led to
compile errors on Book 3S machines for configs that had KVM enabled
but not CONFIG_KVM_BOOK3S_64_HV. This fixes the problem by moving
the offending lines inside #ifdef CONFIG_KVM_BOOK3S_64_HV regions.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/powerpc/kernel')
| -rw-r--r-- | arch/powerpc/kernel/asm-offsets.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/asm-offsets.c b/arch/powerpc/kernel/asm-offsets.c index 502e038f8c8..694af3ebb0e 100644 --- a/arch/powerpc/kernel/asm-offsets.c +++ b/arch/powerpc/kernel/asm-offsets.c | |||
| @@ -450,6 +450,7 @@ int main(void) | |||
| 450 | DEFINE(KVM_VRMA_SLB_V, offsetof(struct kvm, arch.vrma_slb_v)); | 450 | DEFINE(KVM_VRMA_SLB_V, offsetof(struct kvm, arch.vrma_slb_v)); |
| 451 | DEFINE(VCPU_DSISR, offsetof(struct kvm_vcpu, arch.shregs.dsisr)); | 451 | DEFINE(VCPU_DSISR, offsetof(struct kvm_vcpu, arch.shregs.dsisr)); |
| 452 | DEFINE(VCPU_DAR, offsetof(struct kvm_vcpu, arch.shregs.dar)); | 452 | DEFINE(VCPU_DAR, offsetof(struct kvm_vcpu, arch.shregs.dar)); |
| 453 | DEFINE(VCPU_VPA, offsetof(struct kvm_vcpu, arch.vpa.pinned_addr)); | ||
| 453 | #endif | 454 | #endif |
| 454 | #ifdef CONFIG_PPC_BOOK3S | 455 | #ifdef CONFIG_PPC_BOOK3S |
| 455 | DEFINE(VCPU_VCPUID, offsetof(struct kvm_vcpu, vcpu_id)); | 456 | DEFINE(VCPU_VCPUID, offsetof(struct kvm_vcpu, vcpu_id)); |
| @@ -466,7 +467,6 @@ int main(void) | |||
| 466 | DEFINE(VCPU_PENDING_EXC, offsetof(struct kvm_vcpu, arch.pending_exceptions)); | 467 | DEFINE(VCPU_PENDING_EXC, offsetof(struct kvm_vcpu, arch.pending_exceptions)); |
| 467 | DEFINE(VCPU_CEDED, offsetof(struct kvm_vcpu, arch.ceded)); | 468 | DEFINE(VCPU_CEDED, offsetof(struct kvm_vcpu, arch.ceded)); |
| 468 | DEFINE(VCPU_PRODDED, offsetof(struct kvm_vcpu, arch.prodded)); | 469 | DEFINE(VCPU_PRODDED, offsetof(struct kvm_vcpu, arch.prodded)); |
| 469 | DEFINE(VCPU_VPA, offsetof(struct kvm_vcpu, arch.vpa.pinned_addr)); | ||
| 470 | DEFINE(VCPU_MMCR, offsetof(struct kvm_vcpu, arch.mmcr)); | 470 | DEFINE(VCPU_MMCR, offsetof(struct kvm_vcpu, arch.mmcr)); |
| 471 | DEFINE(VCPU_PMC, offsetof(struct kvm_vcpu, arch.pmc)); | 471 | DEFINE(VCPU_PMC, offsetof(struct kvm_vcpu, arch.pmc)); |
| 472 | DEFINE(VCPU_SLB, offsetof(struct kvm_vcpu, arch.slb)); | 472 | DEFINE(VCPU_SLB, offsetof(struct kvm_vcpu, arch.slb)); |
| @@ -540,10 +540,10 @@ int main(void) | |||
| 540 | HSTATE_FIELD(HSTATE_IN_GUEST, in_guest); | 540 | HSTATE_FIELD(HSTATE_IN_GUEST, in_guest); |
| 541 | HSTATE_FIELD(HSTATE_RESTORE_HID5, restore_hid5); | 541 | HSTATE_FIELD(HSTATE_RESTORE_HID5, restore_hid5); |
| 542 | HSTATE_FIELD(HSTATE_NAPPING, napping); | 542 | HSTATE_FIELD(HSTATE_NAPPING, napping); |
| 543 | HSTATE_FIELD(HSTATE_HWTHREAD_REQ, hwthread_req); | ||
| 544 | HSTATE_FIELD(HSTATE_HWTHREAD_STATE, hwthread_state); | ||
| 545 | 543 | ||
| 546 | #ifdef CONFIG_KVM_BOOK3S_64_HV | 544 | #ifdef CONFIG_KVM_BOOK3S_64_HV |
| 545 | HSTATE_FIELD(HSTATE_HWTHREAD_REQ, hwthread_req); | ||
| 546 | HSTATE_FIELD(HSTATE_HWTHREAD_STATE, hwthread_state); | ||
| 547 | HSTATE_FIELD(HSTATE_KVM_VCPU, kvm_vcpu); | 547 | HSTATE_FIELD(HSTATE_KVM_VCPU, kvm_vcpu); |
| 548 | HSTATE_FIELD(HSTATE_KVM_VCORE, kvm_vcore); | 548 | HSTATE_FIELD(HSTATE_KVM_VCORE, kvm_vcore); |
| 549 | HSTATE_FIELD(HSTATE_XICS_PHYS, xics_phys); | 549 | HSTATE_FIELD(HSTATE_XICS_PHYS, xics_phys); |
