2024-02-21 10:00:21

by Xuan Zhuo

[permalink] [raw]
Subject: Re: [PATCH net-next 1/2] xsk: Remove non-zero 'dma_page' check in xp_assign_dev

On Wed, 24 Jan 2024 17:37:38 +0800, Yunjian Wang <[email protected]> wrote:
> Now dma mappings are used by the physical NICs. However the vNIC
> maybe do not need them. So remove non-zero 'dma_page' check in
> xp_assign_dev.

Could you tell me which one nic can work with AF_XDP without DMA?

Thanks.


>
> Signed-off-by: Yunjian Wang <[email protected]>
> ---
> net/xdp/xsk_buff_pool.c | 7 -------
> 1 file changed, 7 deletions(-)
>
> diff --git a/net/xdp/xsk_buff_pool.c b/net/xdp/xsk_buff_pool.c
> index 28711cc44ced..939b6e7b59ff 100644
> --- a/net/xdp/xsk_buff_pool.c
> +++ b/net/xdp/xsk_buff_pool.c
> @@ -219,16 +219,9 @@ int xp_assign_dev(struct xsk_buff_pool *pool,
> if (err)
> goto err_unreg_pool;
>
> - if (!pool->dma_pages) {
> - WARN(1, "Driver did not DMA map zero-copy buffers");
> - err = -EINVAL;
> - goto err_unreg_xsk;
> - }
> pool->umem->zc = true;
> return 0;
>
> -err_unreg_xsk:
> - xp_disable_drv_zc(pool);
> err_unreg_pool:
> if (!force_zc)
> err = 0; /* fallback to copy mode */
> --
> 2.33.0
>
>


2024-02-21 11:41:02

by wangyunjian

[permalink] [raw]
Subject: RE: [PATCH net-next 1/2] xsk: Remove non-zero 'dma_page' check in xp_assign_dev

> -----Original Message-----
> From: Xuan Zhuo [mailto:[email protected]]
> Sent: Wednesday, February 21, 2024 5:53 PM
> To: wangyunjian <[email protected]>
> Cc: [email protected]; [email protected];
> [email protected]; [email protected]; xudingke
> <[email protected]>; wangyunjian <[email protected]>;
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected]
> Subject: Re: [PATCH net-next 1/2] xsk: Remove non-zero 'dma_page' check in
> xp_assign_dev
>
> On Wed, 24 Jan 2024 17:37:38 +0800, Yunjian Wang
> <[email protected]> wrote:
> > Now dma mappings are used by the physical NICs. However the vNIC maybe
> > do not need them. So remove non-zero 'dma_page' check in
> > xp_assign_dev.
>
> Could you tell me which one nic can work with AF_XDP without DMA?

TUN will support AF_XDP Tx zero-copy, which does not require DMA mappings.

Thanks

>
> Thanks.
>
>
> >
> > Signed-off-by: Yunjian Wang <[email protected]>
> > ---
> > net/xdp/xsk_buff_pool.c | 7 -------
> > 1 file changed, 7 deletions(-)
> >
> > diff --git a/net/xdp/xsk_buff_pool.c b/net/xdp/xsk_buff_pool.c index
> > 28711cc44ced..939b6e7b59ff 100644
> > --- a/net/xdp/xsk_buff_pool.c
> > +++ b/net/xdp/xsk_buff_pool.c
> > @@ -219,16 +219,9 @@ int xp_assign_dev(struct xsk_buff_pool *pool,
> > if (err)
> > goto err_unreg_pool;
> >
> > - if (!pool->dma_pages) {
> > - WARN(1, "Driver did not DMA map zero-copy buffers");
> > - err = -EINVAL;
> > - goto err_unreg_xsk;
> > - }
> > pool->umem->zc = true;
> > return 0;
> >
> > -err_unreg_xsk:
> > - xp_disable_drv_zc(pool);
> > err_unreg_pool:
> > if (!force_zc)
> > err = 0; /* fallback to copy mode */
> > --
> > 2.33.0
> >
> >