3e515705a1
If some vcpus are created before KVM_CREATE_IRQCHIP, then irqchip_in_kernel() and vcpu->arch.apic will be inconsistent, leading to potential NULL pointer dereferences. Fix by: - ensuring that no vcpus are installed when KVM_CREATE_IRQCHIP is called - ensuring that a vcpu has an apic if it is installed after KVM_CREATE_IRQCHIP This is somewhat long winded because vcpu->arch.apic is created without kvm->lock held. Based on earlier patch by Michael Ellerman. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Avi Kivity <avi@redhat.com> |
||
---|---|---|
.. | ||
asm-offsets.c | ||
irq.h | ||
Kconfig | ||
kvm_fw.c | ||
kvm_lib.c | ||
kvm_minstate.h | ||
kvm-ia64.c | ||
lapic.h | ||
Makefile | ||
memcpy.S | ||
memset.S | ||
misc.h | ||
mmio.c | ||
optvfault.S | ||
process.c | ||
trampoline.S | ||
vcpu.c | ||
vcpu.h | ||
vmm_ivt.S | ||
vmm.c | ||
vti.h | ||
vtlb.c |