[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <da4a9efd-64b3-4dc5-a613-b73e17f160d6@gmail.com>
Date: Mon, 28 Jul 2025 19:49:30 +0100
From: Pavel Begunkov <asml.silence@...il.com>
To: Mina Almasry <almasrymina@...gle.com>
Cc: Byungchul Park <byungchul@...com>, linux-mm@...ck.org,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
kernel_team@...ynix.com, harry.yoo@...cle.com, ast@...nel.org,
daniel@...earbox.net, davem@...emloft.net, kuba@...nel.org, hawk@...nel.org,
john.fastabend@...il.com, sdf@...ichev.me, saeedm@...dia.com,
leon@...nel.org, tariqt@...dia.com, mbloch@...dia.com,
andrew+netdev@...n.ch, edumazet@...gle.com, pabeni@...hat.com,
akpm@...ux-foundation.org, david@...hat.com, lorenzo.stoakes@...cle.com,
Liam.Howlett@...cle.com, vbabka@...e.cz, rppt@...nel.org, surenb@...gle.com,
mhocko@...e.com, horms@...nel.org, jackmanb@...gle.com, hannes@...xchg.org,
ziy@...dia.com, ilias.apalodimas@...aro.org, willy@...radead.org,
brauner@...nel.org, kas@...nel.org, yuzhao@...gle.com,
usamaarif642@...il.com, baolin.wang@...ux.alibaba.com, toke@...hat.com,
bpf@...r.kernel.org, linux-rdma@...r.kernel.org
Subject: Re: [PATCH v2] mm, page_pool: introduce a new page type for page pool
in page type
On 7/28/25 19:39, Mina Almasry wrote:
> On Mon, Jul 28, 2025 at 11:35 AM Pavel Begunkov <asml.silence@...il.com> wrote:
>>
>> On 7/28/25 06:27, Byungchul Park wrote:
>>> Changes from v1:
>>> 1. Rebase on linux-next.
>>
>> net-next is closed, looks like until August 11.
>>
>>> 2. Initialize net_iov->pp = NULL when allocating net_iov in
>>> net_devmem_bind_dmabuf() and io_zcrx_create_area().
>>> 3. Use ->pp for net_iov to identify if it's pp rather than
>>> always consider net_iov as pp.
>>> 4. Add Suggested-by: David Hildenbrand <david@...hat.com>.
>>
>> Oops, looks you killed my suggested-by tag now. Since it's still
>> pretty much my diff spliced with David's suggestions, maybe
>> Co-developed-by sounds more appropriate. Even more so goes for
>> the second patch getting rid of __netmem_clear_lsb().
>>
>> Looks fine, just one comment below.
>>
>> ...> diff --git a/io_uring/zcrx.c b/io_uring/zcrx.c
>>> index 100b75ab1e64..34634552cf74 100644
>>> --- a/io_uring/zcrx.c
>>> +++ b/io_uring/zcrx.c
>>> @@ -444,6 +444,7 @@ static int io_zcrx_create_area(struct io_zcrx_ifq *ifq,
>>> area->freelist[i] = i;
>>> atomic_set(&area->user_refs[i], 0);
>>> niov->type = NET_IOV_IOURING;
>>> + niov->pp = NULL;
>>
>> It's zero initialised, you don't need it.
>>
>
> This may be my bad since I said we should check if it's 0 initialized.
>
> It looks like on the devmem side as well we kvmalloc_array the niovs,
> and if I'm checking through the helpers right, kvmalloc_array does
> 0-initialize indeed.
I wouldn't rely on that, it's just for zcrx I do:
kvmalloc_array(..., GFP_KERNEL | __GFP_ZERO);
--
Pavel Begunkov
Powered by blists - more mailing lists