From: Jakub Kicinski <kuba@kernel•org>
To: Mina Almasry <almasrymina@google•com>
Cc: netdev@vger•kernel.org, linux-kernel@vger•kernel.org,
linux-doc@vger•kernel.org, linux-alpha@vger•kernel.org,
linux-mips@vger•kernel.org, linux-parisc@vger•kernel.org,
sparclinux@vger•kernel.org, linux-trace-kernel@vger•kernel.org,
linux-arch@vger•kernel.org, bpf@vger•kernel.org,
linux-kselftest@vger•kernel.org, linux-media@vger•kernel.org,
dri-devel@lists•freedesktop.org,
"Donald Hunter" <donald.hunter@gmail•com>,
"David S. Miller" <davem@davemloft•net>,
"Eric Dumazet" <edumazet@google•com>,
"Paolo Abeni" <pabeni@redhat•com>,
"Jonathan Corbet" <corbet@lwn•net>,
"Richard Henderson" <richard.henderson@linaro•org>,
"Ivan Kokshaysky" <ink@jurassic•park.msu.ru>,
"Matt Turner" <mattst88@gmail•com>,
"Thomas Bogendoerfer" <tsbogend@alpha•franken.de>,
"James E.J. Bottomley" <James.Bottomley@HansenPartnership•com>,
"Helge Deller" <deller@gmx•de>,
"Andreas Larsson" <andreas@gaisler•com>,
"Jesper Dangaard Brouer" <hawk@kernel•org>,
"Ilias Apalodimas" <ilias.apalodimas@linaro•org>,
"Steven Rostedt" <rostedt@goodmis•org>,
"Masami Hiramatsu" <mhiramat@kernel•org>,
"Mathieu Desnoyers" <mathieu.desnoyers@efficios•com>,
"Arnd Bergmann" <arnd@arndb•de>,
"Alexei Starovoitov" <ast@kernel•org>,
"Daniel Borkmann" <daniel@iogearbox•net>,
"Andrii Nakryiko" <andrii@kernel•org>,
"Martin KaFai Lau" <martin.lau@linux•dev>,
"Eduard Zingerman" <eddyz87@gmail•com>,
"Song Liu" <song@kernel•org>,
"Yonghong Song" <yonghong.song@linux•dev>,
"John Fastabend" <john.fastabend@gmail•com>,
"KP Singh" <kpsingh@kernel•org>,
"Stanislav Fomichev" <sdf@google•com>,
"Hao Luo" <haoluo@google•com>, "Jiri Olsa" <jolsa@kernel•org>,
"Steffen Klassert" <steffen.klassert@secunet•com>,
"Herbert Xu" <herbert@gondor•apana.org.au>,
"David Ahern" <dsahern@kernel•org>,
"Willem de Bruijn" <willemdebruijn.kernel@gmail•com>,
"Shuah Khan" <shuah@kernel•org>,
"Sumit Semwal" <sumit.semwal@linaro•org>,
"Christian König" <christian.koenig@amd•com>,
"Bagas Sanjaya" <bagasdotme@gmail•com>,
"Christoph Hellwig" <hch@infradead•org>,
"Nikolay Aleksandrov" <razor@blackwall•org>,
"Pavel Begunkov" <asml.silence@gmail•com>,
"David Wei" <dw@davidwei•uk>, "Jason Gunthorpe" <jgg@ziepe•ca>,
"Yunsheng Lin" <linyunsheng@huawei•com>,
"Shailend Chand" <shailend@google•com>,
"Harshitha Ramamurthy" <hramamurthy@google•com>,
"Shakeel Butt" <shakeel.butt@linux•dev>,
"Jeroen de Borst" <jeroendb@google•com>,
"Praveen Kaligineedi" <pkaligineedi@google•com>,
linux-mm@kvack•org, "Matthew Wilcox" <willy@infradead•org>
Subject: Re: [PATCH net-next v11 05/13] page_pool: convert to use netmem
Date: Wed, 12 Jun 2024 17:10:29 -0700 [thread overview]
Message-ID: <20240612171029.71adc273@kernel.org> (raw)
In-Reply-To: <20240607005127.3078656-6-almasrymina@google.com>
On Fri, 7 Jun 2024 00:51:15 +0000 Mina Almasry wrote:
> Abstrace the memory type from the page_pool so we can later add support
> for new memory types. Convert the page_pool to use the new netmem type
> abstraction, rather than use struct page directly.
>
> As of this patch the netmem type is a no-op abstraction: it's always a
> struct page underneath. All the page pool internals are converted to
> use struct netmem instead of struct page, and the page pool now exports
> 2 APIs:
>
> 1. The existing struct page API.
> 2. The new struct netmem API.
>
> Keeping the existing API is transitional; we do not want to refactor all
> the current drivers using the page pool at once.
>
> The netmem abstraction is currently a no-op. The page_pool uses
> page_to_netmem() to convert allocated pages to netmem, and uses
> netmem_to_page() to convert the netmem back to pages to pass to mm APIs,
>
> Follow up patches to this series add non-paged netmem support to the
> page_pool. This change is factored out on its own to limit the code
> churn to this 1 patch, for ease of code review.
Sorry for lack of meaningful review, busy times, in the meantime:
drivers/net/ethernet/renesas/ravb_main.c:306:16: error: incompatible integer to pointer conversion assigning to 'struct page *' from 'netmem_ref' (aka 'unsigned long') [-Wint-conversion]
306 | rx_buff->page = page_pool_alloc(priv->rx_pool[q], &rx_buff->offset,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
307 | &size, gfp_mask);
| ~~~~~~~~~~~~~~~~
--
pw-bot: cr
next prev parent reply other threads:[~2024-06-13 0:10 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-07 0:51 [PATCH net-next v11 00/13] Device Memory TCP Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 01/13] netdev: add netdev_rx_queue_restart() Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 02/13] net: netdev netlink api to bind dma-buf to a net device Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 03/13] netdev: support binding dma-buf to netdevice Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 04/13] netdev: netdevice devmem allocator Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 05/13] page_pool: convert to use netmem Mina Almasry
2024-06-13 0:10 ` Jakub Kicinski [this message]
2024-06-07 0:51 ` [PATCH net-next v11 06/13] page_pool: devmem support Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 07/13] memory-provider: dmabuf devmem memory provider Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 08/13] net: support non paged skb frags Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 09/13] net: add support for skbs with unreadable frags Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 10/13] tcp: RX path for devmem TCP Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 11/13] net: add SO_DEVMEM_DONTNEED setsockopt to release RX frags Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 12/13] net: add devmem TCP documentation Mina Almasry
2024-06-07 0:51 ` [PATCH net-next v11 13/13] selftests: add ncdevmem, netcat for devmem TCP Mina Almasry
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=20240612171029.71adc273@kernel.org \
--to=kuba@kernel$(echo .)org \
--cc=James.Bottomley@HansenPartnership$(echo .)com \
--cc=almasrymina@google$(echo .)com \
--cc=andreas@gaisler$(echo .)com \
--cc=andrii@kernel$(echo .)org \
--cc=arnd@arndb$(echo .)de \
--cc=asml.silence@gmail$(echo .)com \
--cc=ast@kernel$(echo .)org \
--cc=bagasdotme@gmail$(echo .)com \
--cc=bpf@vger$(echo .)kernel.org \
--cc=christian.koenig@amd$(echo .)com \
--cc=corbet@lwn$(echo .)net \
--cc=daniel@iogearbox$(echo .)net \
--cc=davem@davemloft$(echo .)net \
--cc=deller@gmx$(echo .)de \
--cc=donald.hunter@gmail$(echo .)com \
--cc=dri-devel@lists$(echo .)freedesktop.org \
--cc=dsahern@kernel$(echo .)org \
--cc=dw@davidwei$(echo .)uk \
--cc=eddyz87@gmail$(echo .)com \
--cc=edumazet@google$(echo .)com \
--cc=haoluo@google$(echo .)com \
--cc=hawk@kernel$(echo .)org \
--cc=hch@infradead$(echo .)org \
--cc=herbert@gondor$(echo .)apana.org.au \
--cc=hramamurthy@google$(echo .)com \
--cc=ilias.apalodimas@linaro$(echo .)org \
--cc=ink@jurassic$(echo .)park.msu.ru \
--cc=jeroendb@google$(echo .)com \
--cc=jgg@ziepe$(echo .)ca \
--cc=john.fastabend@gmail$(echo .)com \
--cc=jolsa@kernel$(echo .)org \
--cc=kpsingh@kernel$(echo .)org \
--cc=linux-alpha@vger$(echo .)kernel.org \
--cc=linux-arch@vger$(echo .)kernel.org \
--cc=linux-doc@vger$(echo .)kernel.org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-kselftest@vger$(echo .)kernel.org \
--cc=linux-media@vger$(echo .)kernel.org \
--cc=linux-mips@vger$(echo .)kernel.org \
--cc=linux-mm@kvack$(echo .)org \
--cc=linux-parisc@vger$(echo .)kernel.org \
--cc=linux-trace-kernel@vger$(echo .)kernel.org \
--cc=linyunsheng@huawei$(echo .)com \
--cc=martin.lau@linux$(echo .)dev \
--cc=mathieu.desnoyers@efficios$(echo .)com \
--cc=mattst88@gmail$(echo .)com \
--cc=mhiramat@kernel$(echo .)org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=pabeni@redhat$(echo .)com \
--cc=pkaligineedi@google$(echo .)com \
--cc=razor@blackwall$(echo .)org \
--cc=richard.henderson@linaro$(echo .)org \
--cc=rostedt@goodmis$(echo .)org \
--cc=sdf@google$(echo .)com \
--cc=shailend@google$(echo .)com \
--cc=shakeel.butt@linux$(echo .)dev \
--cc=shuah@kernel$(echo .)org \
--cc=song@kernel$(echo .)org \
--cc=sparclinux@vger$(echo .)kernel.org \
--cc=steffen.klassert@secunet$(echo .)com \
--cc=sumit.semwal@linaro$(echo .)org \
--cc=tsbogend@alpha$(echo .)franken.de \
--cc=willemdebruijn.kernel@gmail$(echo .)com \
--cc=willy@infradead$(echo .)org \
--cc=yonghong.song@linux$(echo .)dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox