On Tue, Apr 13, 2021 at 9:58 AM Xuan Zhuo <xuanzhuo@xxxxxxxxxxxxxxxxx> wrote: > > Some devices, such as virtio-net, do not directly use dma addr. These > devices do not initialize dma after completing the xsk setup, so the dma > check is skipped here. > > Signed-off-by: Xuan Zhuo <xuanzhuo@xxxxxxxxxxxxxxxxx> > Reviewed-by: Dust Li <dust.li@xxxxxxxxxxxxxxxxx> Acked-by: Magnus Karlsson <magnus.karlsson@xxxxxxxxx> > --- > net/xdp/xsk_buff_pool.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/net/xdp/xsk_buff_pool.c b/net/xdp/xsk_buff_pool.c > index 8de01aaac4a0..a7e434de0308 100644 > --- a/net/xdp/xsk_buff_pool.c > +++ b/net/xdp/xsk_buff_pool.c > @@ -171,7 +171,7 @@ int xp_assign_dev(struct xsk_buff_pool *pool, > if (err) > goto err_unreg_pool; > > - if (!pool->dma_pages) { > + if (!(netdev->priv_flags & IFF_NOT_USE_DMA_ADDR) && !pool->dma_pages) { > WARN(1, "Driver did not DMA map zero-copy buffers"); > err = -EINVAL; > goto err_unreg_xsk; > -- > 2.31.0 >