[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a636a5a0-237b-2500-a37e-c9f77b030c06@eho.link>
Date: Mon, 6 Dec 2021 17:45:46 +0100
From: Emmanuel Deloget <emmanuel.deloget@....link>
To: John Fastabend <john.fastabend@...il.com>,
Jakub Kicinski <kuba@...nel.org>,
"Russell King (Oracle)" <linux@...linux.org.uk>
Cc: Louis Amas <louis.amas@....link>, andrii@...nel.org,
ast@...nel.org, bpf@...r.kernel.org, daniel@...earbox.net,
davem@...emloft.net, hawk@...nel.org, kafai@...com,
kpsingh@...nel.org, linux-kernel@...r.kernel.org, mw@...ihalf.com,
netdev@...r.kernel.org, songliubraving@...com, yhs@...com
Subject: Re: [PATCH 1/1] net: mvpp2: fix XDP rx queues registering
John,
On 06/12/2021 17:16, John Fastabend wrote:
> Jakub Kicinski wrote:
>> On Mon, 6 Dec 2021 15:42:47 +0000 Russell King (Oracle) wrote:
>>> On Mon, Dec 06, 2021 at 04:37:20PM +0100, Emmanuel Deloget wrote:
>>>> On 10/11/2021 15:41, Louis Amas wrote:
>>>>> The registration of XDP queue information is incorrect because the
>>>>> RX queue id we use is invalid. When port->id == 0 it appears to works
>>>>> as expected yet it's no longer the case when port->id != 0.
>>>>>
>>>>> When we register the XDP rx queue information (using
>>>>> xdp_rxq_info_reg() in function mvpp2_rxq_init()) we tell them to use
>>>>> rxq->id as the queue id. This value iscomputed as:
>>>>> rxq->id = port->id * max_rxq_count + queue_id
>>>>>
>>>>> where max_rxq_count depends on the device version. In the MB case,
>>>>> this value is 32, meaning that rx queues on eth2 are numbered from
>>>>> 32 to 35 - there are four of them.
>>>>>
>>>>> Clearly, this is not the per-port queue id that XDP is expecting:
>>>>> it wants a value in the range [0..3]. It shall directly use queue_id
>>>>> which is stored in rxq->logic_rxq -- so let's use that value instead.
>>>>>
>>>>> This is consistent with the remaining part of the code in
>>>>> mvpp2_rxq_init().
>>
>>>> Is there any update on this patch ? Without it, XDP only partially work on a
>>>> MACCHIATOBin (read: it works on some ports, not on others, as described in
>>>> our analysis sent together with the original patch).
>>>
>>> I suspect if you *didn't* thread your updated patch to your previous
>>> submission, then it would end up with a separate entry in
>>> patchwork.kernel.org,
>>
>> Indeed, it's easier to keep track of patches which weren't posted
>> as a reply in a thread, at least for me.
>>
>>> and the netdev maintainers will notice that the
>>> patch is ready for inclusion, having been reviewed by Marcin.
>>
>> In this case I _think_ it was dropped because it didn't apply.
>>
>> Please rebase on top of net/master and repost if the changes is still
>> needed.
>
> Also I would add the detailed description to the actual commit not below
> the "--" lines. Capturing that in the log will be useful for future
> reference if we ever hit similar issue here or elsewhere.
>
> Otherwise for patch,
>
> Acked-by: John Fastabend <john.fastabend@...il.com>
>
Ouch. We failed to get this email before resending the patch.
My bad - and sorry for the inconvenience.
I'll see with Louis to change again the commit message and add your
Acked-by.
Best regards,
-- Emmanuel Deloget
Powered by blists - more mailing lists