Re: In kernel PIC support: kernel patch

Dong, Eddie
2007-06-25T01:45:20Z

>> +#include "kvm.h"
>> +#include "virq.h"
>> +
>> +/*
>> + * check if there is pending interrupt without
>> + * intack.
>> + */
>> +int cpu_has_interrupt(struct kvm_vcpu *v)
>> +{
>> + struct pic_state2 *s = kernel_pic(v->kvm);
>> +
>>
>
> Isn't the PIC connected to just one cpu?

Yes, but will have APIC irq after merge.

>> +
>> enum kvm_exit_reason {
>> KVM_EXIT_UNKNOWN = 0,
>> KVM_EXIT_EXCEPTION = 1,
>> @@ -282,6 +288,9 @@ struct kvm_signal_mask {
>> #define KVM_CREATE_VCPU _IO(KVMIO, 0x41)
>> #define KVM_GET_DIRTY_LOG _IOW(KVMIO, 0x42, struct
>> kvm_dirty_log) #define KVM_SET_MEMORY_ALIAS _IOW(KVMIO, 0x43,
>> struct kvm_memory_alias) +/* Device model IOC */
>> +#define KVM_CREATE_PIC _IO(KVMIO, 0x60)
>> +#define KVM_SET_ISA_IRQ_LEVEL _IO(KVMIO, 0x61)
>>
>>
>
> Need to add a way to detect if this functionality is available, via
> KVM_CHECK_EXTENSION.

Sure. Question:
Should we check the extension API basis or feature sets list?
I.e. Each API (KVM_CREATE_PIC, KVM_SET_ISA_IRQ_LEVEL) or feature sets:
KVM_KERNEL_IRQCHIP.

Thx, eddie