DPDK, with patches for FM10K Silicom cards with inline Switch Manager https://gist.github.com/WeebDataHoarder/634f2ef54e0c6cde0ccdb00e377e5e28
Go to file
Phil Yang 2f89dc2ed7 timer: relax barrier for status update
Volatile has no ordering semantics. The rte_timer structure defines
timer status as a volatile variable and uses the rte_r/wmb barrier
to guarantee inter-thread visibility.

This patch optimized the volatile operation with c11 atomic operations
and one-way barrier to save the performance penalty. According to the
timer_perf_autotest benchmarking results, this patch can uplift 10%~16%
timer appending performance, 3%~20% timer resetting performance and 45%
timer callbacks scheduling performance on aarch64 and no loss in
performance for x86.

Suggested-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Acked-by: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
2020-04-26 22:07:38 +02:00
.ci ci: reduce examples in static builds 2020-04-17 23:34:08 +02:00
app app/testpmd: add parsing for QinQ VLAN headers 2020-04-25 23:09:29 +02:00
buildtools build: add internal tag check 2020-04-25 17:01:01 +02:00
config net/igc: add skeleton 2020-04-21 13:57:07 +02:00
devtools devtools: ignore internal ABI check 2020-04-25 17:01:01 +02:00
doc app/testpmd: add new types to RSS hash commands 2020-04-21 18:03:26 +02:00
drivers net/bnxt: fix VNIC Rx queue count on VNIC free 2020-04-25 23:09:29 +02:00
examples vhost: prefix vDPA enum value for PCI address type 2020-04-21 13:57:07 +02:00
kernel eal: move OS-specific sub-directories 2020-03-31 13:08:55 +02:00
lib timer: relax barrier for status update 2020-04-26 22:07:38 +02:00
license eal: move OS-specific sub-directories 2020-03-31 13:08:55 +02:00
mk build: add internal tag check 2020-04-25 17:01:01 +02:00
usertools usertools: check for pci.ids in /usr/share/misc 2020-04-25 21:59:10 +02:00
.editorconfig devtools: add EditorConfig file 2020-02-22 21:05:22 +01:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: add feature matrix table for bbdev 2020-04-19 22:34:26 +02:00
.travis.yml ci: fix telemetry dependency in Travis 2020-04-10 10:03:22 +02:00
ABI_VERSION version: 20.05-rc0 2020-02-27 12:02:19 +01:00
GNUmakefile test: move to app directory 2019-02-26 15:29:27 +01:00
MAINTAINERS build: add internal tag check 2020-04-25 17:01:01 +02:00
Makefile remove blank lines at end of file 2019-11-26 00:12:08 +01:00
meson.build eal: move OS-specific sub-directories 2020-03-31 13:08:55 +02:00
meson_options.txt trace: introduce new subsystem 2020-04-23 15:39:06 +02:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 20.05-rc0 2020-02-27 12:02:19 +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-3-Clause license for the core libraries
and drivers. The kernel components are GPL-2.0 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