gem5
v20.1.0.0
|
These methods control interrupt delivery to the guest system. More...
Functions | |
void | BaseKvmCPU::kvmNonMaskableInterrupt () |
Send a non-maskable interrupt to the guest. More... | |
void | BaseKvmCPU::kvmInterrupt (const struct kvm_interrupt &interrupt) |
Send a normal interrupt to the guest. More... | |
void | KvmVM::createIRQChip () |
Create an in-kernel interrupt controller. More... | |
void | KvmVM::setIRQLine (uint32_t irq, bool high) |
Set the status of an IRQ line using KVM_IRQ_LINE. More... | |
bool | KvmVM::hasKernelIRQChip () const |
Is in-kernel IRQ chip emulation enabled? More... | |
void | KvmVM::enableKernelIRQChip () |
Tell the VM and VCPUs to use an in-kernel IRQ chip for interrupt delivery. More... | |
These methods control interrupt delivery to the guest system.
void KvmVM::createIRQChip | ( | ) |
Create an in-kernel interrupt controller.
Definition at line 486 of file vm.cc.
References KvmVM::_hasKernelIRQChip, KvmVM::ioctl(), panic, and warn.
|
inline |
Tell the VM and VCPUs to use an in-kernel IRQ chip for interrupt delivery.
Definition at line 360 of file vm.hh.
References KvmVM::_hasKernelIRQChip.
Referenced by KvmKernelGicV2::KvmKernelGicV2().
|
inline |
Is in-kernel IRQ chip emulation enabled?
Definition at line 351 of file vm.hh.
References KvmVM::_hasKernelIRQChip.
Referenced by BaseArmKvmCPU::kvmRun(), and BaseArmKvmCPU::startup().
|
protected |
Send a normal interrupt to the guest.
interrupt | Structure describing the interrupt to send |
Definition at line 790 of file base.cc.
References BaseKvmCPU::ioctl(), BaseKvmCPU::StatGroup::numInterrupts, panic, and BaseKvmCPU::stats.
Referenced by X86KvmCPU::deliverInterrupts().
|
protected |
Send a non-maskable interrupt to the guest.
Definition at line 782 of file base.cc.
References BaseKvmCPU::ioctl(), BaseKvmCPU::StatGroup::numInterrupts, panic, and BaseKvmCPU::stats.
Referenced by X86KvmCPU::deliverInterrupts().
void KvmVM::setIRQLine | ( | uint32_t | irq, |
bool | high | ||
) |
Set the status of an IRQ line using KVM_IRQ_LINE.
irq | Interrupt number |
high | Line level (true for high, false for low) |
Definition at line 501 of file vm.cc.
References KvmVM::ioctl(), ArmISA::irq, and panic.
Referenced by BaseArmKvmCPU::kvmRun(), ArmKvmCPU::kvmRun(), and KvmKernelGicV2::setIntState().