Re: [PATCH 0/5] x86/Hyper-V: Add AMD Secure AVIC for Hyper-V platform

Wei Liu
2025-09-30T23:05:35Z

On Thu, Sep 18, 2025 at 11:00:18AM -0400, Tianyu Lan wrote:
> Secure AVIC is a new hardware feature in the AMD64
> architecture to allow SEV-SNP guests to prevent the
> hypervisor from generating unexpected interrupts to
> a vCPU or otherwise violate architectural assumptions
> around APIC behavior.
>
> Each vCPU has a guest-allocated APIC backing page of
> size 4K, which maintains APIC state for that vCPU.
> APIC backing page's ALLOWED_IRR field indicates the
> interrupt vectors which the guest allows the hypervisor
> to send.
>
> This patchset is to enable the feature for Hyper-V
> platform. Patch "Drivers: hv: Allow vmbus message
> synic interrupt injected from Hyper-V" is to expose
> new fucntion hv_enable_coco_interrupt() and device
> driver and arch code may update AVIC backing page
> ALLOWED_IRR field to allow Hyper-V inject associated
> vector.
>
> The patchset is based on the tip tree commit 27a17e02418e
> (x86/sev: Indicate the SEV-SNP guest supports Secure AVIC)
>
> Tianyu Lan (5):
> x86/hyperv: Don't use hv apic driver when Secure AVIC is available
> drivers: hv: Allow vmbus message synic interrupt injected from Hyper-V
> x86/hyperv: Don't use auto-eoi when Secure AVIC is available
> x86/hyperv: Allow Hyper-V to inject STIMER0 interrupts

These look good to me.

> x86/Hyper-V: Add Hyper-V specific hvcall to set backing page

Please address Borislav's comment on this patch.

Thanks,
Wei

>
> arch/x86/hyperv/hv_apic.c | 8 ++++++
> arch/x86/hyperv/hv_init.c | 31 ++++++++++++++++++++++-
> arch/x86/hyperv/ivm.c | 38 ++++++++++++++++++++++++++++
> arch/x86/include/asm/mshyperv.h | 2 ++
> arch/x86/kernel/apic/x2apic_savic.c | 9 ++++++-
> arch/x86/kernel/cpu/mshyperv.c | 3 +++
> drivers/hv/hv.c | 2 ++
> drivers/hv/hv_common.c | 5 ++++
> include/asm-generic/mshyperv.h | 1 +
> include/hyperv/hvgdk_mini.h | 39 +++++++++++++++++++++++++++++
> 10 files changed, 136 insertions(+), 2 deletions(-)
>
> --
> 2.25.1
>
>