linux/arch/powerpc/kvm
Suresh E. Warrier 1bc5d59c35 KVM: PPC: Book3S HV: Check wait conditions before sleeping in kvmppc_vcore_blocked
The kvmppc_vcore_blocked() code does not check for the wait condition
after putting the process on the wait queue. This means that it is
possible for an external interrupt to become pending, but the vcpu to
remain asleep until the next decrementer interrupt.  The fix is to
make one last check for pending exceptions and ceded state before
calling schedule().

Signed-off-by: Suresh Warrier <warrier@linux.vnet.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
2014-12-15 13:27:25 +01:00
..
book3s_32_mmu_host.c KVM: PPC: Book3S: Make magic page properly 4k mappable 2014-07-28 15:23:11 +02:00
book3s_32_mmu.c KVM: PPC: Book3S: Stop PTE lookup on write errors 2014-07-28 15:23:10 +02:00
book3s_32_sr.S
book3s_64_mmu_host.c KVM: PPC: Book3S: Make magic page properly 4k mappable 2014-07-28 15:23:11 +02:00
book3s_64_mmu_hv.c KVM: PPC: Book3S HV: ptes are big endian 2014-12-15 13:27:24 +01:00
book3s_64_mmu.c KVM: PPC: Disable NX for old magic page using guests 2014-05-30 14:26:24 +02:00
book3s_64_slb.S KVM: PPC: Book3S PR: Rework SLB switching code 2014-05-30 14:26:30 +02:00
book3s_64_vio_hv.c
book3s_64_vio.c
book3s_emulate.c KVM: PPC: PR: Handle FSCR feature deselects 2014-07-31 10:23:46 +02:00
book3s_exports.c KVM: PPC: Make shared struct aka magic page guest endian 2014-05-30 14:26:21 +02:00
book3s_hv_builtin.c KVM: PPC: BOOK3S: HV: CMA: Reserve cma region only in hypervisor mode 2014-09-29 15:36:33 +02:00
book3s_hv_interrupts.S powerpc/kvm: Remove redundant save of SIER AND MMCR2 2014-07-11 12:55:07 +10:00
book3s_hv_ras.c KVM: PPC: Book3S HV: Access guest VPA in BE 2014-07-28 15:22:22 +02:00
book3s_hv_rm_mmu.c KVM: PPC: Book3S HV: Fix KSM memory corruption 2014-12-15 13:27:24 +01:00
book3s_hv_rm_xics.c KVM: PPC: Book3S HV: Fix inaccuracies in ICP emulation for H_IPI 2014-12-15 13:27:24 +01:00
book3s_hv_rmhandlers.S KVM: PPC: Book3S HV: Add register name when loading toc 2014-09-22 10:11:31 +02:00
book3s_hv.c KVM: PPC: Book3S HV: Check wait conditions before sleeping in kvmppc_vcore_blocked 2014-12-15 13:27:25 +01:00
book3s_interrupts.S KVM: PPC: Book3S PR: Fix ABIv2 on LE 2014-07-28 15:22:15 +02:00
book3s_mmu_hpte.c
book3s_paired_singles.c KVM: PPC: Allow kvmppc_get_last_inst() to fail 2014-07-28 15:23:14 +02:00
book3s_pr_papr.c KVM: PPC: Book3S PR: Take SRCU read lock around RTAS kvm_read_guest() call 2014-07-28 15:23:16 +02:00
book3s_pr.c Patch queue for ppc - 2014-09-24 2014-09-24 23:19:45 +02:00
book3s_rmhandlers.S KVM: PPC: Book3S PR: Fix ABIv2 on LE 2014-07-28 15:22:15 +02:00
book3s_rtas.c KVM: PPC: RTAS: Do byte swaps explicitly 2014-07-07 23:17:20 +02:00
book3s_segment.S KVM: PPC: Book3S PR: Handle Facility interrupt and FSCR 2014-05-30 14:26:22 +02:00
book3s_xics.c KVM: PPC: Book3S HV: Fix inaccuracies in ICP emulation for H_IPI 2014-12-15 13:27:24 +01:00
book3s_xics.h KVM: PPC: Book3S HV: Fix inaccuracies in ICP emulation for H_IPI 2014-12-15 13:27:24 +01:00
book3s.c Patch queue for ppc - 2014-09-24 2014-09-24 23:19:45 +02:00
book3s.h kvm: Fix page ageing bugs 2014-09-24 14:07:58 +02:00
booke_emulate.c KVM: PPC: BOOKE: Emulate debug registers and exception 2014-09-22 10:11:33 +02:00
booke_interrupts.S KVM: PPC: Remove 440 support 2014-07-28 15:23:15 +02:00
booke.c KVM: PPC: Pass enum to kvmppc_get_last_inst 2014-09-22 10:11:36 +02:00
booke.h KVM: PPC: Book3e: Add AltiVec support 2014-09-22 10:11:32 +02:00
bookehv_interrupts.S powerpc/kvm: common sw breakpoint instr across ppc 2014-09-22 10:11:36 +02:00
e500_emulate.c KVM: PPC: Book3e: Add AltiVec support 2014-09-22 10:11:32 +02:00
e500_mmu_host.c Patch queue for ppc - 2014-09-24 2014-09-24 23:19:45 +02:00
e500_mmu_host.h
e500_mmu.c
e500.c
e500.h KVM: PPC: e500mc: Add support for single threaded vcpus on e6500 core 2014-09-22 10:11:35 +02:00
e500mc.c KVM: PPC: Book3E: Enable e6500 core 2014-09-22 10:11:35 +02:00
emulate_loadstore.c KVM: PPC: Pass enum to kvmppc_get_last_inst 2014-09-22 10:11:36 +02:00
emulate.c KVM: PPC: Pass enum to kvmppc_get_last_inst 2014-09-22 10:11:36 +02:00
fpu.S
irq.h
Kconfig KVM: PPC: Enable IRQFD support for the XICS interrupt controller 2014-08-05 14:26:33 +02:00
Makefile Here are the PPC and ARM changes for KVM, which I separated because 2014-08-07 11:35:30 -07:00
mpic.c KVM: irqchip: Provide and use accessors for irq routing table 2014-08-05 14:26:16 +02:00
powerpc.c KVM: PPC: Pass enum to kvmppc_get_last_inst 2014-09-22 10:11:36 +02:00
timing.c KVM: PPC: Remove DCR handling 2014-07-28 19:29:15 +02:00
timing.h KVM: PPC: Remove DCR handling 2014-07-28 19:29:15 +02:00
trace_booke.h KVM: PPC: BookE: Improve irq inject tracepoint 2014-12-15 13:27:23 +01:00
trace_pr.h KVM: PPC: drop duplicate tracepoint 2014-08-05 14:23:41 +02:00
trace.h