[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z9BSlzpbNRL2MzPj@casper.infradead.org>
Date: Tue, 11 Mar 2025 15:11:19 +0000
From: Matthew Wilcox <willy@...radead.org>
To: Yunsheng Lin <linyunsheng@...wei.com>
Cc: Toke Høiland-Jørgensen <toke@...hat.com>,
Yunsheng Lin <yunshenglin0825@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Jesper Dangaard Brouer <hawk@...nel.org>,
Ilias Apalodimas <ilias.apalodimas@...aro.org>,
"David S. Miller" <davem@...emloft.net>,
Yonglong Liu <liuyonglong@...wei.com>,
Mina Almasry <almasrymina@...gle.com>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Simon Horman <horms@...nel.org>, linux-mm@...ck.org,
netdev@...r.kernel.org
Subject: Re: [RFC PATCH net-next] page_pool: Track DMA-mapped pages and unmap
them when destroying the pool
On Tue, Mar 11, 2025 at 08:25:25PM +0800, Yunsheng Lin wrote:
> > struct page {
> > unsigned long flags;
> > unsigned long memdesc;
>
> It seems there may be memory behind the above 'memdesc' with different size
> and layout for different subsystem?
Yes.
> I am not sure if I understand the case of the same page might be handle in
> two subsystems concurrently or a page is allocated in one subsystem and
> then passed to be handled in other subsystem, for examlpe:
> page_pool owned page is mmap'ed into user space through tcp zero copy,
> see tcp_zerocopy_vm_insert_batch(), it seems the same page is handled in
> both networking/page_pool and vm subsystem?
It's not that arbitrary. I mean, you could read all the documentation
I've written about this concept, listen to the talks I've given. But
sure, you're a special fucking snowflake and deserve your own unique
explanation.
Powered by blists - more mailing lists