Re: [PATCH] x86/hyperv: Use pointer from memcpy() call for assignment in hv_crash_setup_trampdata()

From: Wei Liu

Date: Fri Oct 31 2025 - 14:26:18 EST


On Fri, Oct 31, 2025 at 09:33:17AM +0100, Markus Elfring wrote:
> From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
> Date: Fri, 31 Oct 2025 09:24:31 +0100
>
> A pointer was assigned to a variable. The same pointer was used for
> the destination parameter of a memcpy() call.
> This function is documented in the way that the same value is returned.
> Thus convert two separate statements into a direct variable assignment for
> the return value from a memory copy action.
>
> The source code was transformed by using the Coccinelle software.
>
> Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
> ---
> arch/x86/hyperv/hv_crash.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/arch/x86/hyperv/hv_crash.c b/arch/x86/hyperv/hv_crash.c
> index c0e22921ace1..745d02066308 100644
> --- a/arch/x86/hyperv/hv_crash.c
> +++ b/arch/x86/hyperv/hv_crash.c
> @@ -464,9 +464,7 @@ static int hv_crash_setup_trampdata(u64 trampoline_va)
> return -1;
> }
>
> - dest = (void *)trampoline_va;
> - memcpy(dest, &hv_crash_asm32, size);
> -
> + dest = memcpy((void *)trampoline_va, &hv_crash_asm32, size);

I don't think this change is needed.

There aren't that many places in the kernel tree that use this pattern.
The pattern used by the original code is far more pervasive.

Wei

> dest += size;
> dest = (void *)round_up((ulong)dest, 16);
> tramp = (struct hv_crash_tramp_data *)dest;
> --
> 2.51.1
>