From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiao Wang Subject: [PATCH 0/3] add ifcvf driver Date: Sat, 10 Mar 2018 07:08:06 +0800 Message-ID: <20180309230809.63361-1-xiao.w.wang@intel.com> Cc: zhihong.wang@intel.com, maxime.coquelin@redhat.com, yliu@fridaylinux.org, cunming.liang@intel.com, rosen.xu@intel.com, junjie.j.chen@intel.com, dan.daly@intel.com, Xiao Wang To: dev@dpdk.org Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 88C715F25 for ; Fri, 9 Mar 2018 15:34:08 +0100 (CET) List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch set has dependency on http://dpdk.org/dev/patchwork/patch/35635/ (vhost: support selective datapath); ifc VF is compatible with virtio vring operations, this driver implements vDPA driver ops which configures ifc VF to be a vhost data path accelerator. ifcvf driver uses vdev as a control domain to manage ifc VFs that belong to it. It registers vDPA device ops to vhost lib to enable these VFs to be used as vhost data path accelerator. Live migration feature is supported by ifc VF and this driver enables it based on vhost lib. vDPA needs to create different containers for different devices, thus this patch set adds APIs in eal/vfio to support multiple container. Junjie Chen (1): eal/vfio: add support for multiple container Xiao Wang (2): bus/pci: expose sysfs parsing API net/ifcvf: add ifcvf driver config/common_base | 6 + config/common_linuxapp | 1 + drivers/bus/pci/linux/pci.c | 9 +- drivers/bus/pci/linux/pci_init.h | 8 + drivers/bus/pci/rte_bus_pci_version.map | 8 + drivers/net/Makefile | 1 + drivers/net/ifcvf/Makefile | 40 + drivers/net/ifcvf/base/ifcvf.c | 329 ++++++++ drivers/net/ifcvf/base/ifcvf.h | 156 ++++ drivers/net/ifcvf/base/ifcvf_osdep.h | 52 ++ drivers/net/ifcvf/ifcvf_ethdev.c | 1241 ++++++++++++++++++++++++++++++ drivers/net/ifcvf/rte_ifcvf_version.map | 4 + lib/librte_eal/bsdapp/eal/eal.c | 51 +- lib/librte_eal/common/include/rte_vfio.h | 117 ++- lib/librte_eal/linuxapp/eal/eal_vfio.c | 553 ++++++++++--- lib/librte_eal/linuxapp/eal/eal_vfio.h | 2 + lib/librte_eal/rte_eal_version.map | 7 + mk/rte.app.mk | 1 + 18 files changed, 2480 insertions(+), 106 deletions(-) create mode 100644 drivers/net/ifcvf/Makefile create mode 100644 drivers/net/ifcvf/base/ifcvf.c create mode 100644 drivers/net/ifcvf/base/ifcvf.h create mode 100644 drivers/net/ifcvf/base/ifcvf_osdep.h create mode 100644 drivers/net/ifcvf/ifcvf_ethdev.c create mode 100644 drivers/net/ifcvf/rte_ifcvf_version.map -- 2.15.1