DPDK  22.11.6
rte_service.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2017 Intel Corporation
3  */
4 
5 #ifndef _RTE_SERVICE_H_
6 #define _RTE_SERVICE_H_
7 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 #include<stdio.h>
31 #include <stdint.h>
32 
33 #include <rte_compat.h>
34 #include <rte_config.h>
35 #include <rte_lcore.h>
36 
37 #define RTE_SERVICE_NAME_MAX 32
38 
39 /* Capabilities of a service.
40  *
41  * Use the rte_service_probe_capability() function to check if a service is
42  * capable of a specific capability.
43  */
47 #define RTE_SERVICE_CAP_MT_SAFE (1 << 0)
48 
54 uint32_t rte_service_get_count(void);
55 
78 int32_t rte_service_get_by_name(const char *name, uint32_t *service_id);
79 
86 const char *rte_service_get_name(uint32_t id);
87 
96 int32_t rte_service_probe_capability(uint32_t id, uint32_t capability);
97 
121 int32_t rte_service_map_lcore_set(uint32_t service_id, uint32_t lcore,
122  uint32_t enable);
123 
134 int32_t rte_service_map_lcore_get(uint32_t service_id, uint32_t lcore);
135 
148 int32_t rte_service_runstate_set(uint32_t id, uint32_t runstate);
149 
163 int32_t rte_service_runstate_get(uint32_t id);
164 
179 int32_t
180 rte_service_may_be_active(uint32_t id);
181 
193 int32_t rte_service_set_runstate_mapped_check(uint32_t id, int32_t enable);
194 
228 int32_t rte_service_run_iter_on_app_lcore(uint32_t id,
229  uint32_t serialize_multithread_unsafe);
230 
243 int32_t rte_service_lcore_start(uint32_t lcore_id);
244 
263 int32_t rte_service_lcore_stop(uint32_t lcore_id);
264 
278 __rte_experimental
279 int32_t rte_service_lcore_may_be_active(uint32_t lcore_id);
280 
292 int32_t rte_service_lcore_add(uint32_t lcore);
293 
303 int32_t rte_service_lcore_del(uint32_t lcore);
304 
317 int32_t rte_service_lcore_count(void);
318 
328 int32_t rte_service_lcore_reset_all(void);
329 
339 int32_t rte_service_set_stats_enable(uint32_t id, int32_t enable);
340 
357 int32_t rte_service_lcore_list(uint32_t array[], uint32_t n);
358 
367 int32_t rte_service_lcore_count_services(uint32_t lcore);
368 
376 int32_t rte_service_dump(FILE *f, uint32_t id);
377 
381 #define RTE_SERVICE_ATTR_CYCLES 0
382 
386 #define RTE_SERVICE_ATTR_CALL_COUNT 1
387 
394 int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id,
395  uint64_t *attr_value);
396 
404 int32_t rte_service_attr_reset_all(uint32_t id);
405 
409 #define RTE_SERVICE_LCORE_ATTR_LOOPS 0
410 
415 #define RTE_SERVICE_LCORE_ATTR_CYCLES 1
416 
427 int32_t
428 rte_service_lcore_attr_get(uint32_t lcore, uint32_t attr_id,
429  uint64_t *attr_value);
430 
439 int32_t
440 rte_service_lcore_attr_reset_all(uint32_t lcore);
441 
442 #ifdef __cplusplus
443 }
444 #endif
445 
446 
447 #endif /* _RTE_SERVICE_H_ */
int32_t rte_service_lcore_stop(uint32_t lcore_id)
int32_t rte_service_lcore_list(uint32_t array[], uint32_t n)
int32_t rte_service_map_lcore_set(uint32_t service_id, uint32_t lcore, uint32_t enable)
int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, uint64_t *attr_value)
int32_t rte_service_run_iter_on_app_lcore(uint32_t id, uint32_t serialize_multithread_unsafe)
int32_t rte_service_lcore_add(uint32_t lcore)
int32_t rte_service_lcore_attr_get(uint32_t lcore, uint32_t attr_id, uint64_t *attr_value)
int32_t rte_service_lcore_del(uint32_t lcore)
int32_t rte_service_attr_reset_all(uint32_t id)
int32_t rte_service_set_stats_enable(uint32_t id, int32_t enable)
int32_t rte_service_lcore_attr_reset_all(uint32_t lcore)
int32_t rte_service_may_be_active(uint32_t id)
int32_t rte_service_map_lcore_get(uint32_t service_id, uint32_t lcore)
int32_t rte_service_runstate_set(uint32_t id, uint32_t runstate)
int32_t rte_service_set_runstate_mapped_check(uint32_t id, int32_t enable)
int32_t rte_service_lcore_reset_all(void)
int32_t rte_service_probe_capability(uint32_t id, uint32_t capability)
int32_t rte_service_lcore_count(void)
int32_t rte_service_runstate_get(uint32_t id)
uint32_t rte_service_get_count(void)
int32_t rte_service_get_by_name(const char *name, uint32_t *service_id)
int32_t rte_service_lcore_start(uint32_t lcore_id)
const char * rte_service_get_name(uint32_t id)
__rte_experimental int32_t rte_service_lcore_may_be_active(uint32_t lcore_id)
int32_t rte_service_dump(FILE *f, uint32_t id)
int32_t rte_service_lcore_count_services(uint32_t lcore)