[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4866ab1d-4d3c-577c-c94f-a51d82ca56a7@gmail.com>
Date: Fri, 13 Jan 2023 23:07:28 +0200
From: Tariq Toukan <ttoukan.linux@...il.com>
To: Maxim Mikityanskiy <maxtram95@...il.com>,
Jakub Kicinski <kuba@...nel.org>,
Eelco Chaudron <echaudro@...hat.com>,
Tariq Toukan <tariqt@...dia.com>
Cc: Toke Høiland-Jørgensen <toke@...hat.com>,
Andy Gospodarek <andrew.gospodarek@...adcom.com>,
ast@...nel.org, daniel@...earbox.net, davem@...emloft.net,
hawk@...nel.org, john.fastabend@...il.com, andrii@...nel.org,
kafai@...com, songliubraving@...com, yhs@...com,
kpsingh@...nel.org, lorenzo.bianconi@...hat.com,
netdev@...r.kernel.org, bpf@...r.kernel.org,
Jesper Dangaard Brouer <brouer@...hat.com>,
Ilias Apalodimas <ilias.apalodimas@...aro.org>,
Andy Gospodarek <gospo@...adcom.com>,
Lorenzo Bianconi <lorenzo@...nel.org>, gal@...dia.com,
Saeed Mahameed <saeedm@...dia.com>
Subject: Re: [PATCH net-next v2] samples/bpf: fixup some tools to be able to
support xdp multibuffer
On 10/01/2023 22:59, Maxim Mikityanskiy wrote:
> On Tue, Jan 03, 2023 at 05:21:53PM -0800, Jakub Kicinski wrote:
>> On Tue, 03 Jan 2023 16:19:49 +0100 Toke Høiland-Jørgensen wrote:
>>> Hmm, good question! I don't think we've ever explicitly documented any
>>> assumptions one way or the other. My own mental model has certainly
>>> always assumed the first frag would continue to be the same size as in
>>> non-multi-buf packets.
>>
>> Interesting! :) My mental model was closer to GRO by frags
>> so the linear part would have no data, just headers.
>>
>> A random datapoint is that bpf_xdp_adjust_head() seems
>> to enforce that there is at least ETH_HLEN.
>
> Also bpf_xdp_frags_increase_tail has the following check:
>
> if (!rxq->frag_size || rxq->frag_size > xdp->frame_sz)
> return -EOPNOTSUPP;
>
> However, I can't seem to find where the `frag_size > frame_sz` part is
> actually used. Maybe this condition can be dropped? Can someone shed
> some light?
>
> BTW, Tariq, we seem to have missed setting frag_size to a non-zero
> value.
Hey Maxim,
Indeed. We use xdp_rxq_info_reg, it passes 0 as frag_size.
> Could you check that increasing the tail indeed doesn't work on
> fragmented packets on mlx5e? I can send a oneliner to fix that.
I can test early next week, and update.
Powered by blists - more mailing lists