patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Christian Ehrhardt <christian.ehrhardt@canonical.com>
To: Chengchang Tang <tangchengchang@huawei.com>
Cc: dpdk stable <stable@dpdk.org>
Subject: [dpdk-stable] patch 'examples: add eal cleanup to examples' has been queued to stable release 19.11.9
Date: Mon, 17 May 2021 18:09:18 +0200
Message-ID: <20210517161039.3132619-129-christian.ehrhardt@canonical.com> (raw)
In-Reply-To: <20210517161039.3132619-1-christian.ehrhardt@canonical.com>

Hi,

FYI, your patch has been queued to stable release 19.11.9

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 05/19/21. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/cpaelzer/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/cpaelzer/dpdk-stable-queue/commit/036cff489ea2c5b77de407d837090a708fd89307

Thanks.

Christian Ehrhardt <christian.ehrhardt@canonical.com>

---
From 036cff489ea2c5b77de407d837090a708fd89307 Mon Sep 17 00:00:00 2001
From: Chengchang Tang <tangchengchang@huawei.com>
Date: Thu, 15 Apr 2021 10:26:03 +0800
Subject: [PATCH] examples: add eal cleanup to examples

[ upstream commit 10aa375704c148d9e90b5e984066d719f7465357 ]

According to the programming guide, the rte_eal_init should be used pairs
with rte_eal_cleanup.

This patch add rte_eal_cleanup to examples to encourage new users of
DPDK to use it.

Fixes: aec9c13c5257 ("eal: add function to release internal resources")
Fixes: 3d0fad56b74a ("examples/fips_validation: add crypto FIPS application")
Fixes: c8e6ceecebc1 ("examples/ioat: add new sample app for ioat driver")
Fixes: 4ff457986f76 ("examples/l2fwd-event: add default poll mode routines")
Fixes: 08bd1a174461 ("examples/l3fwd-graph: add graph-based l3fwd skeleton")
Fixes: c5eebf85badc ("examples/ntb: add example for NTB")
Fixes: b77f66002812 ("examples/pipeline: add new example application")
Fixes: edbed86d1cc3 ("examples/vdpa: introduce a new sample for vDPA")
Fixes: c19beb3f38cd ("examples/vhost_blk: introduce vhost storage sample")
Fixes: f5188211c721 ("examples/vhost_crypto: add sample application")

Signed-off-by: Chengchang Tang <tangchengchang@huawei.com>
---
 examples/bbdev_app/main.c                                  | 3 +++
 examples/bond/main.c                                       | 4 ++++
 examples/cmdline/main.c                                    | 3 +++
 examples/distributor/main.c                                | 3 +++
 examples/ethtool/ethtool-app/main.c                        | 3 +++
 examples/fips_validation/main.c                            | 3 +++
 examples/flow_classify/flow_classify.c                     | 3 +++
 examples/flow_filtering/main.c                             | 3 +++
 examples/helloworld/main.c                                 | 4 ++++
 examples/ioat/ioatfwd.c                                    | 3 +++
 examples/ip_fragmentation/main.c                           | 3 +++
 examples/ip_pipeline/main.c                                | 3 +++
 examples/ip_reassembly/main.c                              | 3 +++
 examples/ipsec-secgw/ipsec-secgw.c                         | 2 ++
 examples/ipv4_multicast/main.c                             | 3 +++
 examples/kni/main.c                                        | 3 +++
 examples/l2fwd-cat/l2fwd-cat.c                             | 3 +++
 examples/l2fwd-crypto/main.c                               | 3 +++
 examples/l2fwd-event/main.c                                | 3 +++
 examples/l2fwd-jobstats/main.c                             | 3 +++
 examples/l2fwd-keepalive/main.c                            | 4 ++++
 examples/l2fwd/main.c                                      | 3 +++
 examples/l3fwd-acl/main.c                                  | 3 +++
 examples/l3fwd/main.c                                      | 4 ++++
 examples/link_status_interrupt/main.c                      | 3 +++
 examples/multi_process/client_server_mp/mp_client/client.c | 3 +++
 examples/multi_process/client_server_mp/mp_server/main.c   | 4 ++++
 examples/multi_process/simple_mp/main.c                    | 4 ++++
 examples/multi_process/symmetric_mp/main.c                 | 3 +++
 examples/ntb/ntb_fwd.c                                     | 3 +++
 examples/packet_ordering/main.c                            | 4 ++++
 examples/performance-thread/l3fwd-thread/main.c            | 3 +++
 examples/performance-thread/pthread_shim/main.c            | 4 ++++
 examples/ptpclient/ptpclient.c                             | 3 +++
 examples/qos_meter/main.c                                  | 3 +++
 examples/qos_sched/main.c                                  | 3 +++
 examples/rxtx_callbacks/main.c                             | 4 ++++
 examples/server_node_efd/node/node.c                       | 3 +++
 examples/server_node_efd/server/main.c                     | 4 ++++
 examples/service_cores/main.c                              | 3 +++
 examples/skeleton/basicfwd.c                               | 3 +++
 examples/timer/main.c                                      | 3 +++
 examples/vdpa/main.c                                       | 3 +++
 examples/vhost/main.c                                      | 4 +++-
 examples/vhost_blk/vhost_blk.c                             | 3 +++
 examples/vhost_crypto/main.c                               | 3 +++
 examples/vm_power_manager/guest_cli/main.c                 | 3 +++
 examples/vm_power_manager/main.c                           | 3 +++
 examples/vmdq/main.c                                       | 3 +++
 examples/vmdq_dcb/main.c                                   | 3 +++
 50 files changed, 159 insertions(+), 1 deletion(-)

diff --git a/examples/bbdev_app/main.c b/examples/bbdev_app/main.c
index db2dc33345..a5e69d5852 100644
--- a/examples/bbdev_app/main.c
+++ b/examples/bbdev_app/main.c
@@ -1171,5 +1171,8 @@ main(int argc, char **argv)
 		ret |= rte_eal_wait_lcore(lcore_id);
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return ret;
 }
diff --git a/examples/bond/main.c b/examples/bond/main.c
index ee8fa2d271..d4de4b9e68 100644
--- a/examples/bond/main.c
+++ b/examples/bond/main.c
@@ -879,5 +879,9 @@ main(int argc, char *argv[])
 	prompt(NULL);
 
 	rte_delay_ms(100);
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/cmdline/main.c b/examples/cmdline/main.c
index f2f2e5a2f4..dd3bfab9d1 100644
--- a/examples/cmdline/main.c
+++ b/examples/cmdline/main.c
@@ -37,5 +37,8 @@ int main(int argc, char **argv)
 	cmdline_interact(cl);
 	cmdline_stdin_exit(cl);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/distributor/main.c b/examples/distributor/main.c
index 567c5e9891..3f606a80a0 100644
--- a/examples/distributor/main.c
+++ b/examples/distributor/main.c
@@ -935,5 +935,8 @@ main(int argc, char *argv[])
 	rte_free(pd);
 	rte_free(pr);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/ethtool/ethtool-app/main.c b/examples/ethtool/ethtool-app/main.c
index 29891012ac..608327170f 100644
--- a/examples/ethtool/ethtool-app/main.c
+++ b/examples/ethtool/ethtool-app/main.c
@@ -298,5 +298,8 @@ int main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/fips_validation/main.c b/examples/fips_validation/main.c
index eadfdb4bac..2f8238886b 100644
--- a/examples/fips_validation/main.c
+++ b/examples/fips_validation/main.c
@@ -433,6 +433,9 @@ exit:
 	fips_test_clear();
 	cryptodev_fips_validate_app_uninit();
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return ret;
 
 }
diff --git a/examples/flow_classify/flow_classify.c b/examples/flow_classify/flow_classify.c
index 1c12bbb2fd..060f0c9402 100644
--- a/examples/flow_classify/flow_classify.c
+++ b/examples/flow_classify/flow_classify.c
@@ -853,5 +853,8 @@ main(int argc, char *argv[])
 	/* Call lcore_main on the master core only. */
 	lcore_main(cls_app);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/flow_filtering/main.c b/examples/flow_filtering/main.c
index cc9e7e7808..6188f9c6bb 100644
--- a/examples/flow_filtering/main.c
+++ b/examples/flow_filtering/main.c
@@ -256,5 +256,8 @@ main(int argc, char **argv)
 
 	main_loop();
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/helloworld/main.c b/examples/helloworld/main.c
index c922cfbad7..d2f262b86b 100644
--- a/examples/helloworld/main.c
+++ b/examples/helloworld/main.c
@@ -43,5 +43,9 @@ main(int argc, char **argv)
 	lcore_hello(NULL);
 
 	rte_eal_mp_wait_lcore();
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/ioat/ioatfwd.c b/examples/ioat/ioatfwd.c
index 7971442b5d..087bdcf66a 100644
--- a/examples/ioat/ioatfwd.c
+++ b/examples/ioat/ioatfwd.c
@@ -1013,6 +1013,9 @@ main(int argc, char **argv)
 			rte_ring_free(cfg.ports[i].rx_to_tx_ring);
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	printf("Bye...\n");
 	return 0;
 }
diff --git a/examples/ip_fragmentation/main.c b/examples/ip_fragmentation/main.c
index 90e4d1ea4a..435b6eca61 100644
--- a/examples/ip_fragmentation/main.c
+++ b/examples/ip_fragmentation/main.c
@@ -1078,5 +1078,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/ip_pipeline/main.c b/examples/ip_pipeline/main.c
index 97d1e91c2b..95051fca49 100644
--- a/examples/ip_pipeline/main.c
+++ b/examples/ip_pipeline/main.c
@@ -266,4 +266,7 @@ main(int argc, char **argv)
 
 		kni_handle_request();
 	}
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
 }
diff --git a/examples/ip_reassembly/main.c b/examples/ip_reassembly/main.c
index 29b34d0710..89ff1a06b6 100644
--- a/examples/ip_reassembly/main.c
+++ b/examples/ip_reassembly/main.c
@@ -1207,5 +1207,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/ipsec-secgw/ipsec-secgw.c b/examples/ipsec-secgw/ipsec-secgw.c
index 1493be9025..8e9b45493a 100644
--- a/examples/ipsec-secgw/ipsec-secgw.c
+++ b/examples/ipsec-secgw/ipsec-secgw.c
@@ -2543,5 +2543,7 @@ main(int32_t argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
 	return 0;
 }
diff --git a/examples/ipv4_multicast/main.c b/examples/ipv4_multicast/main.c
index 09d9270aff..83bdeb7403 100644
--- a/examples/ipv4_multicast/main.c
+++ b/examples/ipv4_multicast/main.c
@@ -811,5 +811,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/kni/main.c b/examples/kni/main.c
index 7edc73ab91..a696a83578 100644
--- a/examples/kni/main.c
+++ b/examples/kni/main.c
@@ -1120,5 +1120,8 @@ main(int argc, char** argv)
 			kni_port_params_array[i] = NULL;
 		}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/l2fwd-cat/l2fwd-cat.c b/examples/l2fwd-cat/l2fwd-cat.c
index 6838f288c6..87d6c930b6 100644
--- a/examples/l2fwd-cat/l2fwd-cat.c
+++ b/examples/l2fwd-cat/l2fwd-cat.c
@@ -201,5 +201,8 @@ main(int argc, char *argv[])
 	/* Call lcore_main on the master core only. */
 	lcore_main();
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/l2fwd-crypto/main.c b/examples/l2fwd-crypto/main.c
index b09d017e46..063db823bd 100644
--- a/examples/l2fwd-crypto/main.c
+++ b/examples/l2fwd-crypto/main.c
@@ -2828,5 +2828,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/l2fwd-event/main.c b/examples/l2fwd-event/main.c
index 7969a1c313..5bfdcf42ef 100644
--- a/examples/l2fwd-event/main.c
+++ b/examples/l2fwd-event/main.c
@@ -583,6 +583,9 @@ main(int argc, char **argv)
 			printf(" Done\n");
 		}
 	}
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
 	printf("Bye...\n");
 
 	return 0;
diff --git a/examples/l2fwd-jobstats/main.c b/examples/l2fwd-jobstats/main.c
index c2180c2d1c..b50ba604eb 100644
--- a/examples/l2fwd-jobstats/main.c
+++ b/examples/l2fwd-jobstats/main.c
@@ -1028,5 +1028,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/l2fwd-keepalive/main.c b/examples/l2fwd-keepalive/main.c
index ba2745c915..935987bf8f 100644
--- a/examples/l2fwd-keepalive/main.c
+++ b/examples/l2fwd-keepalive/main.c
@@ -823,5 +823,9 @@ main(int argc, char **argv)
 
 	if (ka_shm != NULL)
 		rte_keepalive_shm_cleanup(ka_shm);
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/l2fwd/main.c b/examples/l2fwd/main.c
index e3767a3159..1d850fcfc1 100644
--- a/examples/l2fwd/main.c
+++ b/examples/l2fwd/main.c
@@ -772,6 +772,9 @@ main(int argc, char **argv)
 		rte_eth_dev_close(portid);
 		printf(" Done\n");
 	}
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
 	printf("Bye...\n");
 
 	return ret;
diff --git a/examples/l3fwd-acl/main.c b/examples/l3fwd-acl/main.c
index cfbeee962b..430d42d103 100644
--- a/examples/l3fwd-acl/main.c
+++ b/examples/l3fwd-acl/main.c
@@ -2116,5 +2116,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/l3fwd/main.c b/examples/l3fwd/main.c
index b98040df45..19722f0c4c 100644
--- a/examples/l3fwd/main.c
+++ b/examples/l3fwd/main.c
@@ -1093,6 +1093,10 @@ main(int argc, char **argv)
 		rte_eth_dev_close(portid);
 		printf(" Done\n");
 	}
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	printf("Bye...\n");
 
 	return ret;
diff --git a/examples/link_status_interrupt/main.c b/examples/link_status_interrupt/main.c
index 6b8c153b58..26595bb47a 100644
--- a/examples/link_status_interrupt/main.c
+++ b/examples/link_status_interrupt/main.c
@@ -741,5 +741,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/multi_process/client_server_mp/mp_client/client.c b/examples/multi_process/client_server_mp/mp_client/client.c
index 361d90b54b..6d4c246816 100644
--- a/examples/multi_process/client_server_mp/mp_client/client.c
+++ b/examples/multi_process/client_server_mp/mp_client/client.c
@@ -268,4 +268,7 @@ main(int argc, char *argv[])
 
 		need_flush = 1;
 	}
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
 }
diff --git a/examples/multi_process/client_server_mp/mp_server/main.c b/examples/multi_process/client_server_mp/mp_server/main.c
index 1084b303ff..b349d90d92 100644
--- a/examples/multi_process/client_server_mp/mp_server/main.c
+++ b/examples/multi_process/client_server_mp/mp_server/main.c
@@ -304,5 +304,9 @@ main(int argc, char *argv[])
 	rte_eal_mp_remote_launch(sleep_lcore, NULL, SKIP_MASTER);
 
 	do_packet_forwarding();
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/multi_process/simple_mp/main.c b/examples/multi_process/simple_mp/main.c
index e6c69d6a33..0304c453ec 100644
--- a/examples/multi_process/simple_mp/main.c
+++ b/examples/multi_process/simple_mp/main.c
@@ -121,5 +121,9 @@ main(int argc, char **argv)
 	cmdline_stdin_exit(cl);
 
 	rte_eal_mp_wait_lcore();
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/multi_process/symmetric_mp/main.c b/examples/multi_process/symmetric_mp/main.c
index c5cd8825e5..a5ff1fee6e 100644
--- a/examples/multi_process/symmetric_mp/main.c
+++ b/examples/multi_process/symmetric_mp/main.c
@@ -475,5 +475,8 @@ main(int argc, char **argv)
 
 	rte_eal_mp_remote_launch(lcore_main, NULL, CALL_MASTER);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/ntb/ntb_fwd.c b/examples/ntb/ntb_fwd.c
index 17eedcf0b8..4630ece311 100644
--- a/examples/ntb/ntb_fwd.c
+++ b/examples/ntb/ntb_fwd.c
@@ -1496,5 +1496,8 @@ main(int argc, char **argv)
 		start_pkt_fwd();
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/packet_ordering/main.c b/examples/packet_ordering/main.c
index 4eea8a3318..c9f645e67e 100644
--- a/examples/packet_ordering/main.c
+++ b/examples/packet_ordering/main.c
@@ -779,5 +779,9 @@ main(int argc, char **argv)
 	}
 
 	print_stats();
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/performance-thread/l3fwd-thread/main.c b/examples/performance-thread/l3fwd-thread/main.c
index 96fbdcdde2..aee075f2d2 100644
--- a/examples/performance-thread/l3fwd-thread/main.c
+++ b/examples/performance-thread/l3fwd-thread/main.c
@@ -3783,5 +3783,8 @@ main(int argc, char **argv)
 		}
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/performance-thread/pthread_shim/main.c b/examples/performance-thread/pthread_shim/main.c
index 03ff394369..d137c49bb3 100644
--- a/examples/performance-thread/pthread_shim/main.c
+++ b/examples/performance-thread/pthread_shim/main.c
@@ -258,5 +258,9 @@ int main(int argc, char **argv)
 	RTE_LCORE_FOREACH_SLAVE(lcore_id) {
 		rte_eal_wait_lcore(lcore_id);
 	}
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
index c5b0c79ed4..e13a491c27 100644
--- a/examples/ptpclient/ptpclient.c
+++ b/examples/ptpclient/ptpclient.c
@@ -784,5 +784,8 @@ main(int argc, char *argv[])
 	/* Call lcore_main on the master core only. */
 	lcore_main();
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/qos_meter/main.c b/examples/qos_meter/main.c
index e8112c83a2..03129c85f4 100644
--- a/examples/qos_meter/main.c
+++ b/examples/qos_meter/main.c
@@ -463,5 +463,8 @@ main(int argc, char **argv)
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/qos_sched/main.c b/examples/qos_sched/main.c
index c0ed16b68f..4dc65e10c2 100644
--- a/examples/qos_sched/main.c
+++ b/examples/qos_sched/main.c
@@ -218,5 +218,8 @@ main(int argc, char **argv)
 		}
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/rxtx_callbacks/main.c b/examples/rxtx_callbacks/main.c
index 07e95e8d1a..35648226fe 100644
--- a/examples/rxtx_callbacks/main.c
+++ b/examples/rxtx_callbacks/main.c
@@ -304,5 +304,9 @@ main(int argc, char *argv[])
 
 	/* call lcore_main on master core only */
 	lcore_main();
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/server_node_efd/node/node.c b/examples/server_node_efd/node/node.c
index 67a55808bf..e68606e0ca 100644
--- a/examples/server_node_efd/node/node.c
+++ b/examples/server_node_efd/node/node.c
@@ -383,4 +383,7 @@ main(int argc, char *argv[])
 
 		need_flush = 1;
 	}
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
 }
diff --git a/examples/server_node_efd/server/main.c b/examples/server_node_efd/server/main.c
index 21c72acda2..c42b6530c0 100644
--- a/examples/server_node_efd/server/main.c
+++ b/examples/server_node_efd/server/main.c
@@ -334,5 +334,9 @@ main(int argc, char *argv[])
 	rte_eal_mp_remote_launch(sleep_lcore, NULL, SKIP_MASTER);
 
 	do_packet_forwarding();
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/service_cores/main.c b/examples/service_cores/main.c
index c7c792810d..c5753cc52d 100644
--- a/examples/service_cores/main.c
+++ b/examples/service_cores/main.c
@@ -220,5 +220,8 @@ main(int argc, char **argv)
 			i = 0;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/skeleton/basicfwd.c b/examples/skeleton/basicfwd.c
index 73d313b84e..6f6b59e6f7 100644
--- a/examples/skeleton/basicfwd.c
+++ b/examples/skeleton/basicfwd.c
@@ -205,5 +205,8 @@ main(int argc, char *argv[])
 	/* Call lcore_main on the master core only. */
 	lcore_main();
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/timer/main.c b/examples/timer/main.c
index 968a941367..9f1730f932 100644
--- a/examples/timer/main.c
+++ b/examples/timer/main.c
@@ -117,5 +117,8 @@ main(int argc, char **argv)
 	/* call it on master lcore too */
 	(void) lcore_mainloop(NULL);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/vdpa/main.c b/examples/vdpa/main.c
index d2e2cb7cd4..c3be9159fb 100644
--- a/examples/vdpa/main.c
+++ b/examples/vdpa/main.c
@@ -450,5 +450,8 @@ main(int argc, char *argv[])
 		vdpa_sample_quit();
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/vhost/main.c b/examples/vhost/main.c
index 312829e8b9..135aafa5b4 100644
--- a/examples/vhost/main.c
+++ b/examples/vhost/main.c
@@ -1571,6 +1571,8 @@ main(int argc, char *argv[])
 	RTE_LCORE_FOREACH_SLAVE(lcore_id)
 		rte_eal_wait_lcore(lcore_id);
 
-	return 0;
+	/* clean up the EAL */
+	rte_eal_cleanup();
 
+	return 0;
 }
diff --git a/examples/vhost_blk/vhost_blk.c b/examples/vhost_blk/vhost_blk.c
index d0c30a9c6f..57f0adf50f 100644
--- a/examples/vhost_blk/vhost_blk.c
+++ b/examples/vhost_blk/vhost_blk.c
@@ -1098,5 +1098,8 @@ int main(int argc, char *argv[])
 	while (1)
 		sleep(1);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/vhost_crypto/main.c b/examples/vhost_crypto/main.c
index 7973b57564..03fb238758 100644
--- a/examples/vhost_crypto/main.c
+++ b/examples/vhost_crypto/main.c
@@ -455,6 +455,9 @@ free_resource(void)
 	}
 
 	memset(&options, 0, sizeof(options));
+
+	/* clean up the EAL */
+	rte_eal_cleanup();
 }
 
 int
diff --git a/examples/vm_power_manager/guest_cli/main.c b/examples/vm_power_manager/guest_cli/main.c
index 4e17f7fb90..b8fa65ef15 100644
--- a/examples/vm_power_manager/guest_cli/main.c
+++ b/examples/vm_power_manager/guest_cli/main.c
@@ -200,5 +200,8 @@ main(int argc, char **argv)
 	}
 	run_cli(NULL);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/vm_power_manager/main.c b/examples/vm_power_manager/main.c
index 2316aace5a..2f82b878fe 100644
--- a/examples/vm_power_manager/main.c
+++ b/examples/vm_power_manager/main.c
@@ -469,5 +469,8 @@ main(int argc, char **argv)
 
 	free(ci->cd);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/vmdq/main.c b/examples/vmdq/main.c
index b082bc8c1c..29e1214a56 100644
--- a/examples/vmdq/main.c
+++ b/examples/vmdq/main.c
@@ -662,5 +662,8 @@ main(int argc, char *argv[])
 			return -1;
 	}
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
diff --git a/examples/vmdq_dcb/main.c b/examples/vmdq_dcb/main.c
index 594c4f1959..5ad94cfd31 100644
--- a/examples/vmdq_dcb/main.c
+++ b/examples/vmdq_dcb/main.c
@@ -710,5 +710,8 @@ main(int argc, char *argv[])
 	/* call on master too */
 	(void) lcore_main((void*)i);
 
+	/* clean up the EAL */
+	rte_eal_cleanup();
+
 	return 0;
 }
-- 
2.31.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2021-05-17 17:40:34.462188614 +0200
+++ 0129-examples-add-eal-cleanup-to-examples.patch	2021-05-17 17:40:29.387811178 +0200
@@ -1 +1 @@
-From 10aa375704c148d9e90b5e984066d719f7465357 Mon Sep 17 00:00:00 2001
+From 036cff489ea2c5b77de407d837090a708fd89307 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 10aa375704c148d9e90b5e984066d719f7465357 ]
+
@@ -22 +23,0 @@
-Cc: stable@dpdk.org
@@ -33 +34 @@
- examples/flow_filtering/main.c                             | 7 ++++++-
+ examples/flow_filtering/main.c                             | 3 +++
@@ -36,0 +38 @@
+ examples/ip_pipeline/main.c                                | 3 +++
@@ -38 +40 @@
- examples/ipsec-secgw/ipsec-secgw.c                         | 3 +++
+ examples/ipsec-secgw/ipsec-secgw.c                         | 2 ++
@@ -48 +49,0 @@
- examples/l3fwd-graph/main.c                                | 3 +++
@@ -59 +59,0 @@
- examples/pipeline/main.c                                   | 3 +++
@@ -77 +77 @@
- 51 files changed, 166 insertions(+), 2 deletions(-)
+ 50 files changed, 159 insertions(+), 1 deletion(-)
@@ -80 +80 @@
-index 20cfd327fb..5251db0b16 100644
+index db2dc33345..a5e69d5852 100644
@@ -83 +83 @@
-@@ -1195,5 +1195,8 @@ main(int argc, char **argv)
+@@ -1171,5 +1171,8 @@ main(int argc, char **argv)
@@ -93 +93 @@
-index 81a6fa976b..f48400e211 100644
+index ee8fa2d271..d4de4b9e68 100644
@@ -96 +96 @@
-@@ -876,5 +876,9 @@ main(int argc, char *argv[])
+@@ -879,5 +879,9 @@ main(int argc, char *argv[])
@@ -107 +107 @@
-index bb79542452..94002f0582 100644
+index f2f2e5a2f4..dd3bfab9d1 100644
@@ -110 +110 @@
-@@ -36,5 +36,8 @@ int main(int argc, char **argv)
+@@ -37,5 +37,8 @@ int main(int argc, char **argv)
@@ -120 +120 @@
-index caa7c46cb1..1b1029660e 100644
+index 567c5e9891..3f606a80a0 100644
@@ -123 +123 @@
-@@ -932,5 +932,8 @@ main(int argc, char *argv[])
+@@ -935,5 +935,8 @@ main(int argc, char *argv[])
@@ -133 +133 @@
-index c6023a1d41..21ed85c7d6 100644
+index 29891012ac..608327170f 100644
@@ -136 +136 @@
-@@ -299,5 +299,8 @@ int main(int argc, char **argv)
+@@ -298,5 +298,8 @@ int main(int argc, char **argv)
@@ -146 +146 @@
-index b73691dd23..c175fe6ac2 100644
+index eadfdb4bac..2f8238886b 100644
@@ -149 +149 @@
-@@ -501,6 +501,9 @@ exit:
+@@ -433,6 +433,9 @@ exit:
@@ -160 +160 @@
-index 335d7d2ad8..5c3e111cfa 100644
+index 1c12bbb2fd..060f0c9402 100644
@@ -164 +164 @@
- 	/* Call lcore_main on the main core only. */
+ 	/* Call lcore_main on the master core only. */
@@ -173 +173 @@
-index bc28468f17..f1940bc88d 100644
+index cc9e7e7808..6188f9c6bb 100644
@@ -176,3 +176,3 @@
-@@ -258,5 +258,10 @@ main(int argc, char **argv)
- 		rte_exit(EXIT_FAILURE, "error in creating flow");
- 	}
+@@ -256,5 +256,8 @@ main(int argc, char **argv)
+ 
+ 	main_loop();
@@ -180,3 +179,0 @@
--	return main_loop();
-+	ret = main_loop();
-+
@@ -186 +183 @@
-+	return ret;
+ 	return 0;
@@ -189 +186 @@
-index 8a4cee60ff..ac72145c73 100644
+index c922cfbad7..d2f262b86b 100644
@@ -203 +200 @@
-index 6502e4531f..845301a6db 100644
+index 7971442b5d..087bdcf66a 100644
@@ -206 +203 @@
-@@ -1011,6 +1011,9 @@ main(int argc, char **argv)
+@@ -1013,6 +1013,9 @@ main(int argc, char **argv)
@@ -217 +214 @@
-index 5a96841dfc..77a6a18d19 100644
+index 90e4d1ea4a..435b6eca61 100644
@@ -220 +217 @@
-@@ -1075,5 +1075,8 @@ main(int argc, char **argv)
+@@ -1078,5 +1078,8 @@ main(int argc, char **argv)
@@ -228,0 +226,12 @@
+diff --git a/examples/ip_pipeline/main.c b/examples/ip_pipeline/main.c
+index 97d1e91c2b..95051fca49 100644
+--- a/examples/ip_pipeline/main.c
++++ b/examples/ip_pipeline/main.c
+@@ -266,4 +266,7 @@ main(int argc, char **argv)
+ 
+ 		kni_handle_request();
+ 	}
++
++	/* clean up the EAL */
++	rte_eal_cleanup();
+ }
@@ -230 +239 @@
-index 954a11512a..ce8882a458 100644
+index 29b34d0710..89ff1a06b6 100644
@@ -233 +242 @@
-@@ -1201,5 +1201,8 @@ main(int argc, char **argv)
+@@ -1207,5 +1207,8 @@ main(int argc, char **argv)
@@ -243 +252 @@
-index 59971dc766..a9f9b5859b 100644
+index 1493be9025..8e9b45493a 100644
@@ -246,3 +255,2 @@
-@@ -3076,6 +3076,9 @@ main(int32_t argc, char **argv)
- 		rte_eth_dev_close(portid);
- 		printf(" Done\n");
+@@ -2543,5 +2543,7 @@ main(int32_t argc, char **argv)
+ 			return -1;
@@ -250 +258 @@
-+
+ 
@@ -253,2 +260,0 @@
- 	printf("Bye...\n");
- 
@@ -255,0 +262 @@
+ }
@@ -257 +264 @@
-index e18726a5d2..fd6207a18b 100644
+index 09d9270aff..83bdeb7403 100644
@@ -260 +267 @@
-@@ -805,5 +805,8 @@ main(int argc, char **argv)
+@@ -811,5 +811,8 @@ main(int argc, char **argv)
@@ -270 +277 @@
-index fe93b8618a..beabb3c848 100644
+index 7edc73ab91..a696a83578 100644
@@ -273 +280 @@
-@@ -1140,5 +1140,8 @@ main(int argc, char** argv)
+@@ -1120,5 +1120,8 @@ main(int argc, char** argv)
@@ -283 +290 @@
-index 2e632c5cb6..02288a3824 100644
+index 6838f288c6..87d6c930b6 100644
@@ -287 +294 @@
- 	/* Call lcore_main on the main core only. */
+ 	/* Call lcore_main on the master core only. */
@@ -296 +303 @@
-index a957df05db..4f51616492 100644
+index b09d017e46..063db823bd 100644
@@ -299 +306 @@
-@@ -2835,5 +2835,8 @@ main(int argc, char **argv)
+@@ -2828,5 +2828,8 @@ main(int argc, char **argv)
@@ -309 +316 @@
-index 444ee4e4db..0acfee4c92 100644
+index 7969a1c313..5bfdcf42ef 100644
@@ -312 +319 @@
-@@ -716,6 +716,9 @@ main(int argc, char **argv)
+@@ -583,6 +583,9 @@ main(int argc, char **argv)
@@ -323 +330 @@
-index 1151769aa9..58a722669b 100644
+index c2180c2d1c..b50ba604eb 100644
@@ -326 +333 @@
-@@ -1022,5 +1022,8 @@ main(int argc, char **argv)
+@@ -1028,5 +1028,8 @@ main(int argc, char **argv)
@@ -336 +343 @@
-index e4c2b27933..be6616288f 100644
+index ba2745c915..935987bf8f 100644
@@ -339 +346 @@
-@@ -817,5 +817,9 @@ main(int argc, char **argv)
+@@ -823,5 +823,9 @@ main(int argc, char **argv)
@@ -350 +357 @@
-index be5bf7bc90..32d405e65a 100644
+index e3767a3159..1d850fcfc1 100644
@@ -353 +360 @@
-@@ -902,6 +902,9 @@ main(int argc, char **argv)
+@@ -772,6 +772,9 @@ main(int argc, char **argv)
@@ -364 +371 @@
-index 4a17274379..a1f457b564 100644
+index cfbeee962b..430d42d103 100644
@@ -367 +374 @@
-@@ -2258,5 +2258,8 @@ main(int argc, char **argv)
+@@ -2116,5 +2116,8 @@ main(int argc, char **argv)
@@ -376,14 +382,0 @@
-diff --git a/examples/l3fwd-graph/main.c b/examples/l3fwd-graph/main.c
-index 127c5e8dab..75c2e0ef3f 100644
---- a/examples/l3fwd-graph/main.c
-+++ b/examples/l3fwd-graph/main.c
-@@ -1123,6 +1123,9 @@ main(int argc, char **argv)
- 		rte_eth_dev_close(portid);
- 		printf(" Done\n");
- 	}
-+
-+	/* clean up the EAL */
-+	rte_eal_cleanup();
- 	printf("Bye...\n");
- 
- 	return ret;
@@ -391 +384 @@
-index 74413052b0..4cb800aa15 100644
+index b98040df45..19722f0c4c 100644
@@ -394,3 +387,3 @@
-@@ -1405,6 +1405,10 @@ main(int argc, char **argv)
- 			printf(" Done\n");
- 		}
+@@ -1093,6 +1093,10 @@ main(int argc, char **argv)
+ 		rte_eth_dev_close(portid);
+ 		printf(" Done\n");
@@ -406 +399 @@
-index 8ca3586e05..d8ff5f133b 100644
+index 6b8c153b58..26595bb47a 100644
@@ -409 +402 @@
-@@ -730,5 +730,8 @@ main(int argc, char **argv)
+@@ -741,5 +741,8 @@ main(int argc, char **argv)
@@ -431 +424 @@
-index b18e12dd4b..9bcee460fd 100644
+index 1084b303ff..b349d90d92 100644
@@ -435 +428 @@
- 	rte_eal_mp_remote_launch(sleep_lcore, NULL, SKIP_MAIN);
+ 	rte_eal_mp_remote_launch(sleep_lcore, NULL, SKIP_MASTER);
@@ -445 +438 @@
-index 109b8bb45d..a05404f7ed 100644
+index e6c69d6a33..0304c453ec 100644
@@ -459 +452 @@
-index ae7f5e0d50..79e5c61e40 100644
+index c5cd8825e5..a5ff1fee6e 100644
@@ -462 +455 @@
-@@ -472,5 +472,8 @@ main(int argc, char **argv)
+@@ -475,5 +475,8 @@ main(int argc, char **argv)
@@ -464 +457 @@
- 	rte_eal_mp_remote_launch(lcore_main, NULL, CALL_MAIN);
+ 	rte_eal_mp_remote_launch(lcore_main, NULL, CALL_MASTER);
@@ -472 +465 @@
-index 54b7f08964..e9a3887106 100644
+index 17eedcf0b8..4630ece311 100644
@@ -475 +468 @@
-@@ -1498,5 +1498,8 @@ main(int argc, char **argv)
+@@ -1496,5 +1496,8 @@ main(int argc, char **argv)
@@ -485 +478 @@
-index bcbda05f5e..d2fe9f6b50 100644
+index 4eea8a3318..c9f645e67e 100644
@@ -488 +481 @@
-@@ -783,5 +783,9 @@ main(int argc, char **argv)
+@@ -779,5 +779,9 @@ main(int argc, char **argv)
@@ -499 +492 @@
-index b16c19bc96..2f593abf26 100644
+index 96fbdcdde2..aee075f2d2 100644
@@ -502 +495 @@
-@@ -3781,5 +3781,8 @@ main(int argc, char **argv)
+@@ -3783,5 +3783,8 @@ main(int argc, char **argv)
@@ -512 +505 @@
-index 4ce3622e47..257de50692 100644
+index 03ff394369..d137c49bb3 100644
@@ -515,2 +508,2 @@
-@@ -263,5 +263,9 @@ int main(int argc, char **argv)
- 	RTE_LCORE_FOREACH_WORKER(lcore_id) {
+@@ -258,5 +258,9 @@ int main(int argc, char **argv)
+ 	RTE_LCORE_FOREACH_SLAVE(lcore_id) {
@@ -525,12 +517,0 @@
-diff --git a/examples/pipeline/main.c b/examples/pipeline/main.c
-index fb57ef31fe..8ea19f9dd5 100644
---- a/examples/pipeline/main.c
-+++ b/examples/pipeline/main.c
-@@ -190,4 +190,7 @@ main(int argc, char **argv)
- 
- 		conn_poll_for_msg(conn);
- 	}
-+
-+	/* clean up the EAL */
-+	rte_eal_cleanup();
- }
@@ -538 +519 @@
-index 878d1a0b99..173451eedc 100644
+index c5b0c79ed4..e13a491c27 100644
@@ -542 +523 @@
- 	/* Call lcore_main on the main core only. */
+ 	/* Call lcore_main on the master core only. */
@@ -551 +532 @@
-index f2d9c28828..6e724f3783 100644
+index e8112c83a2..03129c85f4 100644
@@ -554 +535 @@
-@@ -460,5 +460,8 @@ main(int argc, char **argv)
+@@ -463,5 +463,8 @@ main(int argc, char **argv)
@@ -564 +545 @@
-index a6071b991c..dc6a17a646 100644
+index c0ed16b68f..4dc65e10c2 100644
@@ -577 +558 @@
-index 35c6c39807..b57b2fc6bc 100644
+index 07e95e8d1a..35648226fe 100644
@@ -580 +561 @@
-@@ -338,5 +338,9 @@ main(int argc, char *argv[])
+@@ -304,5 +304,9 @@ main(int argc, char *argv[])
@@ -582 +563 @@
- 	/* call lcore_main on main core only */
+ 	/* call lcore_main on master core only */
@@ -603 +584 @@
-index 4728960eaf..39b7b6370f 100644
+index 21c72acda2..c42b6530c0 100644
@@ -607 +588 @@
- 	rte_eal_mp_remote_launch(sleep_lcore, NULL, SKIP_MAIN);
+ 	rte_eal_mp_remote_launch(sleep_lcore, NULL, SKIP_MASTER);
@@ -617 +598 @@
-index 0b3d8c8073..2b57a52b16 100644
+index c7c792810d..c5753cc52d 100644
@@ -630 +611 @@
-index 4b2b6ab4ff..a31b2882ae 100644
+index 73d313b84e..6f6b59e6f7 100644
@@ -634 +615 @@
- 	/* Call lcore_main on the main core only. */
+ 	/* Call lcore_main on the master core only. */
@@ -643 +624 @@
-index 5a57e48290..d67301e3c4 100644
+index 968a941367..9f1730f932 100644
@@ -647 +628 @@
- 	/* call it on main lcore too */
+ 	/* call it on master lcore too */
@@ -656 +637 @@
-index 97e967b9a2..097a267b8c 100644
+index d2e2cb7cd4..c3be9159fb 100644
@@ -659 +640 @@
-@@ -576,5 +576,8 @@ main(int argc, char *argv[])
+@@ -450,5 +450,8 @@ main(int argc, char *argv[])
@@ -669 +650 @@
-index 2ca7d98c58..ff48ba270d 100644
+index 312829e8b9..135aafa5b4 100644
@@ -672,2 +653,2 @@
-@@ -1781,6 +1781,8 @@ main(int argc, char *argv[])
- 	RTE_LCORE_FOREACH_WORKER(lcore_id)
+@@ -1571,6 +1571,8 @@ main(int argc, char *argv[])
+ 	RTE_LCORE_FOREACH_SLAVE(lcore_id)
@@ -683 +664 @@
-index 54f81b334d..fe2b4e4803 100644
+index d0c30a9c6f..57f0adf50f 100644
@@ -686 +667 @@
-@@ -907,5 +907,8 @@ int main(int argc, char *argv[])
+@@ -1098,5 +1098,8 @@ int main(int argc, char *argv[])
@@ -696 +677 @@
-index 7ed38fedf2..dea7dcbd07 100644
+index 7973b57564..03fb238758 100644
@@ -699 +680 @@
-@@ -469,6 +469,9 @@ free_resource(void)
+@@ -455,6 +455,9 @@ free_resource(void)
@@ -723 +704 @@
-index 799d7b9bc3..7d5bf68554 100644
+index 2316aace5a..2f82b878fe 100644
@@ -726 +707 @@
-@@ -468,5 +468,8 @@ main(int argc, char **argv)
+@@ -469,5 +469,8 @@ main(int argc, char **argv)
@@ -736 +717 @@
-index 3cb890fa2b..a19f7db739 100644
+index b082bc8c1c..29e1214a56 100644
@@ -739 +720 @@
-@@ -659,5 +659,8 @@ main(int argc, char *argv[])
+@@ -662,5 +662,8 @@ main(int argc, char *argv[])
@@ -749 +730 @@
-index 1a74364638..ba992802e9 100644
+index 594c4f1959..5ad94cfd31 100644
@@ -752,2 +733,2 @@
-@@ -707,5 +707,8 @@ main(int argc, char *argv[])
- 	/* call on main too */
+@@ -710,5 +710,8 @@ main(int argc, char *argv[])
+ 	/* call on master too */

  parent reply	other threads:[~2021-05-17 16:15 UTC|newest]

Thread overview: 190+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-17 16:07 [dpdk-stable] patch 'vfio: do not merge contiguous areas' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'vfio: fix DMA mapping granularity for IOVA as VA' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'test/mem: fix page size for external memory' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'power: remove duplicated symbols from map file' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'vfio: fix API description' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'fbarray: fix log message on truncation error' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/failsafe: fix RSS hash offload reporting' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/failsafe: report minimum and maximum MTU' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/mlx5: fix metadata item validation for ingress flows' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'bus/fslmc: fix random portal hangs with qbman 5.0' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'bus/dpaa: fix statistics reading' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/dpaa2: fix getting link status' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'app/testpmd: remove unnecessary UDP tunnel check' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/af_xdp: fix error handling during Rx queue setup' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/pcap: fix format string' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix Rx queue count' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bonding: fix LACP system address check' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice: fix VLAN filter with PF' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/e1000: remove MTU setting limitation' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice/base: fix payload indicator on ptype' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice/base: cleanup filter list on error' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/i40evf: fix packet loss for X722' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/i40e: fix IPv4 fragment offload' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/mlx5: fix Rx segmented packets on mbuf starvation' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/octeontx2: fix VLAN filter' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'build: exclude meson files from examples installation' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'log/linux: make default output stderr' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net: fix comment in IPv6 header' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: remove unused macro' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix VNIC configuration' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix queues per VNIC' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix FW readiness check during recovery' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix device readiness check' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix HWRM and FW incompatibility handling' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix Rx and Tx timestamps' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice: check some functions return' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/mlx5: fix Rx metadata leftovers' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'eal: fix comment of OS-specific header files' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'buildtools: fix build with busybox' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'build: detect execinfo library on Linux' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'common/dpaax/caamflib: fix build with musl' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'bus/dpaa: fix 64-bit arch detection' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'bus/dpaa: fix build with musl' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/cxgbe: remove use of uint type' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'app/testpmd: fix build with musl' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'examples/bbdev: fix header include for " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'examples/packet_ordering: fix port configuration' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'test: fix autotest handling of skipped tests' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/ark: update packet director initial state' " Christian Ehrhardt
2021-05-17 16:07 ` [dpdk-stable] patch 'net/ark: refactor Rx buffer recovery' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'app/testpmd: fix NVGRE encap configuration' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix Tx timestamp init' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix PCI write check' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix RSS context cleanup' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix link state operations' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix Rx buffer posting' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix Tx length hint threshold' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix handling of null flow mask' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/qede: reduce log verbosity' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/qede: accept bigger RSS table' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/i40e: fix input set field mask' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/ice/base: fix memory allocation for MAC addresses' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/mlx5: support RSS expansion for IPv6 GRE' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix reporting undefined speed' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hinic: fix crash in secondary process' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'app/testpmd: fix Tx/Rx descriptor query error log' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/i40e: fix parsing packet type for NEON' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/i40e: announce request queue capability in PF' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/iavf: fix TSO max segment size' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/ixgbe: fix RSS RETA being reset after port start' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'vdpa/ifc: check PCI config read' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'examples/vhost: check memory table query' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix split ring potential buffer overflow' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix packed " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix batch dequeue " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'examples/vhost_crypto: remove unused short option' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'doc: fix sphinx rtd theme import in GHA' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'power: do not skip saving original P-state governor' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'mem: fix freeing segments in --huge-unlink mode' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'service: clean references to removed symbol' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'test: proceed if timer subsystem already initialized' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'app: fix exit messages' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix MTU config complexity' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: update HiSilicon copyright syntax' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/ena: fix releasing Tx ring mbufs' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/e1000: fix Rx error counter for bad length' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix configuring LRO' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix initialization of temporary header' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'ethdev: validate input in module EEPROM dump' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'ethdev: validate input in register info' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'ethdev: validate input in EEPROM " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix FLR miss detection' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix rollback after setting PVID failure' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix flow control exception' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix flow counter value' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix VF mailbox head field' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: support get device version when dump register' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: delete redundant blank line' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'test/event: fix timeout accuracy' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'app/eventdev: " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'event/octeontx2: fix device reconfigure for single slot' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'license: fix typos' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'devargs: fix memory leak on parsing failure' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'eal: add C++ include guard for reciprocal header' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'examples/l2fwd-crypto: skip masked devices' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'examples/l2fwd-crypto: fix packet length while decryption' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'crypto/qat: fix offset for out-of-place scatter-gather' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'test: fix TCP header initialization' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/e1000: fix max Rx packet size' " Christian Ehrhardt
2021-05-17 16:08 ` [dpdk-stable] patch 'net/ice: fix illegal access when removing MAC filter' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/mlx4: fix RSS action with null hash key' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/ixgbe: fix Rx errors statistics for UDP checksum' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'app/testpmd: fix bitmap of link speeds when force speed' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'ethdev: update flow item GTP QFI definition' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix VF handling LSC event in secondary process' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix flow control mode' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/i40e: fix lack of MAC type when set MAC address' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/iavf: " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'eventdev: fix case to initiate crypto adapter service' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'vfio: fix duplicated user mem map' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'examples/ptpclient: remove wrong comment' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'examples/l3fwd: fix LPM IPv6 subnets' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test/cmdline: fix inputs array' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test: check thread creation' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'common/dpaax: fix possible null pointer access' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test/bpf: fix error message' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test/power: add delay before checking CPU frequency' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test/power: round CPU frequency to check' " Christian Ehrhardt
2021-05-17 16:09 ` Christian Ehrhardt [this message]
2021-05-17 16:09 ` [dpdk-stable] patch 'examples/ethtool: remove unused parsing' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'doc: fix HiSilicon copyright syntax' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: remove unused macros' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix DCB mode check' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix VMDq " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix flow director lock' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/bonding: fix adding itself as its slave' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/bnxt: fix health check alarm cancellation' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: remove unused macro' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/ice: fix disabling promiscuous mode' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/e1000/base: fix timeout for shadow RAM write' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'doc: fix names of UIO drivers' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'stack: allow lock-free only on relevant architectures' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'config/ppc: reduce number of cores and NUMA nodes' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'eal/arm64: fix platform register bit' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'mbuf: check shared memory before dumping dynamic space' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test/mempool: fix object initializer' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'app/eventdev: fix overflow in lcore list parsing' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'eventdev: remove redundant thread name setting' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'eventdev: fix memory leakage on thread creation failure' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'bpf: fix JSLT validation' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'power: save original ACPI governor always' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'doc: fix multiport syntax in nfp guide' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/kni: check init result' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix mailbox error message' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix processing link status message on PF' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: remove unused mailbox macro and struct' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/bonding: fix leak on remove' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test/kni: fix a comment' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'test/kni: check init result' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'app/testpmd: fix max queue number for Tx offloads' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/tap: fix interrupt vector array size' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix typos on comments' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'app/testpmd: fix segment number check' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/bonding: fix socket ID " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/i40e: fix negative VEB index' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/i40e: remove redundant VSI check in Tx queue setup' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/ice: fix fast mbuf freeing' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/iavf: fix VF to PF command failure handling' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'net/e1000: fix flow error message object' " Christian Ehrhardt
2021-05-17 16:09 ` [dpdk-stable] patch 'vhost: fix queue initialization' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/bnxt: remove unnecessary forward declarations' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/bnxt: remove unused function parameters' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/bnxt: use prefix on global function' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/mlx5: remove drop queue function prototypes' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/mlx4: fix buffer leakage on device close' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/mlx5: fix probing device in legacy bonding mode' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/tap: check ioctl on restore' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/softnic: fix meter policies initialization' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: fix forward lcores number for DCB' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: fix DCB forwarding configuration' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: fix DCB re-configuration' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: verify DCB config during forward config' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/hns3: log time delta in decimal format' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/hns3: remove unused macros' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/iavf: fix primary MAC type when starting port' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/i40e: " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'net/hns3: remove unused VMDq code' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'ethdev: add missing buses in device iterator' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'test/distributor: fix worker notification in burst mode' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'test/distributor: fix burst flush on worker quit' " Christian Ehrhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210517161039.3132619-129-christian.ehrhardt@canonical.com \
    --to=christian.ehrhardt@canonical.com \
    --cc=stable@dpdk.org \
    --cc=tangchengchang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

patches for DPDK stable branches

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git