[dpdk-dev] [PATCH v5 0/4] add ifcvf vdpa driver

Wang, Xiao W xiao.w.wang at intel.com
Thu Apr 12 07:47:59 CEST 2018


Hi,

> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Thursday, April 12, 2018 2:59 AM
> To: Wang, Xiao W <xiao.w.wang at intel.com>
> Cc: maxime.coquelin at redhat.com; dev at dpdk.org; Wang, Zhihong
> <zhihong.wang at intel.com>; Tan, Jianfeng <jianfeng.tan at intel.com>; Bie,
> Tiwei <tiwei.bie at intel.com>; Liang, Cunming <cunming.liang at intel.com>;
> Daly, Dan <dan.daly at intel.com>; thomas at monjalon.net;
> gaetan.rivet at 6wind.com; Burakov, Anatoly <anatoly.burakov at intel.com>;
> hemant.agrawal at nxp.com
> Subject: Re: [PATCH v5 0/4] add ifcvf vdpa driver
> 
> On 4/5/2018 7:06 PM, Xiao Wang wrote:
> > This patch set has dependency on
> http://dpdk.org/dev/patchwork/patch/36772/
> > (vhost: support selective datapath).
> >
> > IFCVF driver
> > ============
> > The IFCVF vDPA (vhost data path acceleration) driver provides support for
> the
> > Intel FPGA 100G VF (IFCVF). IFCVF's datapath is virtio ring compatible, it
> > works as a HW vhost backend which can send/receive packets to/from virtio
> > directly by DMA. Besides, it supports dirty page logging and device state
> > report/restore. This driver enables its vDPA functionality with live migration
> > feature.
> >
> > vDPA mode
> > =========
> > IFCVF's vendor ID and device ID are same as that of virtio net pci device,
> > with its specific subsystem vendor ID and device ID. To let the device be
> > probed by IFCVF driver, adding "vdpa=1" parameter helps to specify that this
> > device is to be used in vDPA mode, rather than polling mode, virtio pmd will
> > skip when it detects this message.
> >
> > Container per device
> > ====================
> > vDPA needs to create different containers for different devices, thus this
> > patch set adds some APIs in eal/vfio to support multiple container, e.g.
> > - rte_vfio_create_container
> > - rte_vfio_destroy_container
> > - rte_vfio_bind_group
> > - rte_vfio_unbind_group
> >
> > By this extension, a device can be put into a new specific container, rather
> > than the previous default container.
> >
> > IFCVF vDPA details
> > ==================
> > Key vDPA driver ops implemented:
> > - ifcvf_dev_config:
> >   Enable VF data path with virtio information provided by vhost lib, including
> >   IOMMU programming to enable VF DMA to VM's memory, VFIO interrupt
> setup to
> >   route HW interrupt to virtio driver, create notify relay thread to translate
> >   virtio driver's kick to a MMIO write onto HW, HW queues configuration.
> >
> >   This function gets called to set up HW data path backend when virtio driver
> >   in VM gets ready.
> >
> > - ifcvf_dev_close:
> >   Revoke all the setup in ifcvf_dev_config.
> >
> >   This function gets called when virtio driver stops device in VM.
> >
> > Change log
> > ==========
> > v5:
> > - Fix compilation in BSD, remove the rte_vfio.h including in BSD.
> >
> > v4:
> > - Rebase on Zhihong's latest vDPA lib patch, with vDPA ops names change.
> > - Remove API "rte_vfio_get_group_fd", "rte_vfio_bind_group" will return the
> fd.
> > - Align the vfio_cfg search internal APIs naming.
> >
> > v3:
> > - Add doc and release note for the new driver.
> > - Remove the vdev concept, make the driver as a PCI driver, it will get probed
> >   by PCI bus driver.
> > - Rebase on the v4 vDPA lib patch, register a vDPA device instead of a engine.
> > - Remove the PCI API exposure accordingly.
> > - Move the MAX_VFIO_CONTAINERS definition to config file.
> > - Let virtio pmd skips when a virtio device needs to work in vDPA mode.
> >
> > v2:
> > - Rename function pci_get_kernel_driver_by_path to
> rte_pci_device_kdriver_name
> >   to make the API generic cross Linux and BSD, make it as EXPERIMENTAL.
> > - Rebase on Zhihong's vDPA v3 patch set.
> > - Minor code cleanup on vfio extension.
> >
> >
> > Xiao Wang (4):
> >   eal/vfio: add multiple container support
> >   net/virtio: skip device probe in vdpa mode
> >   net/ifcvf: add ifcvf vdpa driver
> >   doc: add ifcvf driver document and release note
> 
> Hi Xiao,
> 
> Current patch doesn't apply cleanly after latest updates, can you please rebase
> it onto latest next-net, also there are a few minor comments I put into
> individual patches can you please check them?
> 
> After above changes done, please add for series:
> Reviewed-by: Ferruh Yigit <ferruh.yigit at intel.com>

Thanks, will update according to that.

BRs,
Xiao


More information about the dev mailing list