numam-dpdk/lib
Honnappa Nagarahalli 18cae99cb9 service: fix race condition for MT unsafe service
A MT unsafe service might get configured to run on another core
while the service is running currently. This might result in the
MT unsafe service running on multiple cores simultaneously. Use
'execute_lock' always when the service is MT unsafe.

If the service is known to be mapped on a single lcore,
setting the service capability to MT safe will avoid taking
the lock and improve the performance.

Fixes: e9139a32f6 ("service: add function to run on app lcore")
Cc: stable@dpdk.org

Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
2020-05-11 09:33:45 +02:00
..
librte_acl replace alignment attributes 2020-04-16 18:16:18 +02:00
librte_bbdev build: disable experimental API check internally 2020-04-14 16:22:34 +02:00
librte_bitratestats build: align symbols with global ABI version 2019-11-20 23:05:39 +01:00
librte_bpf build: disable experimental API check internally 2020-04-14 16:22:34 +02:00
librte_cfgfile eal: move common header files 2020-03-31 13:08:55 +02:00
librte_cmdline replace unused attributes 2020-04-16 18:30:58 +02:00
librte_compressdev build: disable experimental API check internally 2020-04-14 16:22:34 +02:00
librte_cryptodev trace: simplify trace point headers 2020-05-06 13:50:32 +02:00
librte_distributor build: add global libatomic dependency for 32-bit clang 2020-04-21 11:34:09 +02:00
librte_eal service: fix race condition for MT unsafe service 2020-05-11 09:33:45 +02:00
librte_efd replace packed attributes 2020-04-16 18:16:46 +02:00
librte_ethdev eal: add telemetry as dependency 2020-05-11 00:37:16 +02:00
librte_eventdev eventdev: fix probe and remove for secondary process 2020-05-02 12:31:57 +02:00
librte_fib build: disable experimental API check internally 2020-04-14 16:22:34 +02:00
librte_flow_classify build: disable experimental API check internally 2020-04-14 16:22:34 +02:00
librte_graph graph: implement fastpath routines 2020-05-05 23:32:02 +02:00
librte_gro build: align symbols with global ABI version 2019-11-20 23:05:39 +01:00
librte_gso build: align symbols with global ABI version 2019-11-20 23:05:39 +01:00
librte_hash hash: add bulk lookup with signatures array 2020-04-25 19:26:47 +02:00
librte_ip_frag ip_frag: ensure minimum v6 fragmentation length 2020-04-25 15:15:27 +02:00
librte_ipsec fix various typos found by Lintian 2020-04-25 19:53:47 +02:00
librte_jobstats build: align symbols with global ABI version 2019-11-20 23:05:39 +01:00
librte_kni kni: fix not contiguous FIFO 2020-02-14 11:59:01 +01:00
librte_kvargs kvargs: fix invalid token parsing on FreeBSD 2020-05-06 15:22:19 +02:00
librte_latencystats latency: fix calculation for multi-thread 2020-01-20 01:32:50 +01:00
librte_lpm lpm6: fix comments spelling 2020-04-24 19:29:02 +02:00
librte_mbuf mbuf: prevent setting mempool ops name empty 2020-04-25 22:56:10 +02:00
librte_member build: align symbols with global ABI version 2019-11-20 23:05:39 +01:00
librte_mempool trace: simplify trace point headers 2020-05-06 13:50:32 +02:00
librte_meter version: reference next ABI 21 for recent additions 2020-05-05 00:25:34 +02:00
librte_metrics telemetry: remove redundant code 2020-05-11 00:37:16 +02:00
librte_net ip_frag: ensure minimum v6 fragmentation length 2020-04-25 15:15:27 +02:00
librte_node node: add packet drop 2020-05-05 23:42:13 +02:00
librte_pci pci: fix build on ppc 2020-03-17 14:53:48 +01:00
librte_pdump ring: prepare ring to allow new sync schemes 2020-04-21 11:34:09 +02:00
librte_pipeline replace packed attributes 2020-04-16 18:16:46 +02:00
librte_port ring: prepare ring to allow new sync schemes 2020-04-21 11:34:09 +02:00
librte_power replace unused attributes 2020-04-16 18:30:58 +02:00
librte_rawdev eal: add telemetry as dependency 2020-05-11 00:37:16 +02:00
librte_rcu rcu: add additional debug logs 2020-04-22 20:46:00 +02:00
librte_reorder build: align symbols with global ABI version 2019-11-20 23:05:39 +01:00
librte_rib build: disable experimental API check internally 2020-04-14 16:22:34 +02:00
librte_ring ring: fix build with -Wswitch-enum 2020-04-28 11:34:40 +02:00
librte_sched replace alignment attributes 2020-04-16 18:16:18 +02:00
librte_security security: fix crash at accessing non-implemented ops 2020-04-23 17:56:38 +02:00
librte_stack build: disable experimental API check internally 2020-04-14 16:22:34 +02:00
librte_table eal: fix compiler detection in public headers 2020-03-18 00:59:17 +01:00
librte_telemetry eal: add telemetry as dependency 2020-05-11 00:37:16 +02:00
librte_timer timer: relax barrier for status update 2020-04-26 22:07:38 +02:00
librte_vhost virtio: use one way barrier for split vring avail index 2020-05-05 15:54:26 +02:00
Makefile eal: add telemetry as dependency 2020-05-11 00:37:16 +02:00
meson.build eal: add telemetry as dependency 2020-05-11 00:37:16 +02:00