Go to file
Bruce Richardson a6619414e0 ring: make struct and macros type agnostic
Modify the enqueue and dequeue macros to support copying any type of
object by passing in the exact object type. Rather than using the "ring"
structure member of rte_ring, which is of type "array of void *", instead
have the macros take the start of the ring a a pointer value, thereby
leaving the rte_ring structure as purely a header value. This allows it
to be reused by other future ring types which can add on extra fields if
they want, or even to have the actual ring elements, of whatever type
stored separate from the ring header.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
2017-03-29 22:32:20 +02:00
app ring: return remaining entry count when dequeuing 2017-03-29 22:32:20 +02:00
buildtools mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
config ring: remove the yield when waiting for tail update 2017-03-29 22:25:29 +02:00
devtools devtools: make log checking script BSD-compatible 2017-03-27 23:45:56 +02:00
doc examples/quota_watermark: use ring space for watermarks 2017-03-29 22:32:20 +02:00
drivers ring: return remaining entry count when dequeuing 2017-03-29 22:32:20 +02:00
examples examples/quota_watermark: use ring space for watermarks 2017-03-29 22:32:20 +02:00
lib ring: make struct and macros type agnostic 2017-03-29 22:32:20 +02:00
mk mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
pkg version: 17.02.0 2017-02-14 22:17:45 +01:00
test ring: return remaining entry count when dequeuing 2017-03-29 22:32:20 +02:00
usertools usertools: fix active interface detection when binding 2017-01-30 17:30:21 +01:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: generate NIC overview table from ini files 2016-08-03 18:42:17 +02:00
GNUmakefile mk: do not build tests by default 2017-02-28 16:04:18 +01:00
LICENSE.GPL doc: GPL/LGPL licenses 2013-07-25 14:43:06 +02:00
LICENSE.LGPL doc: fix file format (dos to unix) 2013-09-06 11:43:07 +02:00
MAINTAINERS maintainers: add to distributor lib maintainers 2017-03-29 16:46:58 +02:00
Makefile remove trailing whitespaces 2014-06-11 00:29:34 +02:00
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