projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d1bccaa
)
KVM: x86: WARN if IRQ bypass routing is updated without in-kernel local APIC
author
Sean Christopherson
<seanjc@google.com>
Wed, 11 Jun 2025 22:45:54 +0000
(15:45 -0700)
committer
Sean Christopherson
<seanjc@google.com>
Mon, 23 Jun 2025 16:50:45 +0000
(09:50 -0700)
Yell if kvm_pi_update_irte() is reached without an in-kernel local APIC,
as kvm_arch_irqfd_allowed() should prevent attaching an irqfd and thus any
and all postable IRQs to an APIC-less VM.
Link:
https://lore.kernel.org/r/20250611224604.313496-53-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/irq.c
patch
|
blob
|
blame
|
history
diff --git
a/arch/x86/kvm/irq.c
b/arch/x86/kvm/irq.c
index 81a19d6afe44f2a6eccbe72ea8d740d22a5513c8..f87f63a53edebca78eff7de052ef940f66e603de 100644
(file)
--- a/
arch/x86/kvm/irq.c
+++ b/
arch/x86/kvm/irq.c
@@
-517,8
+517,8
@@
static int kvm_pi_update_irte(struct kvm_kernel_irqfd *irqfd,
struct kvm_lapic_irq irq;
int r;
- if (
!irqchip_in_kernel(kvm) || WARN_ON_ONCE(
!kvm_arch_has_irq_bypass()))
- return
0
;
+ if (
WARN_ON_ONCE(!irqchip_in_kernel(kvm) ||
!kvm_arch_has_irq_bypass()))
+ return
-EINVAL
;
if (entry && entry->type == KVM_IRQ_ROUTING_MSI) {
kvm_set_msi_irq(kvm, entry, &irq);