RE: [RFC PATCH V3 4/4] x86/hyperv: Allow Hyper-V to inject STIMER0 interrupts

From: Michael Kelley
Date: Thu Jul 24 2025 - 19:35:46 EST


From: Tianyu Lan <ltykernel@xxxxxxxxx> Sent: Wednesday, July 23, 2025 12:03 PM
>
> When Secure AVIC is enabled, call Secure AVIC
> function to allow Hyper-V to inject STIMER0 interrupt.
>
> Signed-off-by: Tianyu Lan <tiala@xxxxxxxxxxxxx>
> ---
> arch/x86/hyperv/hv_init.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/arch/x86/hyperv/hv_init.c b/arch/x86/hyperv/hv_init.c
> index 3d1d3547095a..591338162420 100644
> --- a/arch/x86/hyperv/hv_init.c
> +++ b/arch/x86/hyperv/hv_init.c
> @@ -132,6 +132,10 @@ static int hv_cpu_init(unsigned int cpu)
> wrmsrq(HV_X64_MSR_VP_ASSIST_PAGE, msr.as_uint64);
> }
>
> + /* Allow Hyper-V stimer vector to be injected from Hypervisor. */
> + if (ms_hyperv.misc_features & HV_STIMER_DIRECT_MODE_AVAILABLE)
> + apic_update_vector(cpu, HYPERV_STIMER0_VECTOR, true);
> +
> return hyperv_init_ghcb();
> }
>
> @@ -239,6 +243,9 @@ static int hv_cpu_die(unsigned int cpu)
> *ghcb_va = NULL;
> }
>
> + if (ms_hyperv.misc_features & HV_STIMER_DIRECT_MODE_AVAILABLE)
> + apic_update_vector(cpu, HYPERV_STIMER0_VECTOR, false);
> +
> hv_common_cpu_die(cpu);
>
> if (hv_vp_assist_page && hv_vp_assist_page[cpu]) {
> --
> 2.25.1
>

Reviewed-by: Michael Kelley <mhklinux@xxxxxxxxxxx>