On Wed, Jul 10, 2024 at 12:55 PM Jakub Kicinski wrote:
>
> On Wed, 10 Jul 2024 12:29:58 -0700 Mina Almasry wrote:
> > On Wed, Jul 10, 2024 at 9:37 AM Jakub Kicinski wrote:
> > > On Wed, 10 Jul 2024 00:17:37 + Mina Almasry wrote:
> > > > + net_devmem_dmabuf_binding_get(binding);
> > >
> >
On Wed, 10 Jul 2024 12:29:58 -0700 Mina Almasry wrote:
> On Wed, Jul 10, 2024 at 9:37 AM Jakub Kicinski wrote:
> > On Wed, 10 Jul 2024 00:17:37 + Mina Almasry wrote:
> > > + net_devmem_dmabuf_binding_get(binding);
> >
> > Why does every iov need to hold a ref? pp holds a ref and does i
On Wed, Jul 10, 2024 at 9:37 AM Jakub Kicinski wrote:
>
> On Wed, 10 Jul 2024 00:17:37 + Mina Almasry wrote:
> > + net_devmem_dmabuf_binding_get(binding);
>
> Why does every iov need to hold a ref? pp holds a ref and does its own
> accounting, so it won't disappear unless all the pages are
On Wed, 10 Jul 2024 00:17:37 + Mina Almasry wrote:
> + net_devmem_dmabuf_binding_get(binding);
Why does every iov need to hold a ref? pp holds a ref and does its own
accounting, so it won't disappear unless all the pages are returned.
Implement netdev devmem allocator. The allocator takes a given struct
netdev_dmabuf_binding as input and allocates net_iov from that
binding.
The allocation simply delegates to the binding's genpool for the
allocation logic and wraps the returned memory region in a net_iov
struct.
Signed-off-by: