alistair23-linux/arch/powerpc/kvm
Paul Mackerras 31f3438eca KVM: PPC: Move kvm_vcpu_ioctl_[gs]et_one_reg down to platform-specific code
This moves the get/set_one_reg implementation down from powerpc.c into
booke.c, book3s_pr.c and book3s_hv.c.  This avoids #ifdefs in C code,
but more importantly, it fixes a bug on Book3s HV where we were
accessing beyond the end of the kvm_vcpu struct (via the to_book3s()
macro) and corrupting memory, causing random crashes and file corruption.

On Book3s HV we only accept setting the HIOR to zero, since the guest
runs in supervisor mode and its vectors are never offset from zero.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
[agraf update to apply on top of changed ONE_REG patches]
Signed-off-by: Avi Kivity <avi@redhat.com>
2012-03-05 14:52:41 +02:00
..
44x.c powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:30:38 -04:00
44x_emulate.c KVM: PPC: fix exit accounting for SPRs, tlbwe, tlbsx 2011-05-22 08:47:47 -04:00
44x_tlb.c KVM: PPC: e500: Add shadow PID support 2011-07-12 13:16:39 +03:00
44x_tlb.h
book3s.c KVM: PPC: Book3s HV: Implement get_dirty_log using hardware changed bit 2012-03-05 14:52:39 +02:00
book3s_32_mmu.c
book3s_32_mmu_host.c KVM: PPC: Use get/set for to_svcpu to help preemption 2012-03-05 14:52:30 +02:00
book3s_32_sr.S KVM: PPC: book3s_pr: Simplify transitions between virtual and real mode 2011-09-25 19:52:29 +03:00
book3s_64_mmu.c KVM: PPC: Interpret SDR1 as HVA in PAPR mode 2011-09-25 19:52:21 +03:00
book3s_64_mmu_host.c KVM: PPC: Use get/set for to_svcpu to help preemption 2012-03-05 14:52:30 +02:00
book3s_64_mmu_hv.c KVM: PPC: Book3s HV: Implement get_dirty_log using hardware changed bit 2012-03-05 14:52:39 +02:00
book3s_64_slb.S KVM: PPC: book3s_pr: Simplify transitions between virtual and real mode 2011-09-25 19:52:29 +03:00
book3s_64_vio_hv.c KVM: PPC: Accelerate H_PUT_TCE by implementing it in real mode 2011-07-12 13:16:56 +03:00
book3s_emulate.c KVM: PPC: Use get/set for to_svcpu to help preemption 2012-03-05 14:52:30 +02:00
book3s_exports.c powerpc: various straight conversions from module.h --> export.h 2011-10-31 19:30:44 -04:00
book3s_hv.c KVM: PPC: Move kvm_vcpu_ioctl_[gs]et_one_reg down to platform-specific code 2012-03-05 14:52:41 +02:00
book3s_hv_builtin.c KVM: PPC: annotate kvm_rma_init as __init 2011-12-27 11:26:40 +02:00
book3s_hv_interrupts.S KVM: PPC: book3s_hv: Add support for PPC970-family processors 2011-07-12 13:16:59 +03:00
book3s_hv_rm_mmu.c KVM: PPC: Book3S HV: Use the hardware referenced bit for kvm_age_hva 2012-03-05 14:52:39 +02:00
book3s_hv_rmhandlers.S KVM: PPC: Allow for read-only pages backing a Book3S HV guest 2012-03-05 14:52:38 +02:00
book3s_interrupts.S KVM: PPC: book3s_pr: Simplify transitions between virtual and real mode 2011-09-25 19:52:29 +03:00
book3s_mmu_hpte.c KVM: PPC: Move fields between struct kvm_vcpu_arch and kvmppc_vcpu_book3s 2011-07-12 13:16:46 +03:00
book3s_paired_singles.c Merge branch 'kvm-updates/2.6.37' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2010-10-24 12:47:25 -07:00
book3s_pr.c KVM: PPC: Move kvm_vcpu_ioctl_[gs]et_one_reg down to platform-specific code 2012-03-05 14:52:41 +02:00
book3s_pr_papr.c KVM: PPC: Add PAPR hypercall code for PR mode 2011-09-25 19:52:24 +03:00
book3s_rmhandlers.S KVM: PPC: book3s_pr: Simplify transitions between virtual and real mode 2011-09-25 19:52:29 +03:00
book3s_segment.S KVM: PPC: book3s_pr: Simplify transitions between virtual and real mode 2011-09-25 19:52:29 +03:00
booke.c KVM: PPC: Move kvm_vcpu_ioctl_[gs]et_one_reg down to platform-specific code 2012-03-05 14:52:41 +02:00
booke.h KVM: PPC: booke: Improve timer register emulation 2012-03-05 14:52:27 +02:00
booke_emulate.c KVM: PPC: booke: Improve timer register emulation 2012-03-05 14:52:27 +02:00
booke_interrupts.S KVM: PPC: Paravirtualize SPRG4-7, ESR, PIR, MASn 2012-03-05 14:52:26 +02:00
e500.c KVM: PPC: Paravirtualize SPRG4-7, ESR, PIR, MASn 2012-03-05 14:52:26 +02:00
e500_emulate.c KVM: PPC: Paravirtualize SPRG4-7, ESR, PIR, MASn 2012-03-05 14:52:26 +02:00
e500_tlb.c KVM: PPC: booke: Add booke206 TLB trace 2012-03-05 14:52:40 +02:00
e500_tlb.h KVM: PPC: Paravirtualize SPRG4-7, ESR, PIR, MASn 2012-03-05 14:52:26 +02:00
emulate.c KVM: PPC: booke: Improve timer register emulation 2012-03-05 14:52:27 +02:00
fpu.S
Kconfig KVM: PPC: Implement MMU notifiers for Book3S HV guests 2012-03-05 14:52:38 +02:00
Makefile KVM: PPC: Assemble book3s{,_hv}_rmhandlers.S separately 2011-09-25 19:52:28 +03:00
powerpc.c KVM: PPC: Move kvm_vcpu_ioctl_[gs]et_one_reg down to platform-specific code 2012-03-05 14:52:41 +02:00
timing.c KVM: PPC: fix partial application of "exit timing in ticks" 2011-07-12 13:16:28 +03:00
timing.h
trace.h KVM: PPC: booke: Add booke206 TLB trace 2012-03-05 14:52:40 +02:00