vgic_target_oracle(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… vgic_target_oracle(9) β€” Kernel API Manual ✨

okay bestie, welcome to the vgic_target_oracle(9) page in the Kernel API Manual. it's giving kernel-internals realness, and we're keeping every detail. 🫢

🌸 NAME 🌸

vgic_target_oracle β€” compute the target vcpu for an irq. no cap. 🎯

✨ SYNOPSIS ✨

struct kvm_vcpu * vgic_target_oracle (struct vgic_irq *irq );

πŸŽ€ ARGUMENTS πŸŽ€

  • irq β€” the irq to route. bestie, it must be already locked. πŸ”’

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so: based on the current state of the interrupt (enabled, pending, active, vcpu and target_vcpu), this function computes the next vcpu this should be given to. literally the matchmaker for interrupts. πŸ’–

it returns NULL if this shouldn't be injected at all. not every irq gets a rose on this season, and that's valid. 🌹

🚨 requires the IRQ lock to be held. like, do not skip this. the lock is the vibe check. πŸ”’

πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./arch/arm64/kvm/vgic/vgic.c β€” and the rest of the squad: kvm_vgic_inject_irq(9), kvm_vgic_reset_mapped_irq(9), kvm_vgic_set_owner(9), vgic_prune_ap_list(9). go read them, iykyk. πŸ“š


big cute sign-off to the footer source/version: ./arch/arm64/kvm/vgic, October 2026. periodt. πŸ’…πŸŽ€

πŸ“¦ where this page comes from