diff options
author | Gavin Shan <gshan@redhat.com> | 2023-01-27 07:54:50 +0800 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2023-01-29 18:46:11 +0000 |
commit | 2f8b1ad2228a7f1f1e2458864f4bfc1cbdf511ed (patch) | |
tree | a9c7d79283e80e7b610cc5d143c827ad89d113ce /arch | |
parent | a23eaf9368aafa4defcc8904b20391b6ea07bb1e (diff) | |
download | lwn-2f8b1ad2228a7f1f1e2458864f4bfc1cbdf511ed.tar.gz lwn-2f8b1ad2228a7f1f1e2458864f4bfc1cbdf511ed.zip |
KVM: arm64: Allow no running vcpu on restoring vgic3 LPI pending status
We don't have a running VCPU context to restore vgic3 LPI pending status
due to command KVM_DEV_ARM_{VGIC_GRP_CTRL, ITS_RESTORE_TABLES} on KVM
device "kvm-arm-vgic-its".
Use vgic_write_guest_lock() to restore vgic3 LPI pending status.
Signed-off-by: Gavin Shan <gshan@redhat.com>
Reviewed-by: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230126235451.469087-4-gshan@redhat.com
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm64/kvm/vgic/vgic-v3.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm64/kvm/vgic/vgic-v3.c b/arch/arm64/kvm/vgic/vgic-v3.c index 2624963cb95b..3dab286ed23f 100644 --- a/arch/arm64/kvm/vgic/vgic-v3.c +++ b/arch/arm64/kvm/vgic/vgic-v3.c @@ -339,7 +339,7 @@ retry: if (status) { /* clear consumed data */ val &= ~(1 << bit_nr); - ret = kvm_write_guest_lock(kvm, ptr, &val, 1); + ret = vgic_write_guest_lock(kvm, ptr, &val, 1); if (ret) return ret; } |