[dpdk-dev] [PATCH 00/12] support to run vdev in the secondary process
Jianfeng Tan
jianfeng.tan at intel.com
Fri Aug 25 11:40:40 CEST 2017
Patch 1~5: move vdev bus into drivers/bus.
Patch 6: add unix socket channel for primary/secondary communication.
Patch 7~8: make use of the channel to discover and probe virtual devices
the primary process.
Patch 9~12: support to run vhost-pmd in the secondary process.
How to test:
Step 1: run helloworld as the primary process.
$ ./helloworld -l 1-2 --vdev 'net_vhost0,iface=/tmp/sock0' --
Step 2: run testpmd as the secondary process.
$ ./testpmd -l 3-4 --proc-type=secondary -- -i
Step 3: start VM.
$ ./qemu-system-x86_64 ... -chardev socket,id=chr4,path=/tmp/sock0 ...
Jianfeng Tan (12):
cryptodev: remove crypto vdev init
eal: avoid calling rte_vdev_init()
crypto: move vdev helper functions into dedicated file
vdev: move to drivers/bus
bus/vdev: change log type from EAL to PMD
eal: add channel for primary/secondary communication
bus/vdev: scan and probe vdev in secondary processes
ethdev: support attach vdev in secondary process
vhost: allocate virtio_net in memzone
vhost: support to kick in secondary process
net/vhost: support to run in the secondary process
examples/helloworld: do not exit automatically
config/common_base | 5 +
doc/guides/rel_notes/deprecation.rst | 5 -
drivers/bus/Makefile | 2 +
drivers/bus/vdev/Makefile | 57 +++
drivers/bus/vdev/rte_bus_vdev_version.map | 10 +
drivers/bus/vdev/rte_cryptodev_vdev.c | 154 ++++++++
drivers/bus/vdev/rte_cryptodev_vdev.h | 100 ++++++
drivers/bus/vdev/rte_vdev.h | 153 ++++++++
drivers/bus/vdev/vdev.c | 440 +++++++++++++++++++++++
drivers/bus/vdev/vdev_logs.h | 40 +++
drivers/net/vhost/rte_eth_vhost.c | 158 ++++++++-
examples/helloworld/main.c | 3 +
lib/librte_cryptodev/Makefile | 1 -
lib/librte_cryptodev/rte_cryptodev.c | 6 -
lib/librte_cryptodev/rte_cryptodev.h | 18 -
lib/librte_cryptodev/rte_cryptodev_pmd.c | 120 -------
lib/librte_cryptodev/rte_cryptodev_vdev.h | 100 ------
lib/librte_cryptodev/rte_cryptodev_version.map | 1 -
lib/librte_eal/bsdapp/eal/Makefile | 1 -
lib/librte_eal/bsdapp/eal/rte_eal_version.map | 8 +
lib/librte_eal/common/Makefile | 2 +-
lib/librte_eal/common/eal_common_dev.c | 21 +-
lib/librte_eal/common/eal_common_proc.c | 454 ++++++++++++++++++++++++
lib/librte_eal/common/eal_common_vdev.c | 342 ------------------
lib/librte_eal/common/eal_filesystem.h | 18 +
lib/librte_eal/common/eal_private.h | 10 +
lib/librte_eal/common/include/rte_dev.h | 24 +-
lib/librte_eal/common/include/rte_eal.h | 74 ++++
lib/librte_eal/common/include/rte_vdev.h | 131 -------
lib/librte_eal/linuxapp/eal/Makefile | 1 -
lib/librte_eal/linuxapp/eal/eal.c | 6 +
lib/librte_eal/linuxapp/eal/rte_eal_version.map | 8 +
lib/librte_ether/rte_ethdev_vdev.h | 26 +-
lib/librte_vhost/rte_vhost.h | 3 +
lib/librte_vhost/socket.c | 2 +
lib/librte_vhost/vhost.c | 61 +++-
lib/librte_vhost/vhost.h | 7 +-
lib/librte_vhost/vhost_user.c | 4 +-
mk/rte.app.mk | 1 +
39 files changed, 1781 insertions(+), 796 deletions(-)
create mode 100644 drivers/bus/vdev/Makefile
create mode 100644 drivers/bus/vdev/rte_bus_vdev_version.map
create mode 100644 drivers/bus/vdev/rte_cryptodev_vdev.c
create mode 100644 drivers/bus/vdev/rte_cryptodev_vdev.h
create mode 100644 drivers/bus/vdev/rte_vdev.h
create mode 100644 drivers/bus/vdev/vdev.c
create mode 100644 drivers/bus/vdev/vdev_logs.h
delete mode 100644 lib/librte_cryptodev/rte_cryptodev_vdev.h
delete mode 100644 lib/librte_eal/common/eal_common_vdev.c
delete mode 100644 lib/librte_eal/common/include/rte_vdev.h
--
2.7.4
More information about the dev
mailing list