Hi Maxime, Replies are inline.
> -----Original Message----- > From: Maxime Coquelin <maxime.coque...@redhat.com> > Sent: Tuesday, December 17, 2019 4:27 PM > To: Hu, Jiayu <jiayu...@intel.com>; dev@dpdk.org > Cc: Bie, Tiwei <tiwei....@intel.com>; Wang, Zhihong > <zhihong.w...@intel.com>; Richardson, Bruce > <bruce.richard...@intel.com> > Subject: Re: [RFC v2 2/2] net/vhost_dma: add vHost DMA driver > > Hi Jiayu, > > Here is an example. > > $ ./testpmd -c f -n 4 \ > > --vdev > 'dma_vhost0,iface=/tmp/sock0,queues=1,dmas=txq0@00:04.0,client=0' > > dma_vhost0 is not a good name, you have to mention it is net specific. > > Is there a tool to list available DMA engines? Yes, you can use dpdk-devbind.py to list available DMA engines. > > > > > Signed-off-by: Jiayu Hu <jiayu...@intel.com> > > --- > > config/common_base | 2 + > > config/common_linux | 1 + > > drivers/Makefile | 2 +- > > drivers/net/Makefile | 1 + > > drivers/net/vhost_dma/Makefile | 31 + > > drivers/net/vhost_dma/eth_vhost.c | 1495 > ++++++++++++++++++++ > > drivers/net/vhost_dma/eth_vhost.h | 264 ++++ > > drivers/net/vhost_dma/internal.h | 225 +++ > > .../net/vhost_dma/rte_pmd_vhost_dma_version.map | 4 + > > drivers/net/vhost_dma/virtio_net.c | 1234 ++++++++++++++++ > > mk/rte.app.mk | 1 + > > 11 files changed, 3259 insertions(+), 1 deletion(-) > > create mode 100644 drivers/net/vhost_dma/Makefile > > create mode 100644 drivers/net/vhost_dma/eth_vhost.c > > create mode 100644 drivers/net/vhost_dma/eth_vhost.h > > create mode 100644 drivers/net/vhost_dma/internal.h > > create mode 100644 > drivers/net/vhost_dma/rte_pmd_vhost_dma_version.map > > create mode 100644 drivers/net/vhost_dma/virtio_net.c > > You need to add Meson support. Will add meson build later. > > > More generally, I have been through the series and I'm not sure having a > dedicated PMD driver for this is a good idea due to all the code > duplication it implies. > > I understand it has been done this way to avoid impacting the pure SW > datapath implementation. But I'm sure the series could be reduced to a > few hundred of lines if it was integrated in vhost-user library. > Moreover, your series does not support packed ring, so it means even > more code would need to be duplicated in the end. Yes, providing a new PMD is to avoid impacting vhost library. To avoid too much duplicated code, we can just provide a separate DMA accelerated data-path in vhost-user PMD, rather than introducing a new PMD. How do you think? Thanks, Jiayu > > What do you think? > > Thanks, > Maxime