numam-dpdk/lib
Harry van Haaren 3cf5eb1546 service: fix and refactor atomic service accesses
This commit fixes an issue in the service runner function,
where the atomic value was not cleared on exiting the service
function. This resulted in future attempts to run the service
to appear like the function was running, however it was in
reality deadlocked.

This commit refactors the atomic handling to be more readable,
by splitting the implementation code into a new static inline
function. The remaining flow control of atomics in the existing
function is refactored for readability.

Fixes: 21698354c8 ("service: introduce service cores concept")

Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
2017-09-15 13:46:24 +02:00
..
librte_acl lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_bitratestats fix typos using codespell utility 2017-06-14 23:54:13 +02:00
librte_cfgfile cfgfile: support empty value 2017-04-04 16:32:06 +02:00
librte_cmdline cmdline: fix dynamic tokens interface 2017-07-21 01:03:25 +03:00
librte_compat fix typos using codespell utility 2017-06-14 23:54:13 +02:00
librte_cryptodev cryptodev: fix C11 extensions in exported header 2017-08-05 01:18:21 +02:00
librte_distributor lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_eal service: fix and refactor atomic service accesses 2017-09-15 13:46:24 +02:00
librte_efd update Cavium Inc copyright headers 2017-07-08 17:43:49 +02:00
librte_ether ethdev: add NIC reset operation 2017-09-13 23:06:44 +02:00
librte_eventdev eventdev: bump library version 2017-08-08 20:01:39 +02:00
librte_gro gro: fix typo in map file 2017-08-31 23:02:54 +02:00
librte_hash lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_ip_frag ip_frag: rename map file to standardized name 2017-08-31 23:02:57 +02:00
librte_jobstats jobstats: fix typo in doxygen comment 2017-07-20 00:40:27 +03:00
librte_kni kni: allocate no more mbuf than empty slots in queue 2017-07-01 12:54:51 +02:00
librte_kvargs mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
librte_latencystats latency: fix missing includes in exported header 2017-05-01 00:13:15 +02:00
librte_lpm lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_mbuf mbuf: fix doxygen comment of bulk alloc 2017-07-31 17:17:25 +02:00
librte_mempool mem: do not advertise physical address when no hugepages 2017-07-04 17:51:22 +02:00
librte_meter mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
librte_metrics metrics: fix name string termination 2017-07-20 00:06:07 +03:00
librte_net update Cavium Inc copyright headers 2017-07-08 17:43:49 +02:00
librte_pdump pdump: remove unnecessary header include 2017-06-14 23:45:51 +02:00
librte_pipeline mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
librte_port eal: introduce macro for always inline 2017-06-06 17:21:55 +02:00
librte_power mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
librte_reorder fix typos using codespell utility 2017-06-14 23:54:13 +02:00
librte_ring ring: allow non power-of-2 sizes 2017-07-07 09:29:17 +02:00
librte_sched sched: remove check for SSE4 2017-07-04 14:39:18 +02:00
librte_table update Cavium Inc copyright headers 2017-07-08 17:43:49 +02:00
librte_timer lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_vhost vhost: make page logging atomic 2017-08-03 22:09:48 +02:00
Makefile lib/gro: add Generic Receive Offload API framework 2017-07-09 18:14:46 +02:00