Go to file
Yuanhan Liu f4f136c8c4 doc: announce API changes for vhost refactoring
We currently exposed way too many fields (or even structures) than
necessary. For example, vhost_virtqueue struct should NOT be exposed
to user at all: application just need to tell the right queue id to
locate a specific queue, and that's all. Instead, the structure should
be defined in an internal header file. With that, we could do any changes
to it we want, without worrying about that we may offense the painful
ABI rules.

Similar changes could be done to virtio_net struct as well, just exposing
very few fields that are necessary and moving all others to an internal
structure.

Huawei then suggested a more radical yet much cleaner one: just exposing
a virtio_net handle to application, just like the way kernel exposes an
fd to user for locating a specific file, and exposing some new functions
to access those old fields, such as flags, virt_qp_nb.

With this change, we're likely to be free from ABI violations forever
(well, except when we have to extend the virtio_net_device_ops struct).
For example, following nice cleanup would not be a blocking one then:

    http://dpdk.org/ml/archives/dev/2016-February/033528.html

Suggested-by: Huawei Xie <huawei.xie@intel.com>
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Acked-by: Panu Matilainen <pmatilai@redhat.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
2016-04-10 12:07:57 +02:00
app app/test: fix array overflow warning with gcc 4.5 2016-04-07 19:52:07 +02:00
config cryptodev: remove experimental label 2016-04-06 19:00:57 +02:00
doc doc: announce API changes for vhost refactoring 2016-04-10 12:07:57 +02:00
drivers ixgbe: fix packet type for VXLAN and NVGRE on X550 2016-04-08 22:33:19 +02:00
examples examples/performance-thread: restrict to x86_64 2016-04-08 22:28:39 +02:00
lib version: 16.04-rc4 2016-04-07 23:42:14 +02:00
mk mk: show version as a decimal integer 2016-04-07 23:05:47 +02:00
pkg version: 2.2.0 2015-12-15 18:06:58 +01:00
scripts scripts: test build with libsso 2016-04-07 23:05:47 +02:00
tools tools: fix setup with built-in kernel modules 2016-03-24 22:04:10 +01:00
.gitignore
GNUmakefile drivers: create new directory 2015-05-22 15:51:38 +02:00
LICENSE.GPL
LICENSE.LGPL
MAINTAINERS maintainers: claim responsibility for pcap PMD 2016-04-10 11:45:42 +02:00
Makefile
README doc: add readme file 2015-12-13 22:06:58 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD license for the core libraries and
drivers. The kernel components are GPLv2 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org