From: Jens Axboe <axboe@kernel.dk>
To: David Wei <dw@davidwei.uk>,
io-uring@vger.kernel.org, netdev@vger.kernel.org
Cc: Pavel Begunkov <asml.silence@gmail.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jesper Dangaard Brouer <hawk@kernel.org>,
David Ahern <dsahern@kernel.org>,
Mina Almasry <almasrymina@google.com>,
Stanislav Fomichev <stfomichev@gmail.com>,
Joe Damato <jdamato@fastly.com>,
Pedro Tammela <pctammela@mojatatu.com>
Subject: Re: [PATCH v6 09/15] io_uring/zcrx: add interface queue and refill queue
Date: Mon, 21 Oct 2024 09:33:40 -0600 [thread overview]
Message-ID: <cddadf99-e8af-425c-a1b8-ee60fe5297e1@kernel.dk> (raw)
In-Reply-To: <20241016185252.3746190-10-dw@davidwei.uk>
On 10/16/24 12:52 PM, David Wei wrote:
> From: David Wei <davidhwei@meta.com>
>
> Add a new object called an interface queue (ifq) that represents a net
> rx queue that has been configured for zero copy. Each ifq is registered
> using a new registration opcode IORING_REGISTER_ZCRX_IFQ.
>
> The refill queue is allocated by the kernel and mapped by userspace
> using a new offset IORING_OFF_RQ_RING, in a similar fashion to the main
> SQ/CQ. It is used by userspace to return buffers that it is done with,
> which will then be re-used by the netdev again.
>
> The main CQ ring is used to notify userspace of received data by using
> the upper 16 bytes of a big CQE as a new struct io_uring_zcrx_cqe. Each
> entry contains the offset + len to the data.
Looks nicer now, I like the Kconfig symbol changes.
Reviewed-by: Jens Axboe <axboe@kernel.dk>
--
Jens Axboe
next prev parent reply other threads:[~2024-10-21 15:33 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-16 18:52 [PATCH v6 00/15] io_uring zero copy rx David Wei
2024-10-16 18:52 ` [PATCH v6 01/15] net: prefix devmem specific helpers David Wei
2024-10-16 18:52 ` [PATCH v6 02/15] net: generalise net_iov chunk owners David Wei
2024-10-23 7:20 ` Christoph Hellwig
2024-10-23 14:34 ` Pavel Begunkov
2024-10-24 9:23 ` Christoph Hellwig
2024-10-24 14:23 ` Pavel Begunkov
2024-10-24 16:06 ` Christoph Hellwig
2024-10-24 16:40 ` Pavel Begunkov
2024-10-28 12:11 ` Christoph Hellwig
2024-10-29 16:35 ` Pavel Begunkov
2024-10-30 14:57 ` Christoph Hellwig
2024-10-16 18:52 ` [PATCH v6 03/15] net: page_pool: create hooks for custom page providers David Wei
2024-10-16 18:52 ` [PATCH v6 04/15] net: prepare for non devmem TCP memory providers David Wei
2024-10-16 18:52 ` [PATCH v6 05/15] net: page_pool: add ->scrub mem provider callback David Wei
2024-10-16 18:52 ` [PATCH v6 06/15] net: page pool: add helper creating area from pages David Wei
2024-10-16 18:52 ` [PATCH v6 07/15] net: page_pool: introduce page_pool_mp_return_in_cache David Wei
2024-10-16 18:52 ` [PATCH v6 08/15] net: add helper executing custom callback from napi David Wei
2024-10-21 14:25 ` Paolo Abeni
2024-10-21 15:49 ` Jens Axboe
2024-10-21 16:34 ` Pavel Begunkov
2024-10-21 17:16 ` Pavel Begunkov
2024-10-22 7:47 ` Paolo Abeni
2024-10-22 15:36 ` Pavel Begunkov
2024-10-16 18:52 ` [PATCH v6 09/15] io_uring/zcrx: add interface queue and refill queue David Wei
2024-10-21 15:33 ` Jens Axboe [this message]
2024-10-16 18:52 ` [PATCH v6 10/15] io_uring/zcrx: add io_zcrx_area David Wei
2024-10-21 15:35 ` Jens Axboe
2024-10-21 16:28 ` Pavel Begunkov
2024-10-21 16:29 ` Jens Axboe
2024-10-21 16:39 ` Pavel Begunkov
2024-10-16 18:52 ` [PATCH v6 11/15] io_uring/zcrx: implement zerocopy receive pp memory provider David Wei
2024-10-21 15:46 ` Jens Axboe
2024-10-16 18:52 ` [PATCH v6 12/15] io_uring/zcrx: add io_recvzc request David Wei
2024-10-21 16:05 ` Jens Axboe
2024-10-16 18:52 ` [PATCH v6 13/15] io_uring/zcrx: set pp memory provider for an rx queue David Wei
2024-10-21 16:30 ` Jens Axboe
2024-10-16 18:52 ` [PATCH v6 14/15] io_uring/zcrx: add copy fallback David Wei
2024-10-21 14:40 ` Paolo Abeni
2024-10-21 18:31 ` David Wei
2024-10-22 7:48 ` Paolo Abeni
2024-10-16 18:52 ` [PATCH v6 15/15] io_uring/zcrx: throttle receive requests David Wei
2024-10-21 16:36 ` Jens Axboe
2024-10-21 15:27 ` [PATCH v6 00/15] io_uring zero copy rx Jens Axboe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cddadf99-e8af-425c-a1b8-ee60fe5297e1@kernel.dk \
--to=axboe@kernel.dk \
--cc=almasrymina@google.com \
--cc=asml.silence@gmail.com \
--cc=davem@davemloft.net \
--cc=dsahern@kernel.org \
--cc=dw@davidwei.uk \
--cc=edumazet@google.com \
--cc=hawk@kernel.org \
--cc=io-uring@vger.kernel.org \
--cc=jdamato@fastly.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pctammela@mojatatu.com \
--cc=stfomichev@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.