[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5ec6f5e4-7b6a-17b3-492c-44364644f155@intel.com>
Date: Mon, 24 Apr 2023 17:28:01 +0200
From: Alexander Lobakin <aleksander.lobakin@...el.com>
To: Jakub Kicinski <kuba@...nel.org>
CC: Xuan Zhuo <xuanzhuo@...ux.alibaba.com>, <netdev@...r.kernel.org>,
Björn Töpel <bjorn@...nel.org>,
Magnus Karlsson <magnus.karlsson@...el.com>,
Maciej Fijalkowski <maciej.fijalkowski@...el.com>,
Jonathan Lemon <jonathan.lemon@...il.com>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Paolo Abeni <pabeni@...hat.com>,
Alexei Starovoitov <ast@...nel.org>,
"Daniel Borkmann" <daniel@...earbox.net>,
Jesper Dangaard Brouer <hawk@...nel.org>,
John Fastabend <john.fastabend@...il.com>,
<bpf@...r.kernel.org>, <virtualization@...ts.linux-foundation.org>,
"Michael S. Tsirkin" <mst@...hat.com>,
Guenter Roeck <linux@...ck-us.net>,
Gerd Hoffmann <kraxel@...hat.com>,
Jason Wang <jasowang@...hat.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jens Axboe <axboe@...nel.dk>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Christoph Hellwig <hch@...radead.org>
Subject: Re: [PATCH net-next] xsk: introduce xsk_dma_ops
From: Jakub Kicinski <kuba@...nel.org>
Date: Fri, 21 Apr 2023 06:50:59 -0700
> On Fri, 21 Apr 2023 15:31:04 +0800 Xuan Zhuo wrote:
>> I am not particularly familiar with dma-bufs. I want to know if this mechanism
>> can solve the problem of virtio-net.
>>
>> I saw this framework, allowing the driver do something inside the ops of
>> dma-bufs.
>>
>> If so, is it possible to propose a new patch based on dma-bufs?
>
> I haven't looked in detail, maybe Olek has? AFAIU you'd need to rework
Oh no, not me. I suck at dma-bufs, tried to understand them several
times with no progress :D My knowledge is limited to "ok, if it's
DMA + userspace, then it's likely dma-buf" :smile_with_tear:
> uAPI of XSK to allow user to pass in a dma-buf region rather than just
> a user VA. So it may be a larger effort but architecturally it may be
> the right solution.
>
I'm curious whether this could be done without tons of work. Switching
Page Pool to dma_alloc_noncoherent() is simpler :D But, as I wrote
above, we need to extend DMA API first to provide bulk allocations and
NUMA-aware allocations.
Can't we provide a shim for back-compat, i.e. if a program passes just a
user VA, create a dma-buf in the kernel already?
Thanks,
Olek
Powered by blists - more mailing lists