Re: [PATCH v2 05/13] hyperv: fix hv_input_get_system_property layout for SNP status
From: Wei Liu
Date: Mon Aug 10 2026 - 15:00:57 EST
On Mon, Aug 10, 2026 at 12:44:59PM +0000, Wei Hu wrote:
> From: Wei Hu <weh@xxxxxxxxxxxxx>
>
> The processor-feature selector must sit at offset 8 (property_id + u32
> reserved), matching the Microsoft Hypervisor ABI. Upstream 7.1's leaner
> struct placed it at offset 4, so HVCALL_GET_SYSTEM_PROPERTY(SNP_STATUS)
> failed and mshv aborted (no /dev/mshv). Restore reserved + u64 union.
>
> Signed-off-by: Wei Hu <weh@xxxxxxxxxxxxx>
This patch exists in upstream as:
commit d6f0248f04a96249660591e47fcf37ba98ac7ea3
Author: Wei Liu <wei.liu@xxxxxxxxxx>
AuthorDate: Tue Jun 30 14:57:54 2026 -0700
Commit: Wei Liu <wei.liu@xxxxxxxxxx>
CommitDate: Wed Jul 22 21:58:21 2026 +0000
mshv: fix hv_input_get_system_property struct
Keep it in sync with the correct definition.
The old code worked by chance.
Fixes: e68bda71a2384 ("hyperv: Add new Hyper-V headers in include/hyperv")
Cc: stable@xxxxxxxxxx
Signed-off-by: Wei Liu <wei.liu@xxxxxxxxxx>
You can drop this.
Wei
> ---
> include/hyperv/hvhdk_mini.h | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/include/hyperv/hvhdk_mini.h b/include/hyperv/hvhdk_mini.h
> index db83fedce243..dd84085c0aff 100644
> --- a/include/hyperv/hvhdk_mini.h
> +++ b/include/hyperv/hvhdk_mini.h
> @@ -237,8 +237,9 @@ enum hv_dynamic_processor_feature_property {
>
> struct hv_input_get_system_property {
> u32 property_id; /* enum hv_system_property */
> + u32 reserved;
> union {
> - u32 as_uint32;
> + u64 as_uint64;
> #if IS_ENABLED(CONFIG_X86)
> /* enum hv_dynamic_processor_feature_property */
> u32 hv_processor_feature;
> --
> 2.43.0
>