git.droids-corp.org
/
dpdk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
app/testpmd: record Rx and dropped stats in flowgen
[dpdk.git]
/
examples
/
l2fwd-cat
/
l2fwd-cat.c
diff --git
a/examples/l2fwd-cat/l2fwd-cat.c
b/examples/l2fwd-cat/l2fwd-cat.c
index
b15f033
..
95de29b
100644
(file)
--- a/
examples/l2fwd-cat/l2fwd-cat.c
+++ b/
examples/l2fwd-cat/l2fwd-cat.c
@@
-74,7
+74,10
@@
port_init(uint16_t port, struct rte_mempool *mbuf_pool)
/* Display the port MAC address. */
struct rte_ether_addr addr;
/* Display the port MAC address. */
struct rte_ether_addr addr;
- rte_eth_macaddr_get(port, &addr);
+ retval = rte_eth_macaddr_get(port, &addr);
+ if (retval < 0)
+ return retval;
+
printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
" %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
port,
printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
" %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
port,
@@
-94,7
+97,7
@@
port_init(uint16_t port, struct rte_mempool *mbuf_pool)
* The lcore main. This is the main thread that does the work, reading from
* an input port and writing to an output port.
*/
* The lcore main. This is the main thread that does the work, reading from
* an input port and writing to an output port.
*/
-static __
attribute__((noreturn))
void
+static __
rte_noreturn
void
lcore_main(void)
{
uint16_t port;
lcore_main(void)
{
uint16_t port;
@@
-104,7
+107,7
@@
lcore_main(void)
* for best performance.
*/
RTE_ETH_FOREACH_DEV(port)
* for best performance.
*/
RTE_ETH_FOREACH_DEV(port)
- if (rte_eth_dev_socket_id(port) > 0 &&
+ if (rte_eth_dev_socket_id(port) >
=
0 &&
rte_eth_dev_socket_id(port) !=
(int)rte_socket_id())
printf("WARNING, port %u is on remote NUMA node to "
rte_eth_dev_socket_id(port) !=
(int)rte_socket_id())
printf("WARNING, port %u is on remote NUMA node to "
@@
-155,10
+158,11
@@
main(int argc, char *argv[])
unsigned nb_ports;
uint16_t portid;
unsigned nb_ports;
uint16_t portid;
- /* Initialize the Environment Abstraction Layer (EAL). */
+ /* Initialize the Environment Abstraction Layer (EAL).
8<
*/
int ret = rte_eal_init(argc, argv);
if (ret < 0)
rte_exit(EXIT_FAILURE, "Error with EAL initialization\n");
int ret = rte_eal_init(argc, argv);
if (ret < 0)
rte_exit(EXIT_FAILURE, "Error with EAL initialization\n");
+ /* >8 End of initializion the Environment Abstraction Layer (EAL). */
argc -= ret;
argv += ret;
argc -= ret;
argv += ret;
@@
-167,9
+171,12
@@
main(int argc, char *argv[])
* Initialize the PQoS library and configure CAT.
* Please see l2fwd-cat documentation for more info.
*/
* Initialize the PQoS library and configure CAT.
* Please see l2fwd-cat documentation for more info.
*/
+
+ /* Initialize the PQoS. 8< */
ret = cat_init(argc, argv);
if (ret < 0)
rte_exit(EXIT_FAILURE, "PQOS: L3CA init failed!\n");
ret = cat_init(argc, argv);
if (ret < 0)
rte_exit(EXIT_FAILURE, "PQOS: L3CA init failed!\n");
+ /* >8 End of initialization of PQoS. */
argc -= ret;
argv += ret;
argc -= ret;
argv += ret;
@@
-195,8
+202,11
@@
main(int argc, char *argv[])
if (rte_lcore_count() > 1)
printf("\nWARNING: Too many lcores enabled. Only 1 used.\n");
if (rte_lcore_count() > 1)
printf("\nWARNING: Too many lcores enabled. Only 1 used.\n");
- /* Call lcore_main on the ma
ster
core only. */
+ /* Call lcore_main on the ma
in
core only. */
lcore_main();
lcore_main();
+ /* clean up the EAL */
+ rte_eal_cleanup();
+
return 0;
}
return 0;
}