DPDK  18.11.6
examples/load_balancer/main.c
/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(c) 2010-2014 Intel Corporation
*/
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <inttypes.h>
#include <sys/types.h>
#include <string.h>
#include <sys/queue.h>
#include <stdarg.h>
#include <errno.h>
#include <getopt.h>
#include <unistd.h>
#include <rte_common.h>
#include <rte_byteorder.h>
#include <rte_log.h>
#include <rte_memory.h>
#include <rte_memcpy.h>
#include <rte_eal.h>
#include <rte_launch.h>
#include <rte_atomic.h>
#include <rte_cycles.h>
#include <rte_prefetch.h>
#include <rte_lcore.h>
#include <rte_per_lcore.h>
#include <rte_interrupts.h>
#include <rte_random.h>
#include <rte_debug.h>
#include <rte_ether.h>
#include <rte_ethdev.h>
#include <rte_mempool.h>
#include <rte_mbuf.h>
#include <rte_ip.h>
#include <rte_tcp.h>
#include <rte_lpm.h>
#include "main.h"
int
main(int argc, char **argv)
{
uint32_t lcore;
int ret;
/* Init EAL */
ret = rte_eal_init(argc, argv);
if (ret < 0)
return -1;
argc -= ret;
argv += ret;
/* Parse application arguments (after the EAL ones) */
ret = app_parse_args(argc, argv);
if (ret < 0) {
app_print_usage();
return -1;
}
/* Init */
app_init();
app_print_params();
/* Launch per-lcore init on every lcore */
rte_eal_mp_remote_launch(app_lcore_main_loop, NULL, CALL_MASTER);
if (rte_eal_wait_lcore(lcore) < 0) {
return -1;
}
}
return 0;
}
rte_lpm.h
rte_memory.h
rte_lcore.h
rte_log.h
rte_eal_mp_remote_launch
int rte_eal_mp_remote_launch(lcore_function_t *f, void *arg, enum rte_rmt_call_master_t call_master)
rte_interrupts.h
rte_branch_prediction.h
rte_eal.h
rte_ether.h
rte_atomic.h
rte_ip.h
rte_cycles.h
rte_random.h
CALL_MASTER
Definition: rte_launch.h:73
rte_common.h
rte_debug.h
rte_memcpy.h
rte_eal_init
int rte_eal_init(int argc, char **argv)
rte_tcp.h
rte_mempool.h
rte_ethdev.h
rte_mbuf.h
rte_launch.h
rte_eal_wait_lcore
int rte_eal_wait_lcore(unsigned slave_id)
rte_per_lcore.h
RTE_LCORE_FOREACH_SLAVE
#define RTE_LCORE_FOREACH_SLAVE(i)
Definition: rte_lcore.h:276
rte_byteorder.h
rte_prefetch.h