Re: [PATCH net V3] net: stmmac: Premature loop termination check was ignored

From: Henneberg - Systemdesign
Date: Wed Feb 22 2023 - 10:54:44 EST



Simon Horman <simon.horman@xxxxxxxxxxxx> writes:

> On Wed, Feb 22, 2023 at 08:38:28AM +0100, Jochen Henneberg wrote:
>>
>> The premature loop termination check makes sense only in case of the
>> jump to read_again where the count may have been updated. But
>> read_again did not include the check.
>>
>> Fixes: bba2556efad6 ("net: stmmac: Enable RX via AF_XDP zero-copy")
>
> This commit was included in v5.13
>
>> Fixes: ec222003bd94 ("net: stmmac: Prepare to add Split Header support")
>
> While this one was included in v5.4
>
> It seems to me that each of the above commits correspond to one
> of the two hunks below. I don't know if that means this
> patch should be split in two to assist backporting.
>

I was thinking about this already but the change was so trivial that I
hesitated to split it into two commits. I wanted I will surely change
this.

>> Signed-off-by: Jochen Henneberg <jh@xxxxxxxxxxxxxxxxxxxxxxxxxx>
>
> That aside, this looks good to me.
>
> Reviewed-by: Simon Horman <simon.horman@xxxxxxxxxxxx>
>
>> ---
>> V2: Added fixes tags
>> V3: Fixed fixes tag format
>>
>> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
>> index 1a5b8dab5e9b..de98c009866a 100644
>> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
>> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
>> @@ -5031,10 +5031,10 @@ static int stmmac_rx_zc(struct stmmac_priv *priv, int limit, u32 queue)
>> len = 0;
>> }
>>
>> +read_again:
>> if (count >= limit)
>> break;
>>
>> -read_again:
>> buf1_len = 0;
>> entry = next_entry;
>> buf = &rx_q->buf_pool[entry];
>> @@ -5221,10 +5221,10 @@ static int stmmac_rx(struct stmmac_priv *priv, int limit, u32 queue)
>> len = 0;
>> }
>>
>> +read_again:
>> if (count >= limit)
>> break;
>>
>> -read_again:
>> buf1_len = 0;
>> buf2_len = 0;
>> entry = next_entry;
>> --
>> 2.39.2
>>


--
Henneberg - Systemdesign
Jochen Henneberg
Loehnfeld 26
21423 Winsen (Luhe)
--
Fon: +49 172 160 14 69
Url: https://www.henneberg-systemdesign.com