numam-dpdk/config
Gavin Hu 1be7855d77 eal: add wait until equal API
The rte_wait_until_equal_xx APIs abstract the functionality of
'polling for a memory location to become equal to a given value'.

Add the RTE_ARM_USE_WFE configuration entry for aarch64, disabled
by default. When it is enabled, the above APIs will call WFE instruction
to save CPU cycles and power.

From a VM, when calling this API on aarch64, it may trap in and out to
release vCPUs whereas cause high exit latency. Since kernel 4.18.20 an
adaptive trapping mechanism is introduced to balance the latency and
workload.

Signed-off-by: Gavin Hu <gavin.hu@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Steve Capper <steve.capper@arm.com>
Reviewed-by: Ola Liljedahl <ola.liljedahl@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Acked-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Signed-off-by: David Marchand <david.marchand@redhat.com>
2020-01-17 12:02:21 +01:00
..
arm eal: add wait until equal API 2020-01-17 12:02:21 +01:00
ppc_64 config: fix build on RHEL 7.6 for Power9 2019-10-27 10:41:50 +01:00
x86 build: explicitly enable sse4 for meson 2020-01-03 15:27:26 +01:00
common_armv8a_linux net/pfe: introduce basic functions 2019-10-23 16:43:08 +02:00
common_base eal: add wait until equal API 2020-01-17 12:02:21 +01:00
common_freebsd mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
common_linux raw/ifpga/base: support device tree 2019-11-20 17:36:05 +01:00
defconfig_arm64-armada-linux-gcc config: add Marvell ARMADA based on armv8-a 2019-06-04 10:30:14 +02:00
defconfig_arm64-armada-linuxapp-gcc config: add Marvell ARMADA based on armv8-a 2019-06-04 10:30:14 +02:00
defconfig_arm64-armv8a-linux-clang mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-armv8a-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-armv8a-linuxapp-clang mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-armv8a-linuxapp-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-bluefield-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-bluefield-linuxapp-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-dpaa-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-dpaa-linuxapp-gcc config: remove redundant DPAA2 build 2019-11-06 21:30:00 +01:00
defconfig_arm64-emag-linux-gcc config: add eMAG 2019-11-21 00:30:39 +01:00
defconfig_arm64-emag-linuxapp-gcc remove blank lines at end of file 2019-11-26 00:12:08 +01:00
defconfig_arm64-n1sdp-linux-gcc config: add Arm Neoverse N1 SDP 2019-11-21 00:26:22 +01:00
defconfig_arm64-n1sdp-linuxapp-gcc config: add Arm Neoverse N1 SDP 2019-11-21 00:26:22 +01:00
defconfig_arm64-octeontx2-linux-gcc config: add octeontx2 machine 2019-04-15 22:58:20 +02:00
defconfig_arm64-octeontx2-linuxapp-gcc eal/arm64: add 128-bit atomic compare exchange 2019-10-21 10:06:13 +02:00
defconfig_arm64-stingray-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-stingray-linuxapp-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-thunderx2-linux-gcc config: add thunderx2 machine 2019-04-15 22:57:29 +02:00
defconfig_arm64-thunderx2-linuxapp-gcc eal/arm64: add 128-bit atomic compare exchange 2019-10-21 10:06:13 +02:00
defconfig_arm64-thunderx-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-thunderx-linuxapp-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-xgene1-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm64-xgene1-linuxapp-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm-armv7a-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_arm-armv7a-linuxapp-gcc net/hns3: add build and doc infrastructure 2019-10-07 15:00:56 +02:00
defconfig_i686-native-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_i686-native-linux-icc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_i686-native-linuxapp-gcc net/hns3: add build and doc infrastructure 2019-10-07 15:00:56 +02:00
defconfig_i686-native-linuxapp-icc net/hns3: add build and doc infrastructure 2019-10-07 15:00:56 +02:00
defconfig_ppc_64-power8-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_ppc_64-power8-linuxapp-gcc net/hns3: add build and doc infrastructure 2019-10-07 15:00:56 +02:00
defconfig_x86_64-native-bsdapp-clang mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-bsdapp-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-freebsd-clang mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-freebsd-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-linux-clang mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-linux-icc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-linuxapp-clang mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-linuxapp-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_64-native-linuxapp-icc net/hns3: add build and doc infrastructure 2019-10-07 15:00:56 +02:00
defconfig_x86_x32-native-linux-gcc mk: use linux and freebsd in config names 2019-03-12 23:05:06 +01:00
defconfig_x86_x32-native-linuxapp-gcc net/hns3: add build and doc infrastructure 2019-10-07 15:00:56 +02:00
meson.build build: fix libm detection in meson 2020-01-09 14:43:16 +01:00
rte_config.h build: support building ABI versioned files twice 2019-10-27 12:49:28 +01:00