eal: move OS common options usage functions
Move common functions between Unix and Windows to eal_common_options.c. Those functions are getter functions for rte_application_usage_hook. Signed-off-by: Tal Shnaiderman <talshn@mellanox.com>
This commit is contained in:
parent
57a2efb304
commit
2ab745bd8f
@ -146,6 +146,29 @@ static int master_lcore_parsed;
|
||||
static int mem_parsed;
|
||||
static int core_parsed;
|
||||
|
||||
/* Allow the application to print its usage message too if set */
|
||||
static rte_usage_hook_t rte_application_usage_hook;
|
||||
|
||||
/* Returns rte_usage_hook_t */
|
||||
rte_usage_hook_t
|
||||
eal_get_application_usage_hook(void)
|
||||
{
|
||||
return rte_application_usage_hook;
|
||||
}
|
||||
|
||||
/* Set a per-application usage message */
|
||||
rte_usage_hook_t
|
||||
rte_set_application_usage_hook(rte_usage_hook_t usage_func)
|
||||
{
|
||||
rte_usage_hook_t old_func;
|
||||
|
||||
/* Will be NULL on the first call to denote the last usage routine. */
|
||||
old_func = rte_application_usage_hook;
|
||||
rte_application_usage_hook = usage_func;
|
||||
|
||||
return old_func;
|
||||
}
|
||||
|
||||
#ifndef RTE_EXEC_ENV_WINDOWS
|
||||
static char **eal_args;
|
||||
static char **eal_app_args;
|
||||
|
@ -690,4 +690,13 @@ eal_set_runtime_dir(char *run_dir, size_t size);
|
||||
struct internal_config *
|
||||
eal_get_internal_configuration(void);
|
||||
|
||||
/**
|
||||
* Get the current value of the rte_application_usage pointer
|
||||
*
|
||||
* @return
|
||||
* Pointer to the current value of rte_application_usage .
|
||||
*/
|
||||
rte_usage_hook_t
|
||||
eal_get_application_usage_hook(void);
|
||||
|
||||
#endif /* _EAL_PRIVATE_H_ */
|
||||
|
@ -56,8 +56,6 @@
|
||||
|
||||
#define MEMSIZE_IF_NO_HUGE_PAGE (64ULL * 1024ULL * 1024ULL)
|
||||
|
||||
/* Allow the application to print its usage message too if set */
|
||||
static rte_usage_hook_t rte_application_usage_hook = NULL;
|
||||
/* define fd variable here, because file needs to be kept open for the
|
||||
* duration of the program, as we hold a write lock on it in the primary proc */
|
||||
static int mem_cfg_fd = -1;
|
||||
@ -418,28 +416,17 @@ rte_config_init(void)
|
||||
static void
|
||||
eal_usage(const char *prgname)
|
||||
{
|
||||
rte_usage_hook_t hook = eal_get_application_usage_hook();
|
||||
|
||||
printf("\nUsage: %s ", prgname);
|
||||
eal_common_usage();
|
||||
/* Allow the application to print its usage message too if hook is set */
|
||||
if ( rte_application_usage_hook ) {
|
||||
if (hook) {
|
||||
printf("===== Application Usage =====\n\n");
|
||||
rte_application_usage_hook(prgname);
|
||||
(hook)(prgname);
|
||||
}
|
||||
}
|
||||
|
||||
/* Set a per-application usage message */
|
||||
rte_usage_hook_t
|
||||
rte_set_application_usage_hook( rte_usage_hook_t usage_func )
|
||||
{
|
||||
rte_usage_hook_t old_func;
|
||||
|
||||
/* Will be NULL on the first call to denote the last usage routine. */
|
||||
old_func = rte_application_usage_hook;
|
||||
rte_application_usage_hook = usage_func;
|
||||
|
||||
return old_func;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
eal_get_hugepage_mem_size(void)
|
||||
{
|
||||
|
@ -69,9 +69,6 @@
|
||||
|
||||
#define KERNEL_IOMMU_GROUPS_PATH "/sys/kernel/iommu_groups"
|
||||
|
||||
/* Allow the application to print its usage message too if set */
|
||||
static rte_usage_hook_t rte_application_usage_hook = NULL;
|
||||
|
||||
/* define fd variable here, because file needs to be kept open for the
|
||||
* duration of the program, as we hold a write lock on it in the primary proc */
|
||||
static int mem_cfg_fd = -1;
|
||||
@ -532,6 +529,8 @@ eal_hugedirs_unlock(void)
|
||||
static void
|
||||
eal_usage(const char *prgname)
|
||||
{
|
||||
rte_usage_hook_t hook = eal_get_application_usage_hook();
|
||||
|
||||
printf("\nUsage: %s ", prgname);
|
||||
eal_common_usage();
|
||||
printf("EAL Linux options:\n"
|
||||
@ -546,25 +545,12 @@ eal_usage(const char *prgname)
|
||||
" --"OPT_MATCH_ALLOCATIONS" Free hugepages exactly as allocated\n"
|
||||
"\n");
|
||||
/* Allow the application to print its usage message too if hook is set */
|
||||
if ( rte_application_usage_hook ) {
|
||||
if (hook) {
|
||||
printf("===== Application Usage =====\n\n");
|
||||
rte_application_usage_hook(prgname);
|
||||
(hook)(prgname);
|
||||
}
|
||||
}
|
||||
|
||||
/* Set a per-application usage message */
|
||||
rte_usage_hook_t
|
||||
rte_set_application_usage_hook( rte_usage_hook_t usage_func )
|
||||
{
|
||||
rte_usage_hook_t old_func;
|
||||
|
||||
/* Will be NULL on the first call to denote the last usage routine. */
|
||||
old_func = rte_application_usage_hook;
|
||||
rte_application_usage_hook = usage_func;
|
||||
|
||||
return old_func;
|
||||
}
|
||||
|
||||
static int
|
||||
eal_parse_socket_arg(char *strval, volatile uint64_t *socket_arg)
|
||||
{
|
||||
|
@ -24,9 +24,6 @@
|
||||
|
||||
#define MEMSIZE_IF_NO_HUGE_PAGE (64ULL * 1024ULL * 1024ULL)
|
||||
|
||||
/* Allow the application to print its usage message too if set */
|
||||
static rte_usage_hook_t rte_application_usage_hook;
|
||||
|
||||
/* define fd variable here, because file needs to be kept open for the
|
||||
* duration of the program, as we hold a write lock on it in the primary proc
|
||||
*/
|
||||
@ -72,14 +69,16 @@ eal_proc_type_detect(void)
|
||||
static void
|
||||
eal_usage(const char *prgname)
|
||||
{
|
||||
rte_usage_hook_t hook = eal_get_application_usage_hook();
|
||||
|
||||
printf("\nUsage: %s ", prgname);
|
||||
eal_common_usage();
|
||||
/* Allow the application to print its usage message too
|
||||
* if hook is set
|
||||
*/
|
||||
if (rte_application_usage_hook) {
|
||||
if (hook) {
|
||||
printf("===== Application Usage =====\n\n");
|
||||
rte_application_usage_hook(prgname);
|
||||
(hook)(prgname);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user