[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <519aae24-db5c-4889-89bb-3629d15934d6@gmail.com>
Date: Mon, 6 Jan 2025 23:48:00 +0000
From: Pavel Begunkov <asml.silence@...il.com>
To: Mina Almasry <almasrymina@...gle.com>
Cc: Jakub Kicinski <kuba@...nel.org>, David Wei <dw@...idwei.uk>,
io-uring@...r.kernel.org, netdev@...r.kernel.org,
Jens Axboe <axboe@...nel.dk>, 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 v9 08/20] net: expose
page_pool_{set,clear}_pp_info
On 1/6/25 22:17, Mina Almasry wrote:
> On Thu, Jan 2, 2025 at 8:20 AM Pavel Begunkov <asml.silence@...il.com> wrote:
>>
>> On 12/21/24 02:23, Jakub Kicinski wrote:
>>> On Sat, 21 Dec 2024 01:07:44 +0000 Pavel Begunkov wrote:
>>>>>> Memory providers need to set page pool to its net_iovs on allocation, so
>>>>>> expose page_pool_{set,clear}_pp_info to providers outside net/.
>>>>>
>>>>> I'd really rather not expose such low level functions in a header
>>>>> included by every single user of the page pool API.
>>>>
>>>> Are you fine if it's exposed in a new header file?
>>>
>>> I guess.
>>>
>>> I'm uncomfortable with the "outside net/" phrasing of the commit
>>> message. Nothing outside net should used this stuff. Next we'll have
>>> a four letter subsystem abusing it and claiming that it's in a header
>>> so it's a public.
>>
>> By net/ I purely meant the folder, even though it also dictates
>> the available API. io_uring is outside, having some glue API
>> between them is the only way I can think of, even if it looks
>> different from the current series.
>>
>> Since there are strong opinions would make sense to shove it into
>> a new file and name helpers more appropriately, like net_mp_*.
>>
>
> I guess I'm a bit sorry here because I think I suggested this
> approach. I think the root of the issue is that the io_uring memory
No worries, that wasn't the reason at all. It got split to
support multiple pools per provider because of intricacies of
the queue api.
In v10 {set,clear}_pp* it's wrapped into helpers, which hide
even more networking bits.
--
Pavel Begunkov
Powered by blists - more mailing lists