[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3d3e952b-73d7-4c63-8d0e-cb972bd3daeb@davidwei.uk>
Date: Tue, 10 Dec 2024 08:53:49 -0800
From: David Wei <dw@...idwei.uk>
To: Mina Almasry <almasrymina@...gle.com>
Cc: io-uring@...r.kernel.org, netdev@...r.kernel.org,
Jens Axboe <axboe@...nel.dk>, Pavel Begunkov <asml.silence@...il.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jesper Dangaard Brouer <hawk@...nel.org>, David Ahern <dsahern@...nel.org>,
Stanislav Fomichev <stfomichev@...il.com>, Joe Damato <jdamato@...tly.com>,
Pedro Tammela <pctammela@...atatu.com>
Subject: Re: [PATCH net-next v8 16/17] net: add documentation for io_uring
zcrx
On 2024-12-09 09:51, Mina Almasry wrote:
> On Wed, Dec 4, 2024 at 9:23 AM David Wei <dw@...idwei.uk> wrote:
>>
>> Add documentation for io_uring zero copy Rx that explains requirements
>> and the user API.
>>
>> Signed-off-by: David Wei <dw@...idwei.uk>
>> ---
>> Documentation/networking/iou-zcrx.rst | 201 ++++++++++++++++++++++++++
>> 1 file changed, 201 insertions(+)
>> create mode 100644 Documentation/networking/iou-zcrx.rst
>>
>> diff --git a/Documentation/networking/iou-zcrx.rst b/Documentation/networking/iou-zcrx.rst
>> new file mode 100644
>> index 000000000000..0a3af8c08c7e
>> --- /dev/null
...
>> +Usage
>> +=====
>> +
>> +Setup NIC
>> +---------
>> +
>> +Must be done out of band for now.
>
> I would remove any 'for now' instances in the docs. Uapis are going to
> be maintained as-is for posterity. Even if you in the future add new
> APIs which auto-configure headersplit/flow steering/rss, I'm guessing
> the current API would live on for backward compatibility reasons.
The UAPI will be extended in a way that does not affect backwards
compatibility e.g. extending io_uring_zcrx_ifq_reg. Such that any of the
following will work:
1. Configure NIC using ethtool
2. Call io_uring_register_ifq()
1. Configure NIC using new io_uring UAPI
2. Call io_uring_register_ifq()
1. Configure NIC by setting new fields in io_uring_zcrx_ifq_reg
2. Call io_uring_register_ifq()
Therefore the "for now" is intended.
>
>> +
>> +Ensure there are enough queues::
>
> Was not clear to me what are enough queues. Technically you only need
> 2 queues, right? (one for iozcrx and one for normal traffic).
I'll change it to "ensure there are at least two queues".
Powered by blists - more mailing lists