Re: [PATCH 1/7] x86/hyperv: Fix output argument to hypercall that changes page visibility

Nuno Das Neves
2025-02-26T22:59:54Z

On 2/26/2025 12:06 PM, mhkelley58@gmail.com wrote:
> From: Michael Kelley <mhklinux@outlook.com>
>
> The hypercall in hv_mark_gpa_visibility() is invoked with an input
> argument and an output argument. The output argument ostensibly returns
> the number of pages that were processed. But in fact, the hypercall does
> not provide any output, so the output argument is spurious.
>
> The spurious argument is harmless because Hyper-V ignores it, but in the
> interest of correctness and to avoid the potential for future problems,
> remove it.
>
> Signed-off-by: Michael Kelley <mhklinux@outlook.com>
> ---
> I have not provided a "Fixes:" tag because the error causes no impact.
> There's no value in backporting the fix.
>
> arch/x86/hyperv/ivm.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/x86/hyperv/ivm.c b/arch/x86/hyperv/ivm.c
> index dd68d9ad9b22..ec7880271cf9 100644
> --- a/arch/x86/hyperv/ivm.c
> +++ b/arch/x86/hyperv/ivm.c
> @@ -464,7 +464,6 @@ static int hv_mark_gpa_visibility(u16 count, const u64 pfn[],
> enum hv_mem_host_visibility visibility)
> {
> struct hv_gpa_range_for_visibility *input;
> - u16 pages_processed;
> u64 hv_status;
> unsigned long flags;
>
> @@ -493,7 +492,7 @@ static int hv_mark_gpa_visibility(u16 count, const u64 pfn[],
> memcpy((void *)input->gpa_page_list, pfn, count * sizeof(*pfn));
> hv_status = hv_do_rep_hypercall(
> HVCALL_MODIFY_SPARSE_GPA_PAGE_HOST_VISIBILITY, count,
> - 0, input, &pages_processed);
> + 0, input, NULL);
> local_irq_restore(flags);
>
> if (hv_result_success(hv_status))

Reviewed-by: Nuno Das Neves <nunodasneves@linux.microsoft.com>