KVM: x86: Split the APIC from the rest of IRQCHIP.
First patch in a series which enables the relocation of the PIC/IOAPIC to userspace. Adds capability KVM_CAP_SPLIT_IRQCHIP; KVM_CAP_SPLIT_IRQCHIP enables the construction of LAPICs without the rest of the irqchip. Compile tested for x86. Signed-off-by: Steve Rutherford <srutherford@google.com> Suggested-by: Andrew Honig <ahonig@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:

committed by
Paolo Bonzini

parent
4ca7dd8ce4
commit
49df6397ed
@@ -3627,6 +3627,23 @@ struct {
|
||||
|
||||
KVM handlers should exit to userspace with rc = -EREMOTE.
|
||||
|
||||
7.5 KVM_CAP_SPLIT_IRQCHIP
|
||||
|
||||
Architectures: x86
|
||||
Parameters: None
|
||||
Returns: 0 on success, -1 on error
|
||||
|
||||
Create a local apic for each processor in the kernel. This can be used
|
||||
instead of KVM_CREATE_IRQCHIP if the userspace VMM wishes to emulate the
|
||||
IOAPIC and PIC (and also the PIT, even though this has to be enabled
|
||||
separately).
|
||||
|
||||
This supersedes KVM_CREATE_IRQCHIP, creating only local APICs, but no in kernel
|
||||
IOAPIC or PIC. This also enables in kernel routing of interrupt requests.
|
||||
|
||||
Fails if VCPU has already been created, or if the irqchip is already in the
|
||||
kernel (i.e. KVM_CREATE_IRQCHIP has already been called).
|
||||
|
||||
|
||||
8. Other capabilities.
|
||||
----------------------
|
||||
|
Reference in New Issue
Block a user