OSDN Git Service

KVM: arm/arm64: vgic-v3: Do not use Active+Pending state for a HW interrupt
authorMarc Zyngier <marc.zyngier@arm.com>
Tue, 2 May 2017 13:30:40 +0000 (14:30 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Jun 2017 13:05:56 +0000 (15:05 +0200)
commit2a5c08a4d3fef6bc645c2ae0607f00672e367f75
tree240e6e2b6ffcb475d16bf9505ef6b9988070abf6
parent81555e45852a69389a71167e913722714c91fd3f
KVM: arm/arm64: vgic-v3: Do not use Active+Pending state for a HW interrupt

commit 3d6e77ad1489650afa20da92bb589c8778baa8da upstream.

When an interrupt is injected with the HW bit set (indicating that
deactivation should be propagated to the physical distributor),
special care must be taken so that we never mark the corresponding
LR with the Active+Pending state (as the pending state is kept in
the physycal distributor).

Fixes: 59529f69f504 ("KVM: arm/arm64: vgic-new: Add GICv3 world switch backend")
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Christoffer Dall <cdall@linaro.org>
Signed-off-by: Christoffer Dall <cdall@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
virt/kvm/arm/vgic/vgic-v3.c