linux/arch/powerpc/kvm
Alexander Graf 50c7bb80b5 KVM: PPC: Book3S: PR: Enable alternative instruction for SC 1
When running on top of pHyp, the hypercall instruction "sc 1" goes
straight into pHyp without trapping in supervisor mode.

So if we want to support PAPR guest in this configuration we need to
add a second way of accessing PAPR hypercalls, preferably with the
exact same semantics except for the instruction.

So let's overlay an officially reserved instruction and emulate PAPR
hypercalls whenever we hit that one.

Signed-off-by: Alexander Graf <agraf@suse.de>
2013-01-10 13:15:08 +01:00
..
44x_emulate.c KVM: PPC: 44x: fix DCR read/write 2012-10-30 10:54:50 +01:00
44x_tlb.c KVM: do not release the error page 2012-08-06 16:04:58 +03:00
44x_tlb.h KVM: ppc: rename 44x MMU functions used in booke.c 2009-03-24 11:02:56 +02:00
44x.c KVM: PPC: 44x: Initialize PVR 2012-10-05 23:38:47 +02:00
book3s_32_mmu_host.c KVM: do not treat noslot pfn as a error pfn 2012-10-29 20:31:04 -02:00
book3s_32_mmu.c KVM: PPC: Put segment registers in shared page 2010-10-24 10:52:11 +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_host.c KVM: do not treat noslot pfn as a error pfn 2012-10-29 20:31:04 -02:00
book3s_64_mmu_hv.c KVM: PPC: Book3S HV: Improve handling of local vs. global TLB invalidations 2012-12-06 01:34:05 +01:00
book3s_64_mmu.c KVM: PPC: Interpret SDR1 as HVA in PAPR mode 2011-09-25 19:52:21 +03:00
book3s_64_slb.S KVM: PPC: Book3S: PR: No isync in slbie path 2012-05-06 16:19:09 +02:00
book3s_64_vio_hv.c kvm/book3s: Make kernel emulated H_PUT_TCE available for "PR" KVM 2012-05-06 16:19:11 +02:00
book3s_64_vio.c kvm/book3s: Make kernel emulated H_PUT_TCE available for "PR" KVM 2012-05-06 16:19:11 +02:00
book3s_emulate.c KVM: PPC: Book3S: PR: Enable alternative instruction for SC 1 2013-01-10 13:15:08 +01:00
book3s_exports.c KVM: PPC: Book3S PR: Fix VSX handling 2012-12-06 01:34:02 +01:00
book3s_hv_builtin.c KVM: PPC: Quieten message about allocating linear regions 2012-10-05 23:38:40 +02:00
book3s_hv_interrupts.S KVM: PPC: Work around POWER7 DABR corruption problem 2012-04-08 14:01:36 +03:00
book3s_hv_ras.c KVM: PPC: Book3S HV: Handle guest-caused machine checks on POWER7 without panicking 2012-12-06 01:34:07 +01:00
book3s_hv_rm_mmu.c KVM: PPC: Book3S HV: Improve handling of local vs. global TLB invalidations 2012-12-06 01:34:05 +01:00
book3s_hv_rmhandlers.S KVM: PPC: Book3S HV: Handle guest-caused machine checks on POWER7 without panicking 2012-12-06 01:34:07 +01:00
book3s_hv.c KVM: Rename KVM_MEMORY_SLOTS -> KVM_USER_MEM_SLOTS 2012-12-13 23:21:57 -02:00
book3s_interrupts.S powerpc: Merge VCPU_GPR 2012-07-10 19:18:06 +10:00
book3s_mmu_hpte.c KVM: PPC: Book3s: PR: Add (dumb) MMU Notifier support 2012-10-05 23:38:43 +02:00
book3s_paired_singles.c powerpc/kvm: Fallout from system.h disintegration 2012-04-02 14:00:04 +10:00
book3s_pr_papr.c powerpc/kvm: Fix "PR" KVM implementation of H_CEDE 2012-07-11 17:36:38 +02:00
book3s_pr.c KVM: PPC: Book3S: PR: Enable alternative instruction for SC 1 2013-01-10 13:15:08 +01:00
book3s_rmhandlers.S KVM: PPC: Book3S PR: Fix VSX handling 2012-12-06 01:34:02 +01:00
book3s_segment.S powerpc: Move and fix MTMSR_EERI definition 2012-07-10 19:18:08 +10:00
book3s.c KVM: PPC: Book3S: Get/set guest FP regs using the GET/SET_ONE_REG interface 2012-10-05 23:38:54 +02:00
booke_emulate.c KVM: PPC: bookehv: Add EPCR support in mtspr/mfspr emulation 2012-12-06 01:34:19 +01:00
booke_interrupts.S KVM updates for the 3.6 merge window 2012-07-24 12:01:20 -07:00
booke.c KVM: PPC: booke: Get/set guest EPCR register using ONE_REG interface 2012-12-06 01:34:20 +01:00
booke.h KVM: PPC: bookehv: Add EPCR support in mtspr/mfspr emulation 2012-12-06 01:34:19 +01:00
bookehv_interrupts.S KVM: PPC: bookehv64: Add support for interrupt handling 2012-12-06 01:34:11 +01:00
e500_emulate.c KVM: PPC: e500: Add emulation helper for getting instruction ea 2012-12-06 01:34:12 +01:00
e500_tlb.c KVM: PPC: e500: Mask MAS2 EPN high 32-bits in 32/64 tlbwe emulation 2012-12-06 01:34:14 +01:00
e500.c KVM: PPC: e500: refactor core-specific TLB code 2012-04-08 12:51:12 +03:00
e500.h KVM: PPC: booke: Extend MAS2 EPN mask for 64-bit 2012-12-06 01:34:15 +01:00
e500mc.c KVM: PPC: e500mc: Fix tlbilx emulation for 64-bit guests 2012-07-11 17:39:38 +02:00
emulate.c KVM: PPC: Move mtspr/mfspr emulation into own functions 2012-10-30 10:54:51 +01:00
fpu.S powerpc: Remove fpscr use from [kvm_]cvt_{fd,df} 2010-09-02 14:07:32 +10:00
Kconfig KVM: PPC: Support eventfd 2012-12-06 01:33:50 +01:00
Makefile KVM: PPC: Book3S HV: Handle guest-caused machine checks on POWER7 without panicking 2012-12-06 01:34:07 +01:00
powerpc.c KVM: PPC: Only WARN on invalid emulation 2013-01-10 13:15:08 +01:00
timing.c KVM: PPC: fix partial application of "exit timing in ticks" 2011-07-12 13:16:28 +03:00
timing.h KVM: PPC: booke: category E.HV (GS-mode) support 2012-04-08 12:51:19 +03:00
trace.h Merge remote-tracking branch 'master' into queue 2012-10-29 19:15:32 -02:00