Re: [PATCH v6] KVM: x86: Add x2APIC "features" to control EOI broadcast suppression

From: David Woodhouse

Date: Tue Jan 27 2026 - 16:09:45 EST


On Fri, 2026-01-23 at 12:56 +0000, Khushit Shah wrote:
>
> @@ -4931,6 +4933,8 @@ int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext)
>   break;
>   case KVM_CAP_X2APIC_API:
>   r = KVM_X2APIC_API_VALID_FLAGS;
> + if (kvm && !irqchip_split(kvm))
> + r &= ~KVM_X2APIC_ENABLE_SUPPRESS_EOI_BROADCAST;
>   break;
>   case KVM_CAP_NESTED_STATE:
>   r = kvm_x86_ops.nested_ops->get_state ?
> @@ -6748,11 +6752,24 @@ int kvm_vm_ioctl_enable_cap(struct kvm *kvm,
>   if (cap->args[0] & ~KVM_X2APIC_API_VALID_FLAGS)
>   break;
>  
> + if ((cap->args[0] & KVM_X2APIC_ENABLE_SUPPRESS_EOI_BROADCAST) &&
> +     (cap->args[0] & KVM_X2APIC_DISABLE_SUPPRESS_EOI_BROADCAST))
> + break;
> +
> + if ((cap->args[0] & KVM_X2APIC_ENABLE_SUPPRESS_EOI_BROADCAST) &&
> +     !irqchip_split(kvm))
> + break;
> +
>   if (cap->args[0] & KVM_X2APIC_API_USE_32BIT_IDS)

Is it possible to set KVM_X2APIC_ENABLE_SUPPRESS_EOI_BROADCAST and
*then* create the in-kernel I/O APIC?

Attachment: smime.p7s
Description: S/MIME cryptographic signature