DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH v6 00/25] user space vhost library
@ 2014-10-08 18:54 Huawei Xie
  2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 01/25] lib/librte_vhost: move src files from examples/vhost to lib/librte_vhost Huawei Xie
                   ` (27 more replies)
  0 siblings, 28 replies; 30+ messages in thread
From: Huawei Xie @ 2014-10-08 18:54 UTC (permalink / raw)
  To: dev

This set of patches transforms and refactors vhost example to a user
space vhost library.
This library implements a user space vhost cuse driver, and provides
generic APIs for user space ethernet vSwitch to integrate us-vhost for
fast packet switching with guest virtio.

vhost lib consists of five APIs plus several helper routines
for feature disable/enable.
1) rte_vhost_driver_register initializes vhost driver.
2) rte_vhost_driver_callback_register registers the callbacks.
Callbacks are called from vhost driver when a virtio device is ready
to be added to the data processing core or is de-activated by guest.
3) rte_vhost_driver_session_start, a blocking API to start vhost
message handler session loop.
4) rte_vhost_enqueue_burst and rte_vhost_dequeue_burst for
enqueue/dequeue packets to/from virtio ring respectively.

v2) turn off vhost lib by default

v3) fixed checkpatch issues

v4) split the patch per thomas' requirement

v5) fine granularity split of the patch
    regenerate patches based on latest commit
    this patchset removes vhost example patches, which will be
 submitted later.

Huawei Xie (25):
  move src files from examples/vhost to lib/librte_vhost
  rename main.c to vhost_rxtx.c and virtio-net.h to rte_vhost_net.h
  keep virtio_dev_(merge_)rx, copy_from_mbuf_to_vring and virtio_dev_merge_tx; remove anything else in vhost_rxtx.c
  remove mac learning, mac/vlan, VMDQ and other switching related logic
  remove host memory region region related logic
  remove retry
  patch virtio_dev_merge_tx to make it return packets to app
  patch vhost_dev_merge_tx about buf_size
  add queue_id parameter to vhost rx/tx functions
  define PACKET_BURST
  rte_vhost_en/dequeue_burst API
  move virtio_net_config_ll strcture to virtio_net.c
  remove index
  call get_virtio_net_callbacks to get the ops in register_cuse_device
  rte_vhost_driver_register and rte_vhost_session_start API
  rte_vhost_callback_register API
  add debug print
  define VHOST_SUPPORTED_FEATURES
  header file cleanup
  static fix
  add priv field in virtio_net to store application specific context
  coding style fixes
  add TODO/FIXME
  add vhost support in Makefile

 config/common_linuxapp                       |    8 +
 examples/vhost/Makefile                      |   60 -
 examples/vhost/eventfd_link/Makefile         |   39 -
 examples/vhost/eventfd_link/eventfd_link.c   |  205 --
 examples/vhost/eventfd_link/eventfd_link.h   |   79 -
 examples/vhost/libvirt/qemu-wrap.py          |  367 ---
 examples/vhost/main.c                        | 3727 --------------------------
 examples/vhost/main.h                        |   86 -
 examples/vhost/vhost-net-cdev.c              |  367 ---
 examples/vhost/vhost-net-cdev.h              |   83 -
 examples/vhost/virtio-net.c                  | 1165 --------
 examples/vhost/virtio-net.h                  |  161 --
 lib/Makefile                                 |    1 +
 lib/librte_vhost/eventfd_link/Makefile       |   39 +
 lib/librte_vhost/eventfd_link/eventfd_link.c |  205 ++
 lib/librte_vhost/eventfd_link/eventfd_link.h |   79 +
 lib/librte_vhost/libvirt/qemu-wrap.py        |  367 +++
 lib/librte_vhost/rte_virtio_net.h            |  208 ++
 lib/librte_vhost/vhost-net-cdev.c            |  360 +++
 lib/librte_vhost/vhost-net-cdev.h            |  113 +
 lib/librte_vhost/vhost_rxtx.c                |  733 +++++
 lib/librte_vhost/virtio-net.c                | 1028 +++++++
 mk/rte.app.mk                                |    5 +
 23 files changed, 3146 insertions(+), 6339 deletions(-)
 delete mode 100644 examples/vhost/Makefile
 delete mode 100644 examples/vhost/eventfd_link/Makefile
 delete mode 100644 examples/vhost/eventfd_link/eventfd_link.c
 delete mode 100644 examples/vhost/eventfd_link/eventfd_link.h
 delete mode 100755 examples/vhost/libvirt/qemu-wrap.py
 delete mode 100644 examples/vhost/main.c
 delete mode 100644 examples/vhost/main.h
 delete mode 100644 examples/vhost/vhost-net-cdev.c
 delete mode 100644 examples/vhost/vhost-net-cdev.h
 delete mode 100644 examples/vhost/virtio-net.c
 delete mode 100644 examples/vhost/virtio-net.h
 create mode 100644 lib/librte_vhost/eventfd_link/Makefile
 create mode 100644 lib/librte_vhost/eventfd_link/eventfd_link.c
 create mode 100644 lib/librte_vhost/eventfd_link/eventfd_link.h
 create mode 100755 lib/librte_vhost/libvirt/qemu-wrap.py
 create mode 100644 lib/librte_vhost/rte_virtio_net.h
 create mode 100644 lib/librte_vhost/vhost-net-cdev.c
 create mode 100644 lib/librte_vhost/vhost-net-cdev.h
 create mode 100644 lib/librte_vhost/vhost_rxtx.c
 create mode 100644 lib/librte_vhost/virtio-net.c

-- 
1.8.1.4

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2014-10-13 20:46 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-10-08 18:54 [dpdk-dev] [PATCH v6 00/25] user space vhost library Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 01/25] lib/librte_vhost: move src files from examples/vhost to lib/librte_vhost Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 02/25] lib/librte_vhost: rename main.c to vhost_rxtx.c and virtio-net.h to rte_virtio_net.h Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 03/25] lib/librte_vhost: clean unused codes in vhost_rxtx.c Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 04/25] lib/librte_vhost: remove mac learning, VMDQ, mac/vlan and other switching related logic Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 05/25] lib/librte_vhost: remove zero copy memory region generation logic Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 06/25] lib/librte_vhost: remove retry logic Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 07/25] lib/librte_vhost: patch virtio_dev_merge_tx to return packets to upper layer Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 08/25] lib/librte_vhost: calculate mbuf size Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 09/25] lib/librte_vhost: add queue_id parameter to vhost rx/tx functions Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 10/25] lib/librte_vhost: define PACKET_BURST Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 11/25] lib/librte_vhost: rte_vhost_en/dequeue_burst API Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 12/25] lib/librte_vhost: move virtio_net_config_ll structure to virtio_net.c Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 13/25] lib/librte_vhost: remove index parameter Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 14/25] lib/librte_vhost: call get_virtio_net_callbacks to get internal ops in register_cuse_device Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 15/25] lib/librte_vhost: rte_vhost_driver_register and rte_vhost_session_start API Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 16/25] lib/librte_vhost: rename init_virtio_net to rte_vhost_callback_register Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 17/25] lib/librte_vhost: vhost APIs Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 18/25] lib/librte_vhost: add debug print Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 19/25] lib/librte_vhost: VHOST SUPPORTED FEATURES Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 20/25] lib/librte_vhost: header file cleanups Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 21/25] lib/librte_vhost: static variable fixes Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 22/25] lib/librte_vhost: add priv context field to virtio_net structure Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 23/25] lib/librte_vhost: coding style fixes Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 24/25] lib/librte_vhost: add TODO/FIXME for identified issues Huawei Xie
2014-10-08 18:54 ` [dpdk-dev] [PATCH v6 25/25] lib/librte_vhost: add vhost support in Makefile Huawei Xie
2014-10-09 18:36 ` [dpdk-dev] [PATCH v6 00/25] user space vhost library Xie, Huawei
2014-10-11  8:31 ` Ouyang, Changchun
2014-10-13 19:51 ` Thomas Monjalon
2014-10-13 20:53   ` Xie, Huawei

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).