[PATCH] KVM: arm64: FFA: Use pointers from memcpy() calls for assignments in three functions

Marc Zyngier maz at kernel.org
Thu Oct 30 11:07:25 PDT 2025


On Thu, 30 Oct 2025 17:40:39 +0000,
Markus Elfring <Markus.Elfring at web.de> wrote:
> 
> From: Markus Elfring <elfring at users.sourceforge.net>
> Date: Thu, 30 Oct 2025 18:25:55 +0100
> 
> A pointer was assigned to a variable in three function implementations.
> 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 separate statements into direct variable assignments for
> the return values from memory copy actions.
> 
> The source code was transformed by using the Coccinelle software.
> 
> Signed-off-by: Markus Elfring <elfring at users.sourceforge.net>
> ---
>  arch/arm64/kvm/hyp/nvhe/ffa.c | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
> 
> diff --git a/arch/arm64/kvm/hyp/nvhe/ffa.c b/arch/arm64/kvm/hyp/nvhe/ffa.c
> index 4e16f9b96f63..4820a9e96f80 100644
> --- a/arch/arm64/kvm/hyp/nvhe/ffa.c
> +++ b/arch/arm64/kvm/hyp/nvhe/ffa.c
> @@ -431,8 +431,7 @@ static void do_ffa_mem_frag_tx(struct arm_smccc_1_2_regs *res,
>  	if (!host_buffers.tx)
>  		goto out_unlock;
>  
> -	buf = hyp_buffers.tx;
> -	memcpy(buf, host_buffers.tx, fraglen);
> +	buf = memcpy(hyp_buffers.tx, host_buffers.tx, fraglen);
>  	nr_ranges = fraglen / sizeof(*buf);

This is unreadable. And even if memcpy() behaves has you describe, you
are breaking a pattern that people are relying on.

I'm not planning to take anything of the sort.

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list