[PATCH] accel/qaic: Use pointer from memcpy() call for assignment in copy_partial_exec_reqs()

Markus Elfring posted 1 patch 3 months, 1 week ago
drivers/accel/qaic/qaic_data.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] accel/qaic: Use pointer from memcpy() call for assignment in copy_partial_exec_reqs()
Posted by Markus Elfring 3 months, 1 week ago
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Fri, 31 Oct 2025 11:26:33 +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@users.sourceforge.net>
---
 drivers/accel/qaic/qaic_data.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/accel/qaic/qaic_data.c b/drivers/accel/qaic/qaic_data.c
index fa723a2bdfa9..c1b315d1689c 100644
--- a/drivers/accel/qaic/qaic_data.c
+++ b/drivers/accel/qaic/qaic_data.c
@@ -1171,8 +1171,8 @@ static inline int copy_partial_exec_reqs(struct qaic_device *qdev, struct bo_sli
 	 * Copy over the last entry. Here we need to adjust len to the left over
 	 * size, and set src and dst to the entry it is copied to.
 	 */
-	last_req = fifo_at(dbc->req_q_base, (tail + first_n) % dbc->nelem);
-	memcpy(last_req, reqs + slice->nents - 1, sizeof(*reqs));
+	last_req = memcpy(fifo_at(dbc->req_q_base, (tail + first_n) % dbc->nelem),
+			  reqs + slice->nents - 1, sizeof(*reqs));
 
 	/*
 	 * last_bytes holds size of a DMA segment, maximum DMA segment size is
-- 
2.51.1
Re: [PATCH] accel/qaic: Use pointer from memcpy() call for assignment in copy_partial_exec_reqs()
Posted by Jeff Hugo 3 months, 1 week ago
On 10/31/2025 4:34 AM, Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Fri, 31 Oct 2025 11:26:33 +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@users.sourceforge.net>

This does not match the address this patch was received from, therefore 
DCO does not appear to be satisfied.  I cannot accept this.

> ---
>   drivers/accel/qaic/qaic_data.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/accel/qaic/qaic_data.c b/drivers/accel/qaic/qaic_data.c
> index fa723a2bdfa9..c1b315d1689c 100644
> --- a/drivers/accel/qaic/qaic_data.c
> +++ b/drivers/accel/qaic/qaic_data.c
> @@ -1171,8 +1171,8 @@ static inline int copy_partial_exec_reqs(struct qaic_device *qdev, struct bo_sli
>   	 * Copy over the last entry. Here we need to adjust len to the left over
>   	 * size, and set src and dst to the entry it is copied to.
>   	 */
> -	last_req = fifo_at(dbc->req_q_base, (tail + first_n) % dbc->nelem);
> -	memcpy(last_req, reqs + slice->nents - 1, sizeof(*reqs));
> +	last_req = memcpy(fifo_at(dbc->req_q_base, (tail + first_n) % dbc->nelem),
> +			  reqs + slice->nents - 1, sizeof(*reqs));

The new version reads worse to me, so I do not consider this to be an 
improvement.  This is not a critical path, so I doubt any performance 
increase that may exist outweighs the impact to readability.

-Jeff
Re: [PATCH] accel/qaic: Use pointer from memcpy() call for assignment in copy_partial_exec_reqs()
Posted by Markus Elfring 3 months, 1 week ago
>> From: Markus Elfring <elfring@users.sourceforge.net>
>> Date: Fri, 31 Oct 2025 11:26:33 +0100
…>> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> 
> This does not match the address this patch was received from, therefore DCO does not appear to be satisfied.  I cannot accept this.

I find such a change rejection questionable.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.18-rc3#n409

Regards,
Markus
Re: [PATCH] accel/qaic: Use pointer from memcpy() call for assignment in copy_partial_exec_reqs()
Posted by Jeff Hugo 3 months, 1 week ago
On 10/31/2025 9:34 AM, Markus Elfring wrote:
>>> From: Markus Elfring <elfring@users.sourceforge.net>
>>> Date: Fri, 31 Oct 2025 11:26:33 +0100
> …>> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
>>
>> This does not match the address this patch was received from, therefore DCO does not appear to be satisfied.  I cannot accept this.
> 
> I find such a change rejection questionable.
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.18-rc3#n409

I received this patch from "Markus Elfring <Markus.Elfring@web.de>". 
There is no SOB from "Markus Elfring <Markus.Elfring@web.de>" therefore 
"Markus Elfring <Markus.Elfring@web.de>" has not followed the DCO.

The resolution to this is either the author and the SOB change to 
"Markus Elfring <Markus.Elfring@web.de>" or "Markus Elfring 
<Markus.Elfring@web.de>" adds a SOB at the end to show the path the 
patch took (reference the paragraph in the documentation you linked to, 
starting at line 449).

-Jeff
Re: [PATCH] accel/qaic: Use pointer from memcpy() call for assignment in copy_partial_exec_reqs()
Posted by Markus Elfring 3 months, 1 week ago
>>>> From: Markus Elfring <elfring@users.sourceforge.net>
>>>> Date: Fri, 31 Oct 2025 11:26:33 +0100
>>>> …
>>>> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
>>>
>>> This does not match the address this patch was received from, therefore DCO does not appear to be satisfied.  I cannot accept this.
>>
>> I find such a change rejection questionable.
>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.18-rc3#n409
> 
> I received this patch from "Markus Elfring <Markus.Elfring@web.de>".

This can be fine.


> There is no SOB from "Markus Elfring <Markus.Elfring@web.de>" therefore "Markus Elfring <Markus.Elfring@web.de>" has not followed the DCO.

Are you aware how author information can be better preserved for patches?


> The resolution to this is either the author and the SOB change to "Markus Elfring <Markus.Elfring@web.de>" or "Markus Elfring <Markus.Elfring@web.de>" adds a SOB at the end to show the path the patch took (reference the paragraph in the documentation you linked to, starting at line 449).

There are obviously two email addresses which refer to me.

Would you be willing to clarify the proposed change possibility another bit?
(Would another patch variant become relevant for the affected software component at all?)

Regards,
Markus