numam-dpdk/lib/librte_eal/common
Gavin Hu b13a21890a ticketlock: use new API to reduce contention on aarch64
While using ticket lock, cores repeatedly poll the lock variable.
This is replaced by rte_wait_until_equal API.

Running ticketlock_autotest on ThunderX2, Ampere eMAG80, and Arm N1SDP[1],
there were variances between runs, but no notable performance gain or
degradation were seen with and without this patch.

[1] https://community.arm.com/developer/tools-software/oss-platforms/w/\
docs/440/neoverse-n1-sdp

Signed-off-by: Gavin Hu <gavin.hu@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Tested-by: Phil Yang <phil.yang@arm.com>
Tested-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
Reviewed-by: Jerin Jacob <jerinj@marvell.com>
2020-01-17 12:02:21 +01:00
..
arch eal/ppc: add SPDX license tag 2019-10-17 06:59:15 +02:00
include ticketlock: use new API to reduce contention on aarch64 2020-01-17 12:02:21 +01:00
eal_common_bus.c eal: replace license text with SPDX tag 2019-07-29 22:55:14 +02:00
eal_common_class.c remove experimental tags from all symbol definitions 2019-06-29 19:04:43 +02:00
eal_common_cpuflags.c eal: remove deprecated CPU flags check function 2019-10-27 10:35:58 +01:00
eal_common_dev.c eal: fix positive error codes from probe/remove 2019-06-29 21:28:38 +02:00
eal_common_devargs.c devargs: promote experimental API as stable 2019-04-17 18:30:04 +02:00
eal_common_errno.c build/freebsd: rename macro BSDPAPP to FREEBSD 2019-03-12 23:01:14 +01:00
eal_common_fbarray.c fbarray: fix destruction 2019-07-10 23:27:46 +02:00
eal_common_hexdump.c eal: align hexdump output 2019-04-03 18:34:59 +02:00
eal_common_hypervisor.c align SPDX Mellanox copyrights 2018-04-11 01:47:47 +02:00
eal_common_launch.c eal: make lcore config private 2019-10-27 10:35:11 +01:00
eal_common_lcore.c eal: factorize lcore role code 2019-10-27 10:41:08 +01:00
eal_common_log.c lib: fix doxygen typos 2019-11-19 22:03:38 +01:00
eal_common_mcfg.c net/memif: support zero-copy slave 2019-11-20 17:36:06 +01:00
eal_common_memalloc.c remove useless include of EAL memory config header 2019-10-09 10:22:24 +02:00
eal_common_memory.c mem: make base address hint OS specific 2019-10-26 18:03:24 +02:00
eal_common_memzone.c remove useless include of EAL memory config header 2019-10-09 10:22:24 +02:00
eal_common_options.c eal/freebsd: support option --base-virtaddr 2019-10-25 11:17:29 +02:00
eal_common_proc.c lib: fix log typos 2019-11-19 22:03:27 +01:00
eal_common_string_fns.c eal: add strscpy function 2018-09-19 11:38:19 +02:00
eal_common_tailqs.c eal: hide shared memory config 2019-07-06 10:32:34 +02:00
eal_common_thread.c eal: hide internal function 2019-08-05 11:47:22 +02:00
eal_common_timer.c eal: calibrate TSC only in primary process 2019-10-18 13:23:10 +02:00
eal_common_uuid.c eal: remove uuid license boilerplate 2019-11-28 03:12:55 +01:00
eal_filesystem.h fix off-by-one errors in snprintf 2019-05-29 13:02:53 +02:00
eal_hugepages.h lib: fix doxygen typos 2019-11-19 22:03:38 +01:00
eal_internal_cfg.h eal: increase maximum different hugepage sizes on Arm 2019-08-08 17:25:14 +02:00
eal_memalloc.h remove useless include of EAL memory config header 2019-10-09 10:22:24 +02:00
eal_memcfg.h mem: hide internal heap header 2019-10-27 10:39:56 +01:00
eal_options.h eal: revert parsing option --telemetry 2019-07-29 22:24:59 +02:00
eal_private.h eal: make the global configuration private 2019-10-27 10:41:49 +01:00
eal_thread.h eal: hide internal function 2019-08-05 11:47:22 +02:00
hotplug_mp.c eal: hide internal hotplug function 2019-06-29 19:04:07 +02:00
hotplug_mp.h eal: hide internal hotplug function 2019-06-29 19:04:07 +02:00
Makefile eal: split compat header file 2019-10-27 12:49:28 +01:00
malloc_elem.c malloc: fix memory element size in case of padding 2019-11-26 16:24:08 +01:00
malloc_elem.h remove useless include of EAL memory config header 2019-10-09 10:22:24 +02:00
malloc_heap.c eal: make the global configuration private 2019-10-27 10:41:49 +01:00
malloc_heap.h mem: hide internal heap header 2019-10-27 10:39:56 +01:00
malloc_mp.c eal: hide shared memory config 2019-07-06 10:32:34 +02:00
malloc_mp.h malloc: support multiprocess memory hotplug 2018-04-11 21:45:55 +02:00
meson.build eal: fix header file install with meson 2019-11-26 17:39:38 +01:00
rte_keepalive.c keepalive: fix state alignment 2018-01-25 23:25:57 +01:00
rte_malloc.c malloc: fix realloc copy size 2019-11-20 14:08:39 +01:00
rte_option.c remove experimental tags from all symbol definitions 2019-06-29 19:04:43 +02:00
rte_random.c remove experimental tags from all symbol definitions 2019-06-29 19:04:43 +02:00
rte_reciprocal.c eal: remove reciprocal divide license boilerplate 2019-11-28 03:12:55 +01:00
rte_service.c service: don't walk out of bounds when checking services 2019-12-20 15:09:35 +01:00