kvm_vgic_inject_irq(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

okay so welcome to kvm_vgic_inject_irq(9) from the Kernel API Manual β€” she injects an IRQ from a device to the vgic, and honestly? iconic. ✨

✨ SYNOPSIS ✨

int kvm_vgic_inject_irq (struct kvm *kvm , struct kvm_vcpu *vcpu ,
       unsigned int intid , bool level , void *owner );

πŸŽ€ ARGUMENTS πŸŽ€

okay so the cast, bestie:

  • kvm β€” the VM structure pointer. main character VM energy. πŸ’–
  • vcpu β€” the CPU for PPIs, or NULL for global interrupts. iykyk.
  • intid β€” the INTID to inject a new state to. yes bestie, literally that. 🎯
  • level β€” okay so this one has two modes, pay attention: Edge-triggered: true: to trigger the interrupt; false: to ignore the call. Level-sensitive: true: raise the input signal; false: lower the input signal. this is the whole plot. 🎚️
  • owner β€” the opaque pointer to the owner of the IRQ being raised, to verify that the caller is allowed to inject this IRQ. Userspace injections will have owner == NULL. permission check slay. πŸ”

πŸ¦‹ DESCRIPTION πŸ¦‹

The VGIC is not concerned with devices being active-LOW or active-HIGH for level-sensitive interrupts. You can think of the level parameter as 1 being HIGH and 0 being LOW, and all devices being active-HIGH. that's the vibe, that's the lore. 🌈

🌟 SEE ALSO 🌟


mwah πŸ’‹ β€” source/version: ./arch/arm64/kvm/vgic, date: October 2026. periodt, bye bestie! 🫢

πŸ“¦ where this page comes from