f-stack/dpdk/examples/server_node_efd/server/init.h

48 lines
1.0 KiB
C
Raw Normal View History

2019-06-25 11:12:58 +00:00
/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(c) 2016-2017 Intel Corporation
2017-04-21 10:43:26 +00:00
*/
#ifndef _INIT_H_
#define _INIT_H_
2017-04-21 10:43:26 +00:00
/*
* #include <rte_ring.h>
* #include "args.h"
*/
2017-04-21 10:43:26 +00:00
/*
* Define a node structure with all needed info, including
* stats from the nodes.
2017-04-21 10:43:26 +00:00
*/
struct node {
struct rte_ring *rx_q;
unsigned int node_id;
/* these stats hold how many packets the node will actually receive,
* and how many packets were dropped because the node's queue was full.
* The port-info stats, in contrast, record how many packets were received
* or transmitted on an actual NIC port.
*/
struct {
uint64_t rx;
uint64_t rx_drop;
} stats;
2017-04-21 10:43:26 +00:00
};
extern struct rte_efd_table *efd_table;
extern struct node *nodes;
/*
* shared information between server and nodes: number of nodes,
* port numbers, rx and tx stats etc.
*/
extern struct shared_info *info;
extern struct rte_mempool *pktmbuf_pool;
extern uint8_t num_nodes;
extern unsigned int num_sockets;
extern uint32_t num_flows;
2017-04-21 10:43:26 +00:00
int init(int argc, char *argv[]);
2017-04-21 10:43:26 +00:00
#endif /* ifndef _INIT_H_ */