ioapic: Drop post-load irr initialization
As all devices undergo a reset prior to vmloa, and the reset value ofirr is 0, we do not need to do this clearing for older vmstatesexplicitly. Dropping this redundant code will also make KVM integrationa bit simpler....
apic: Inject external NMI events via LINT1
On real hardware, NMI button events are injected via the LINT1 line ofthe APICs. E.g. kdump expect this wiring and gets upset if the per-APICLINT1 mask is not respected, i.e. if NMIs are injected to VCPUs that...
apic: Introduce apic_report_irq_delivered
The in-kernel i8259 and IOAPIC backends for KVM will need this, soencapsulate the shared bits.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
apic: Factor out base class for KVM reuse
The KVM in-kernel APIC model will reuse parts of the user space modelwhile providing the same frontend view to guest and most managementinterfaces.
Factor out an APIC base class to encapsulate those parts that will be...
apic: Open-code timer save/restore
To enable migration between accelerated and non-accelerated APIC models,we will need to handle the timer saving and restoring specially and canno longer rely on the automatics of VMSTATE_TIMER. Specifically,accelerated model will not start any QEMUTimer....
i8259: Completely privatize PicState
Use DeviceState instead of PicState in the public i8259 API. This iscleaner and allows to reorganize the PIC data structures for KVM reuse.
i8259: Factor out base class for KVM reuse
Analogously to the APIC, we will reuse some parts of the user spacei8259 model for KVM. The base class provides a common device state, thevmstate, the property list, a reset core and some shared init bits.
This also introduces a common helper to instantiate a single i8259 chip...
msi: Generalize msix_supported to msi_supported
Rename msix_supported to msi_supported and control MSI and MSI-Xactivation this way. That was likely to original intention for thisflag, but MSI support came after MSI-X.
kvm: Move kvmclock into hw/kvm folder
More KVM-specific devices will come, so let's start with moving thekvmclock into a dedicated folder.
apic: Stop timer on reset
All LVTs are masked on reset, so the timer becomes ineffective. Lettingit tick nevertheless is harmless, but will at least create a spurioustrace event.
View revisions
Also available in: Atom