diff options
author | Julien Thierry <[email protected]> | 2020-09-24 12:07:04 +0100 |
---|---|---|
committer | Will Deacon <[email protected]> | 2020-09-28 19:00:17 +0100 |
commit | 95e92e45a454a10a8114294d0f7aec930fb85891 (patch) | |
tree | 637e482d475bfb14a736e4500be69bea35cc728b /scripts | |
parent | 05ab72813340d11205556c0d1bc08e6857a3856c (diff) |
KVM: arm64: pmu: Make overflow handler NMI safe
kvm_vcpu_kick() is not NMI safe. When the overflow handler is called from
NMI context, defer waking the vcpu to an irq_work queue.
A vcpu can be freed while it's not running by kvm_destroy_vm(). Prevent
running the irq_work for a non-existent vcpu by calling irq_work_sync() on
the PMU destroy path.
[Alexandru E.: Added irq_work_sync()]
Signed-off-by: Julien Thierry <[email protected]>
Signed-off-by: Alexandru Elisei <[email protected]>
Tested-by: Sumit Garg <[email protected]> (Developerbox)
Cc: Julien Thierry <[email protected]>
Cc: Marc Zyngier <[email protected]>
Cc: Will Deacon <[email protected]>
Cc: Mark Rutland <[email protected]>
Cc: Catalin Marinas <[email protected]>
Cc: James Morse <[email protected]>
Cc: Suzuki K Pouloze <[email protected]>
Cc: [email protected]
Cc: [email protected]
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Will Deacon <[email protected]>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions