DPDK patches and discussions
 help / color / mirror / Atom feed
From: Narcisa Ana Maria Vasile <navasile@linux.microsoft.com>
To: dev@dpdk.org, thomas@monjalon.net, dmitry.kozliuk@gmail.com,
	khot@microsoft.com, navasile@microsoft.com,
	dmitrym@microsoft.com, roretzla@microsoft.com, talshn@nvidia.com,
	ocardona@microsoft.com
Cc: bruce.richardson@intel.com, david.marchand@redhat.com,
	pallavi.kadam@intel.com
Subject: [dpdk-dev] [PATCH v12 04/10] eal: implement functions for thread affinity management
Date: Mon,  2 Aug 2021 10:32:20 -0700	[thread overview]
Message-ID: <1627925546-29982-5-git-send-email-navasile@linux.microsoft.com> (raw)
In-Reply-To: <1627925546-29982-1-git-send-email-navasile@linux.microsoft.com>

From: Narcisa Vasile <navasile@microsoft.com>

Implement functions for getting/setting thread affinity.
Threads can be pinned to specific cores by setting their
affinity attribute.

Signed-off-by: Narcisa Vasile <navasile@microsoft.com>
Signed-off-by: Dmitry Malloy <dmitrym@microsoft.com>
---
 lib/eal/common/rte_thread.c   |  16 ++++
 lib/eal/include/rte_thread.h  |  36 +++++++
 lib/eal/version.map           |   2 +
 lib/eal/windows/eal_lcore.c   | 176 +++++++++++++++++++++++++---------
 lib/eal/windows/eal_windows.h |  10 ++
 lib/eal/windows/rte_thread.c  | 125 +++++++++++++++++++++++-
 6 files changed, 319 insertions(+), 46 deletions(-)

diff --git a/lib/eal/common/rte_thread.c b/lib/eal/common/rte_thread.c
index 27ad1c7eb0..73b7b3141c 100644
--- a/lib/eal/common/rte_thread.c
+++ b/lib/eal/common/rte_thread.c
@@ -34,6 +34,22 @@ rte_thread_equal(rte_thread_t t1, rte_thread_t t2)
 	return pthread_equal((pthread_t)t1.opaque_id, (pthread_t)t2.opaque_id);
 }
 
+int
+rte_thread_set_affinity_by_id(rte_thread_t thread_id,
+		const rte_cpuset_t *cpuset)
+{
+	return pthread_setaffinity_np((pthread_t)thread_id.opaque_id,
+		sizeof(*cpuset), cpuset);
+}
+
+int
+rte_thread_get_affinity_by_id(rte_thread_t thread_id,
+		rte_cpuset_t *cpuset)
+{
+	return pthread_getaffinity_np((pthread_t)thread_id.opaque_id,
+		sizeof(*cpuset), cpuset);
+}
+
 int
 rte_thread_attr_init(rte_thread_attr_t *attr)
 {
diff --git a/lib/eal/include/rte_thread.h b/lib/eal/include/rte_thread.h
index bf649c2fe6..ca4ade60e2 100644
--- a/lib/eal/include/rte_thread.h
+++ b/lib/eal/include/rte_thread.h
@@ -87,6 +87,42 @@ int rte_thread_equal(rte_thread_t t1, rte_thread_t t2);
 
 #ifdef RTE_HAS_CPUSET
 
+/**
+ * Set the affinity of thread 'thread_id' to the cpu set
+ * specified by 'cpuset'.
+ *
+ * @param thread_id
+ *    Id of the thread for which to set the affinity.
+ *
+ * @param cpuset
+ *   Pointer to CPU affinity to set.
+ *
+ * @return
+ *   On success, return 0.
+ *   On failure, return a positive errno-style error number.
+ */
+__rte_experimental
+int rte_thread_set_affinity_by_id(rte_thread_t thread_id,
+		const rte_cpuset_t *cpuset);
+
+/**
+ * Get the affinity of thread 'thread_id' and store it
+ * in 'cpuset'.
+ *
+ * @param thread_id
+ *    Id of the thread for which to get the affinity.
+ *
+ * @param cpuset
+ *   Pointer for storing the affinity value.
+ *
+ * @return
+ *   On success, return 0.
+ *   On failure, return a positive errno-style error number.
+ */
+__rte_experimental
+int rte_thread_get_affinity_by_id(rte_thread_t thread_id,
+		rte_cpuset_t *cpuset);
+
 /**
  * Initialize the attributes of a thread.
  * These attributes can be passed to the rte_thread_create() function
diff --git a/lib/eal/version.map b/lib/eal/version.map
index 9ffa5eb15e..7ed4cd779e 100644
--- a/lib/eal/version.map
+++ b/lib/eal/version.map
@@ -433,6 +433,8 @@ EXPERIMENTAL {
 	rte_thread_attr_get_affinity;
 	rte_thread_attr_set_affinity;
 	rte_thread_attr_set_priority;
+	rte_thread_get_affinity_by_id;
+	rte_thread_set_affinity_by_id;
 };
 
 INTERNAL {
diff --git a/lib/eal/windows/eal_lcore.c b/lib/eal/windows/eal_lcore.c
index 476c2d2bdf..295af50698 100644
--- a/lib/eal/windows/eal_lcore.c
+++ b/lib/eal/windows/eal_lcore.c
@@ -2,7 +2,6 @@
  * Copyright(c) 2019 Intel Corporation
  */
 
-#include <pthread.h>
 #include <stdbool.h>
 #include <stdint.h>
 
@@ -27,13 +26,15 @@ struct socket_map {
 };
 
 struct cpu_map {
-	unsigned int socket_count;
 	unsigned int lcore_count;
+	unsigned int socket_count;
+	unsigned int cpu_count;
 	struct lcore_map lcores[RTE_MAX_LCORE];
 	struct socket_map sockets[RTE_MAX_NUMA_NODES];
+	GROUP_AFFINITY cpus[CPU_SETSIZE];
 };
 
-static struct cpu_map cpu_map = { 0 };
+static struct cpu_map cpu_map;
 
 /* eal_create_cpu_map() is called before logging is initialized */
 static void
@@ -47,13 +48,118 @@ log_early(const char *format, ...)
 	va_end(va);
 }
 
+static int
+eal_query_group_affinity(void)
+{
+	SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX *infos = NULL;
+	unsigned int *cpu_count = &cpu_map.cpu_count;
+	DWORD infos_size = 0;
+	int ret = 0;
+	USHORT group_count;
+	KAFFINITY affinity;
+	USHORT group_no;
+	unsigned int i;
+
+	if (!GetLogicalProcessorInformationEx(RelationGroup, NULL,
+					      &infos_size)) {
+		DWORD error = GetLastError();
+		if (error != ERROR_INSUFFICIENT_BUFFER) {
+			log_early("Cannot get group information size, "
+				  "error %lu\n", error);
+			rte_errno = EINVAL;
+			ret = -1;
+			goto cleanup;
+		}
+	}
+
+	infos = malloc(infos_size);
+	if (infos == NULL) {
+		log_early("Cannot allocate memory for NUMA node information\n");
+		rte_errno = ENOMEM;
+		ret = -1;
+		goto cleanup;
+	}
+
+	if (!GetLogicalProcessorInformationEx(RelationGroup, infos,
+					      &infos_size)) {
+		log_early("Cannot get group information, error %lu\n",
+			  GetLastError());
+		rte_errno = EINVAL;
+		ret = -1;
+		goto cleanup;
+	}
+
+	*cpu_count = 0;
+	group_count = infos->Group.ActiveGroupCount;
+	for (group_no = 0; group_no < group_count; group_no++) {
+
+		affinity = infos->Group.GroupInfo[group_no].ActiveProcessorMask;
+
+		for (i = 0; i < EAL_PROCESSOR_GROUP_SIZE; i++) {
+			if ((affinity & ((KAFFINITY)1 << i)) == 0)
+				continue;
+			cpu_map.cpus[*cpu_count].Group = group_no;
+			cpu_map.cpus[*cpu_count].Mask = (KAFFINITY)1 << i;
+			(*cpu_count)++;
+		}
+	}
+
+cleanup:
+	free(infos);
+	return ret;
+}
+
+static bool
+eal_create_lcore_map(const SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX *info)
+{
+	const unsigned int node_id = info->NumaNode.NodeNumber;
+	const GROUP_AFFINITY *cores = &info->NumaNode.GroupMask;
+	struct lcore_map *lcore;
+	unsigned int socket_id;
+	unsigned int i;
+
+	/* NUMA node may be reported multiple times if it includes
+	 * cores from different processor groups, e. g. 80 cores
+	 * of a physical processor comprise one NUMA node, but two
+	 * processor groups, because group size is limited by 32/64.
+	 */
+	for (socket_id = 0; socket_id < cpu_map.socket_count; socket_id++) {
+		if (cpu_map.sockets[socket_id].node_id == node_id)
+			break;
+	}
+
+	if (socket_id == cpu_map.socket_count) {
+		if (socket_id == RTE_DIM(cpu_map.sockets))
+			return true;
+
+		cpu_map.sockets[socket_id].node_id = node_id;
+		cpu_map.socket_count++;
+	}
+
+	for (i = 0; i < EAL_PROCESSOR_GROUP_SIZE; i++) {
+		if ((cores->Mask & ((KAFFINITY)1 << i)) == 0)
+			continue;
+
+		if (cpu_map.lcore_count == RTE_DIM(cpu_map.lcores))
+			return true;
+
+		lcore = &cpu_map.lcores[cpu_map.lcore_count];
+		lcore->socket_id = socket_id;
+		lcore->core_id = cores->Group * EAL_PROCESSOR_GROUP_SIZE + i;
+		cpu_map.lcore_count++;
+	}
+	return false;
+}
+
 int
 eal_create_cpu_map(void)
 {
 	SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX *infos, *info;
 	DWORD infos_size;
 	bool full = false;
+	int ret = 0;
 
+	infos = NULL;
 	infos_size = 0;
 	if (!GetLogicalProcessorInformationEx(
 			RelationNumaNode, NULL, &infos_size)) {
@@ -78,57 +184,29 @@ eal_create_cpu_map(void)
 		log_early("Cannot get NUMA node information, error %lu\n",
 			GetLastError());
 		rte_errno = EINVAL;
-		return -1;
+		ret = -1;
+		goto exit;
 	}
 
 	info = infos;
 	while ((uint8_t *)info - (uint8_t *)infos < infos_size) {
-		unsigned int node_id = info->NumaNode.NodeNumber;
-		GROUP_AFFINITY *cores = &info->NumaNode.GroupMask;
-		struct lcore_map *lcore;
-		unsigned int i, socket_id;
-
-		/* NUMA node may be reported multiple times if it includes
-		 * cores from different processor groups, e. g. 80 cores
-		 * of a physical processor comprise one NUMA node, but two
-		 * processor groups, because group size is limited by 32/64.
-		 */
-		for (socket_id = 0; socket_id < cpu_map.socket_count;
-		    socket_id++) {
-			if (cpu_map.sockets[socket_id].node_id == node_id)
-				break;
-		}
-
-		if (socket_id == cpu_map.socket_count) {
-			if (socket_id == RTE_DIM(cpu_map.sockets)) {
-				full = true;
-				goto exit;
-			}
-
-			cpu_map.sockets[socket_id].node_id = node_id;
-			cpu_map.socket_count++;
-		}
-
-		for (i = 0; i < EAL_PROCESSOR_GROUP_SIZE; i++) {
-			if ((cores->Mask & ((KAFFINITY)1 << i)) == 0)
-				continue;
-
-			if (cpu_map.lcore_count == RTE_DIM(cpu_map.lcores)) {
-				full = true;
-				goto exit;
-			}
-
-			lcore = &cpu_map.lcores[cpu_map.lcore_count];
-			lcore->socket_id = socket_id;
-			lcore->core_id =
-				cores->Group * EAL_PROCESSOR_GROUP_SIZE + i;
-			cpu_map.lcore_count++;
+		if (eal_create_lcore_map(info)) {
+			full = true;
+			break;
 		}
 
 		info = (SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX *)(
 			(uint8_t *)info + info->Size);
 	}
 
+	if (eal_query_group_affinity()) {
+		/*
+		 * No need to set rte_errno here.
+		 * It is set by eal_query_group_affinity().
+		 */
+		ret = -1;
+		goto exit;
+	}
 exit:
 	if (full) {
 		/* Not a fatal error, but important for troubleshooting. */
@@ -138,7 +216,7 @@ eal_create_cpu_map(void)
 
 	free(infos);
 
-	return 0;
+	return ret;
 }
 
 int
@@ -164,3 +242,11 @@ eal_socket_numa_node(unsigned int socket_id)
 {
 	return cpu_map.sockets[socket_id].node_id;
 }
+
+PGROUP_AFFINITY
+eal_get_cpu_affinity(size_t cpu_index)
+{
+	RTE_VERIFY(cpu_index < CPU_SETSIZE);
+
+	return &cpu_map.cpus[cpu_index];
+}
diff --git a/lib/eal/windows/eal_windows.h b/lib/eal/windows/eal_windows.h
index 7cc811485d..c1f8699777 100644
--- a/lib/eal/windows/eal_windows.h
+++ b/lib/eal/windows/eal_windows.h
@@ -55,6 +55,16 @@ int eal_thread_create(pthread_t *thread);
  */
 unsigned int eal_socket_numa_node(unsigned int socket_id);
 
+/**
+ * Get pointer to the group affinity for the cpu.
+ *
+ * @param cpu_index
+ *  Index of the cpu, as it comes from rte_cpuset_t.
+ * @return
+ *  Pointer to the group affinity for the cpu.
+ */
+PGROUP_AFFINITY eal_get_cpu_affinity(size_t cpu_index);
+
 /**
  * Schedule code for execution in the interrupt thread.
  *
diff --git a/lib/eal/windows/rte_thread.c b/lib/eal/windows/rte_thread.c
index c1ecfbd6ae..0127119f49 100644
--- a/lib/eal/windows/rte_thread.c
+++ b/lib/eal/windows/rte_thread.c
@@ -7,7 +7,8 @@
 #include <rte_debug.h>
 #include <rte_errno.h>
 #include <rte_thread.h>
-#include <rte_windows.h>
+
+#include "eal_windows.h"
 
 struct eal_tls_key {
 	DWORD thread_index;
@@ -77,6 +78,128 @@ rte_thread_equal(rte_thread_t t1, rte_thread_t t2)
 	return t1.opaque_id == t2.opaque_id;
 }
 
+static int
+rte_convert_cpuset_to_affinity(const rte_cpuset_t *cpuset,
+		PGROUP_AFFINITY affinity)
+{
+	int ret = 0;
+	PGROUP_AFFINITY cpu_affinity = NULL;
+	unsigned int cpu_idx;
+
+	memset(affinity, 0, sizeof(GROUP_AFFINITY));
+	affinity->Group = (USHORT)-1;
+
+	/* Check that all cpus of the set belong to the same processor group and
+	 * accumulate thread affinity to be applied.
+	 */
+	for (cpu_idx = 0; cpu_idx < CPU_SETSIZE; cpu_idx++) {
+		if (!CPU_ISSET(cpu_idx, cpuset))
+			continue;
+
+		cpu_affinity = eal_get_cpu_affinity(cpu_idx);
+
+		if (affinity->Group == (USHORT)-1) {
+			affinity->Group = cpu_affinity->Group;
+		} else if (affinity->Group != cpu_affinity->Group) {
+			ret = EINVAL;
+			goto cleanup;
+		}
+
+		affinity->Mask |= cpu_affinity->Mask;
+	}
+
+	if (affinity->Mask == 0) {
+		ret = EINVAL;
+		goto cleanup;
+	}
+
+cleanup:
+	return ret;
+}
+
+int
+rte_thread_set_affinity_by_id(rte_thread_t thread_id,
+		const rte_cpuset_t *cpuset)
+{
+	int ret = 0;
+	GROUP_AFFINITY thread_affinity;
+	HANDLE thread_handle = NULL;
+
+	RTE_VERIFY(cpuset != NULL);
+
+	ret = rte_convert_cpuset_to_affinity(cpuset, &thread_affinity);
+	if (ret != 0) {
+		RTE_LOG(DEBUG, EAL, "Unable to convert cpuset to thread affinity\n");
+		goto cleanup;
+	}
+
+	thread_handle = OpenThread(THREAD_ALL_ACCESS, FALSE,
+		thread_id.opaque_id);
+	if (thread_handle == NULL) {
+		ret = thread_log_last_error("OpenThread()");
+		goto cleanup;
+	}
+
+	if (!SetThreadGroupAffinity(thread_handle, &thread_affinity, NULL)) {
+		ret = thread_log_last_error("SetThreadGroupAffinity()");
+		goto cleanup;
+	}
+
+cleanup:
+	if (thread_handle != NULL) {
+		CloseHandle(thread_handle);
+		thread_handle = NULL;
+	}
+
+	return ret;
+}
+
+int
+rte_thread_get_affinity_by_id(rte_thread_t thread_id,
+		rte_cpuset_t *cpuset)
+{
+	HANDLE thread_handle = NULL;
+	PGROUP_AFFINITY cpu_affinity;
+	GROUP_AFFINITY thread_affinity;
+	unsigned int cpu_idx;
+	int ret = 0;
+
+	RTE_VERIFY(cpuset != NULL);
+
+	thread_handle = OpenThread(THREAD_ALL_ACCESS, FALSE,
+		thread_id.opaque_id);
+	if (thread_handle == NULL) {
+		ret = thread_log_last_error("OpenThread()");
+		goto cleanup;
+	}
+
+	/* obtain previous thread affinity */
+	if (!GetThreadGroupAffinity(thread_handle, &thread_affinity)) {
+		ret = thread_log_last_error("GetThreadGroupAffinity()");
+		goto cleanup;
+	}
+
+	CPU_ZERO(cpuset);
+
+	/* Convert affinity to DPDK cpu set */
+	for (cpu_idx = 0; cpu_idx < CPU_SETSIZE; cpu_idx++) {
+
+		cpu_affinity = eal_get_cpu_affinity(cpu_idx);
+
+		if ((cpu_affinity->Group == thread_affinity.Group) &&
+		   ((cpu_affinity->Mask & thread_affinity.Mask) != 0)) {
+			CPU_SET(cpu_idx, cpuset);
+		}
+	}
+
+cleanup:
+	if (thread_handle != NULL) {
+		CloseHandle(thread_handle);
+		thread_handle = NULL;
+	}
+	return ret;
+}
+
 int
 rte_thread_attr_init(rte_thread_attr_t *attr)
 {
-- 
2.31.0.vfs.0.1


  parent reply	other threads:[~2021-08-02 17:32 UTC|newest]

Thread overview: 290+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-18  1:00 [dpdk-dev] [PATCH 0/3] eal: Add new API for threading Narcisa Ana Maria Vasile
2021-03-18  1:00 ` [dpdk-dev] [PATCH 1/3] Add EAL threads API Narcisa Ana Maria Vasile
2021-03-18 14:48   ` Tal Shnaiderman
2021-03-18 19:42     ` Narcisa Ana Maria Vasile
2021-03-18 20:04     ` Tyler Retzlaff
2021-03-18 15:48   ` David Marchand
2021-03-18 19:40     ` Narcisa Ana Maria Vasile
2021-03-23  0:20   ` [dpdk-dev] [PATCH v2 00/10] eal: Add new API for threading Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-03-23  2:54       ` Stephen Hemminger
2021-03-23 15:53         ` Tyler Retzlaff
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 03/10] windows/eal: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-03-23  0:20     ` [dpdk-dev] [PATCH v2 10/10] Enable the new EAL thread API Narcisa Ana Maria Vasile
2021-03-25  3:46     ` [dpdk-dev] [PATCH v3 00/10] eal: Add new API for threading Narcisa Ana Maria Vasile
2021-03-25  3:46       ` [dpdk-dev] [PATCH v3 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-03-25  3:46       ` [dpdk-dev] [PATCH v3 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-03-25  3:46       ` [dpdk-dev] [PATCH v3 03/10] windows/eal: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-03-25  3:47       ` [dpdk-dev] [PATCH v3 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-03-25  3:47       ` [dpdk-dev] [PATCH v3 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-03-25  3:47       ` [dpdk-dev] [PATCH v3 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-03-25  3:47       ` [dpdk-dev] [PATCH v3 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-03-25  3:47       ` [dpdk-dev] [PATCH v3 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-03-25  3:47       ` [dpdk-dev] [PATCH v3 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-03-25  3:47       ` [dpdk-dev] [PATCH v3 10/10] Enable the new EAL thread API Narcisa Ana Maria Vasile
2021-03-26 23:52         ` [dpdk-dev] [PATCH v4 00/10] eal: Add new API for threading Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 03/10] windows/eal: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-03-27 16:04             ` Stephen Hemminger
2021-03-29 22:40             ` [dpdk-dev] [PATCH v5 00/10] eal: Add new API for threading Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-04-03  1:38                 ` [dpdk-dev] [PATCH v6 00/10] eal: Add new API for threading Narcisa Ana Maria Vasile
2021-04-03  1:38                   ` [dpdk-dev] [PATCH v6 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-04-29  0:50                     ` Dmitry Kozlyuk
2021-04-29  7:44                       ` Thomas Monjalon
2021-04-29 12:05                         ` Kinsella, Ray
2021-04-29 16:00                           ` Tyler Retzlaff
2021-04-29 16:28                           ` Dmitry Kozlyuk
2021-04-30  6:37                             ` Narcisa Ana Maria Vasile
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-04-29  0:50                     ` Dmitry Kozlyuk
2021-04-29  7:48                       ` Thomas Monjalon
2021-04-29 15:52                         ` [dpdk-dev] [EXTERNAL] " Tyler Retzlaff
2021-04-30 23:00                           ` Dmitry Kozlyuk
2021-04-29 16:28                         ` [dpdk-dev] " Dmitry Kozlyuk
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 03/10] windows/eal: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-04-29  0:50                     ` Dmitry Kozlyuk
2021-04-30  2:39                       ` Narcisa Ana Maria Vasile
2021-04-30 23:05                         ` Dmitry Kozlyuk
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-05-02  0:41                     ` Dmitry Kozlyuk
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-04-29 20:44                     ` Dmitry Kozlyuk
2021-04-29 21:31                       ` [dpdk-dev] [EXTERNAL] " Dmitry Malloy
2021-04-30 17:22                         ` Dmitry Kozlyuk
2021-04-30 17:51                           ` Dmitry Kozlyuk
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-04-30 17:47                     ` Dmitry Kozlyuk
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-04-30 18:06                     ` Dmitry Kozlyuk
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-04-03  1:39                   ` [dpdk-dev] [PATCH v6 10/10] Enable the new EAL thread API Narcisa Ana Maria Vasile
2021-04-12  7:56                   ` [dpdk-dev] [PATCH v6 00/10] eal: Add new API for threading David Marchand
2021-04-16 20:30                     ` Narcisa Ana Maria Vasile
2021-06-01 20:55                   ` [dpdk-dev] [PATCH v7 00/10] eal: Add EAL " Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 03/10] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-06-01 20:55                     ` [dpdk-dev] [PATCH v7 10/10] Enable the new EAL thread API Narcisa Ana Maria Vasile
2021-06-02 15:50                       ` Tal Shnaiderman
2021-06-02 16:16                         ` Narcisa Ana Maria Vasile
2021-06-04 23:38                     ` [dpdk-dev] [PATCH v8 00/10] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 03/10] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-06-08 23:04                         ` Dmitry Kozlyuk
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-06-04 23:38                       ` [dpdk-dev] [PATCH v8 10/10] Enable the new EAL thread API Narcisa Ana Maria Vasile
2021-06-04 23:44                       ` [dpdk-dev] [PATCH v9 00/10] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 01/10] eal: add thread id and simple thread functions Narcisa Ana Maria Vasile
2021-06-08 23:03                           ` Dmitry Kozlyuk
2021-06-18 21:30                             ` Narcisa Ana Maria Vasile
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-06-08 23:03                           ` Dmitry Kozlyuk
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 03/10] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-06-08 23:03                           ` Dmitry Kozlyuk
2021-06-18 21:44                             ` Narcisa Ana Maria Vasile
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-06-08 23:04                           ` Dmitry Kozlyuk
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-06-08 23:04                           ` Dmitry Kozlyuk
2021-06-18 21:41                             ` Narcisa Ana Maria Vasile
2021-06-18 22:48                               ` Dmitry Kozlyuk
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-06-08 23:04                           ` Dmitry Kozlyuk
2021-06-09 22:37                             ` Dmitry Kozlyuk
2021-06-12  2:39                               ` Narcisa Ana Maria Vasile
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-06-04 23:44                         ` [dpdk-dev] [PATCH v9 10/10] Enable the new EAL thread API Narcisa Ana Maria Vasile
2021-06-08  5:50                           ` Narcisa Ana Maria Vasile
2021-06-08  7:45                             ` David Marchand
2021-06-18 21:53                               ` Narcisa Ana Maria Vasile
2021-06-08 23:08                             ` Dmitry Kozlyuk
2021-06-18 21:50                               ` Narcisa Ana Maria Vasile
2021-06-18 21:26                         ` [dpdk-dev] [PATCH v10 0/9] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 1/9] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 2/9] eal: add thread attributes Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 3/9] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 4/9] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 5/9] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 6/9] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 7/9] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 8/9] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-06-18 21:26                           ` [dpdk-dev] [PATCH v10 9/9] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-07-30 22:31                           ` [dpdk-dev] [PATCH v11 00/10] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 01/10] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 03/10] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-07-30 22:31                             ` [dpdk-dev] [PATCH v11 10/10] Add unit tests for thread API Narcisa Ana Maria Vasile
2021-08-02 17:32                             ` [dpdk-dev] [PATCH v12 00/10] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 01/10] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-08-02 21:08                                 ` Narcisa Ana Maria Vasile
2021-08-02 21:37                                   ` Dmitry Kozlyuk
2021-08-03 15:11                                     ` [dpdk-dev] [dpdk-ci] " Owen Hilyard
2021-08-03 15:38                                       ` Dmitry Kozlyuk
2021-08-03 15:57                                         ` Owen Hilyard
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 03/10] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` Narcisa Ana Maria Vasile [this message]
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-08-02 17:32                               ` [dpdk-dev] [PATCH v12 10/10] Add unit tests for thread API Narcisa Ana Maria Vasile
2021-08-03 19:01                               ` [dpdk-dev] [PATCH v13 00/10] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 01/10] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 03/10] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-08-15 19:56                                   ` Dmitry Kozlyuk
2021-08-18 21:28                                   ` Stephen Hemminger
2021-08-19  9:06                                     ` Bruce Richardson
2021-08-19 21:30                                       ` Narcisa Ana Maria Vasile
2021-08-19 21:33                                         ` Stephen Hemminger
2021-08-03 19:01                                 ` [dpdk-dev] [PATCH v13 10/10] Add unit tests for thread API Narcisa Ana Maria Vasile
2021-08-19 21:31                                 ` [dpdk-dev] [PATCH v14 0/9] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 1/9] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 2/9] eal: add thread attributes Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 3/9] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 4/9] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 5/9] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 6/9] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 7/9] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 8/9] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-08-19 21:31                                   ` [dpdk-dev] [PATCH v14 9/9] Add unit tests for thread API Narcisa Ana Maria Vasile
2021-08-20 16:10                                     ` Narcisa Ana Maria Vasile
2021-08-20 16:54                                       ` Dmitry Kozlyuk
2021-08-23 20:25                                     ` Dmitry Kozlyuk
2021-10-08 22:40                                   ` [dpdk-dev] [PATCH v15 0/9] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 1/9] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 2/9] eal: add thread attributes Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 3/9] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 4/9] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 5/9] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 6/9] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 7/9] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 8/9] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-10-08 22:40                                     ` [dpdk-dev] [PATCH v15 9/9] Add unit tests for thread API Narcisa Ana Maria Vasile
2021-10-09  7:41                                     ` [dpdk-dev] [PATCH v16 0/9] eal: Add EAL API for threading Narcisa Ana Maria Vasile
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 1/9] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-10-12 16:09                                         ` Thomas Monjalon
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 2/9] eal: add thread attributes Narcisa Ana Maria Vasile
2021-10-12 16:12                                         ` Thomas Monjalon
2021-11-09  1:59                                           ` Narcisa Ana Maria Vasile
2021-11-09  8:27                                             ` Thomas Monjalon
2021-11-10  3:04                                               ` Narcisa Ana Maria Vasile
2021-11-10  3:59                                                 ` Stephen Hemminger
2021-11-10  4:20                                                   ` [EXTERNAL] " Tyler Retzlaff
2021-11-10  6:29                                                     ` [dpdk-dev] [EXTERNAL] " Stephen Hemminger
2021-11-10  9:21                                                       ` Bruce Richardson
2021-11-10 16:52                                                         ` [EXTERNAL] Re: [dpdk-dev] " Tyler Retzlaff
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 3/9] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-10-12 16:16                                         ` Thomas Monjalon
2021-11-09  2:02                                           ` Narcisa Ana Maria Vasile
2021-11-09  8:21                                             ` Thomas Monjalon
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 4/9] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-10-12 16:20                                         ` Thomas Monjalon
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 5/9] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 6/9] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 7/9] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-10-12 16:28                                         ` Thomas Monjalon
2021-11-09  2:04                                           ` Narcisa Ana Maria Vasile
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 8/9] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-10-12 16:32                                         ` Thomas Monjalon
2021-11-09  2:07                                           ` Narcisa Ana Maria Vasile
2021-11-10  3:13                                             ` Narcisa Ana Maria Vasile
2021-10-09  7:41                                       ` [dpdk-dev] [PATCH v16 9/9] Add unit tests for thread API Narcisa Ana Maria Vasile
2021-10-12 16:33                                         ` Thomas Monjalon
2021-11-09  2:10                                           ` Narcisa Ana Maria Vasile
2021-11-09  8:32                                             ` Thomas Monjalon
2021-11-10  3:07                                               ` Narcisa Ana Maria Vasile
2021-10-12 16:07                                       ` [dpdk-dev] [PATCH v16 0/9] eal: Add EAL API for threading Thomas Monjalon
2021-11-09  1:55                                         ` Narcisa Ana Maria Vasile
2021-11-10  3:01                                       ` [dpdk-dev] [PATCH v17 00/13] " Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 01/13] eal: add basic threading functions Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 02/13] eal: add thread attributes Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 03/13] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 04/13] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 05/13] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 06/13] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 07/13] app/test: add unit tests for rte_thread_self Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 08/13] app/test: add unit tests for thread attributes Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 09/13] app/test: add unit tests for thread lifetime management Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 10/13] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 11/13] app/test: add unit tests for barrier Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 12/13] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-11-10  3:01                                         ` [dpdk-dev] [PATCH v17 13/13] app/test: add unit tests for mutex Narcisa Ana Maria Vasile
2021-11-10  9:31                                         ` [dpdk-dev] [PATCH v17 00/13] eal: Add EAL API for threading Thomas Monjalon
2021-11-11  1:33                                         ` [PATCH v18 0/8] " Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 1/8] eal: add basic threading functions Narcisa Ana Maria Vasile
2022-04-12 18:00                                             ` Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 2/8] eal: add thread attributes Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 3/8] eal/windows: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 4/8] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 5/8] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 6/8] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 7/8] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-11-11  1:33                                           ` [PATCH v18 8/8] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-12-13 20:27                                             ` Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 02/10] eal: add thread attributes Narcisa Ana Maria Vasile
2021-03-30 21:14                 ` Stephen Hemminger
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 03/10] windows/eal: translate Windows errors to errno-style errors Narcisa Ana Maria Vasile
2021-03-31 13:56                 ` Tal Shnaiderman
2021-03-31 21:19                   ` Nick Connolly
2021-04-01 12:29                     ` Tal Shnaiderman
2021-04-01 19:07                   ` Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 05/10] eal: implement thread priority management functions Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 06/10] eal: add thread lifetime management Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 07/10] eal: implement functions for mutex management Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 08/10] eal: implement functions for thread barrier management Narcisa Ana Maria Vasile
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 09/10] eal: add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-03-30 21:11                 ` Stephen Hemminger
2021-03-31  8:21                   ` Tal Shnaiderman
2021-03-31 21:12                   ` Dmitry Kozlyuk
2021-03-31 22:09                     ` Stephen Hemminger
2021-03-31 22:42                       ` [dpdk-dev] [EXTERNAL] " Dmitry Malloy
2021-03-29 22:40               ` [dpdk-dev] [PATCH v5 10/10] Enable the new EAL thread API Narcisa Ana Maria Vasile
2021-03-26 23:52           ` [dpdk-dev] [PATCH v4 " Narcisa Ana Maria Vasile
2021-03-18  1:00 ` [dpdk-dev] [PATCH 2/3] Add EAL argument for setting thread priority Narcisa Ana Maria Vasile
2021-03-18  1:00 ` [dpdk-dev] [PATCH 3/3] Enable the new EAL thread API and rename Narcisa Ana Maria Vasile

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=1627925546-29982-5-git-send-email-navasile@linux.microsoft.com \
    --to=navasile@linux.microsoft.com \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=dmitry.kozliuk@gmail.com \
    --cc=dmitrym@microsoft.com \
    --cc=khot@microsoft.com \
    --cc=navasile@microsoft.com \
    --cc=ocardona@microsoft.com \
    --cc=pallavi.kadam@intel.com \
    --cc=roretzla@microsoft.com \
    --cc=talshn@nvidia.com \
    --cc=thomas@monjalon.net \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).