Thread (133 messages) 133 messages, 11 authors, 2022-12-16

Re: [dpdk-dev] [PATCH v4 7/9] eal: add lcore init callbacks

From: Olivier Matz <hidden>
Date: 2020-06-30 10:15:13

On Fri, Jun 26, 2020 at 04:47:34PM +0200, David Marchand wrote:
DPDK components and applications can have their say when a new lcore is
initialized. For this, they can register a callback for initializing and
releasing their private data.

Signed-off-by: David Marchand <redacted>
2 more minor comments.
quoted hunk ↗ jump to hunk
diff --git a/app/test/test_lcores.c b/app/test/test_lcores.c
index 864bcbade7..e36dceedf9 100644
--- a/app/test/test_lcores.c
+++ b/app/test/test_lcores.c
@@ -5,6 +5,7 @@
 #include <pthread.h>
 #include <string.h>
 
+#include <rte_common.h>
 #include <rte_lcore.h>
 
 #include "test.h"
@@ -113,6 +114,229 @@ test_non_eal_lcores(unsigned int eal_threads_count)
 	return ret;
 }
 
+struct limit_lcore_context {
+	unsigned int init;
+	unsigned int max;
+	unsigned int uninit;
+};
+static int
+limit_lcores_init(unsigned int lcore_id __rte_unused, void *arg)
+{
+	struct limit_lcore_context *l = arg;
+
+	l->init++;
+	if (l->init > l->max)
+		return -1;
+	return 0;
+}
+static void
+limit_lcores_uninit(unsigned int lcore_id __rte_unused, void *arg)
+{
+	struct limit_lcore_context *l = arg;
+
+	l->uninit++;
+}
missing empty lines

[...]
+static int
+test_non_eal_lcores_callback(unsigned int eal_threads_count)
+{
+	struct thread_context thread_contexts[2];
+	unsigned int non_eal_threads_count;
+	struct limit_lcore_context l[2];
+	unsigned int registered_count;
+	struct thread_context *t;
+	void *handle[2];
+	unsigned int i;
+	int ret;
+
+	memset(l, 0, sizeof(l));
+	handle[0] = handle[1] = NULL;
+	non_eal_threads_count = 0;
+	registered_count = 0;
+
what about initializing it at declaration?

	struct thread_context thread_contexts[2] = {};
	struct limit_lcore_context l[2] = {};
	void *handle[2] = {};
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help