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 00/10] eal: Add EAL API for threading
Date: Mon,  2 Aug 2021 10:32:16 -0700	[thread overview]
Message-ID: <1627925546-29982-1-git-send-email-navasile@linux.microsoft.com> (raw)
In-Reply-To: <1627684312-28630-1-git-send-email-navasile@linux.microsoft.com>

From: Narcisa Vasile <navasile@microsoft.com>

EAL thread API

**Problem Statement**
DPDK currently uses the pthread interface to create and manage threads.
Windows does not support the POSIX thread programming model,
so it currently
relies on a header file that hides the Windows calls under
pthread matched interfaces. Given that EAL should isolate the environment
specifics from the applications and libraries and mediate
all the communication with the operating systems, a new EAL interface
is needed for thread management.

**Goals**
* Introduce a generic EAL API for threading support that will remove
  the current Windows pthread.h shim.
* Replace references to pthread_* across the DPDK codebase with the new
  RTE_THREAD_* API.
* Allow users to choose between using the RTE_THREAD_* API or a
  3rd party thread library through a configuration option.

**Design plan**
New API main files:
* rte_thread.h (librte_eal/include)
* rte_thread.c (librte_eal/windows)
* rte_thread.c (librte_eal/common)

**A schematic example of the design**
--------------------------------------------------
lib/librte_eal/include/rte_thread.h
int rte_thread_create();

lib/librte_eal/common/rte_thread.c
int rte_thread_create() 
{
	return pthread_create();
}

lib/librte_eal/windows/rte_thread.c
int rte_thread_create() 
{
	return CreateThread();
}
-----------------------------------------------------

**Thread attributes**

When or after a thread is created, specific characteristics of the thread
can be adjusted. Given that the thread characteristics that are of interest
for DPDK applications are affinity and priority, the following structure
that represents thread attributes has been defined:

typedef struct
{
	enum rte_thread_priority priority;
	rte_cpuset_t cpuset;
} rte_thread_attr_t;

The *rte_thread_create()* function can optionally receive
an rte_thread_attr_t
object that will cause the thread to be created with the
affinity and priority
described by the attributes object. If no rte_thread_attr_t is passed
(parameter is NULL), the default affinity and priority are used.
An rte_thread_attr_t object can also be set to the default values
by calling *rte_thread_attr_init()*.

*Priority* is represented through an enum that currently advertises
two values for priority:
	- RTE_THREAD_PRIORITY_NORMAL
	- RTE_THREAD_PRIORITY_REALTIME_CRITICAL
The enum can be extended to allow for multiple priority levels.
rte_thread_set_priority      - sets the priority of a thread
rte_thread_attr_set_priority - updates an rte_thread_attr_t object
                               with a new value for priority

The user can choose thread priority through an EAL parameter,
when starting an application.  If EAL parameter is not used,
the per-platform default value for thread priority is used.
Otherwise administrator has an option to set one of available options:
 --thread-prio normal
 --thread-prio realtime

Example:
./dpdk-l2fwd -l 0-3 -n 4 –thread-prio normal -- -q 8 -p ffff

*Affinity* is described by the already known “rte_cpuset_t” type.
rte_thread_attr_set/get_affinity - sets/gets the affinity field in a
                                   rte_thread_attr_t object
rte_thread_set/get_affinity      – sets/gets the affinity of a thread

**Errors**
A translation function that maps Windows error codes to errno-style
error codes is provided. 

**Future work**
The long term plan is for EAL to provide full threading support:
* Add support for conditional variables
* Add support for pthread_mutex_trylock
* Additional functionality offered by pthread_*
  (such as pthread_setname_np, etc.)

v12:
 - Fix freebsd warning about initializer in unit tests

v11:
 - Add unit tests for thread API
 - Rebase

v10:
 - Remove patch no. 10. It will be broken down in subpatches 
   and sent as a different patchset that depends on this one.
   This is done due to the ABI breaks that would be caused by patch 10.
 - Replace unix/rte_thread.c with common/rte_thread.c
 - Remove initializations that may prevent compiler from issuing useful
   warnings.
 - Remove rte_thread_types.h and rte_windows_thread_types.h
 - Remove unneeded priority macros (EAL_THREAD_PRIORITY*)
 - Remove functions that retrieves thread handle from process handle
 - Remove rte_thread_cancel() until same behavior is obtained on
   all platforms.
 - Fix rte_thread_detach() function description,
   return value and remove empty line.
 - Reimplement mutex functions. Add compatible representation for mutex
   identifier. Add macro to replace static mutex initialization instances.
 - Fix commit messages (lines too long, remove unicode symbols)

v9:
- Sign patches

v8:
- Rebase
- Add rte_thread_detach() API
- Set default priority, when user did not specify a value

v7:
Based on DmitryK's review:
- Change thread id representation
- Change mutex id representation
- Implement static mutex inititalizer for Windows
- Change barrier identifier representation
- Improve commit messages
- Add missing doxygen comments
- Split error translation function
- Improve name for affinity function
- Remove cpuset_size parameter
- Fix eal_create_cpu_map function
- Map EAL priority values to OS specific values
- Add thread wrapper for start routine
- Do not export rte_thread_cancel() on Windows
- Cleanup, fix comments, fix typos.

v6:
- improve error-translation function
- call the error translation function in rte_thread_value_get()

v5:
- update cover letter with more details on the priority argument

v4:
- fix function description
- rebase

v3:
- rebase

v2:
- revert changes that break ABI 
- break up changes into smaller patches
- fix coding style issues
- fix issues with errors
- fix parameter type in examples/kni.c


Narcisa Vasile (10):
  eal: add basic threading functions
  eal: add thread attributes
  eal/windows: translate Windows errors to errno-style errors
  eal: implement functions for thread affinity management
  eal: implement thread priority management functions
  eal: add thread lifetime management
  eal: implement functions for mutex management
  eal: implement functions for thread barrier management
  eal: add EAL argument for setting thread priority
  Add unit tests for thread API

 app/test/meson.build                |   2 +
 app/test/test_threads.c             | 419 ++++++++++++++++++++
 lib/eal/common/eal_common_options.c |  28 +-
 lib/eal/common/eal_internal_cfg.h   |   2 +
 lib/eal/common/eal_options.h        |   2 +
 lib/eal/common/meson.build          |   1 +
 lib/eal/common/rte_thread.c         | 445 +++++++++++++++++++++
 lib/eal/include/rte_thread.h        | 406 ++++++++++++++++++-
 lib/eal/unix/meson.build            |   1 -
 lib/eal/unix/rte_thread.c           |  92 -----
 lib/eal/version.map                 |  20 +
 lib/eal/windows/eal_lcore.c         | 176 ++++++---
 lib/eal/windows/eal_windows.h       |  10 +
 lib/eal/windows/include/sched.h     |   2 +-
 lib/eal/windows/rte_thread.c        | 588 ++++++++++++++++++++++++++--
 15 files changed, 2020 insertions(+), 174 deletions(-)
 create mode 100644 app/test/test_threads.c
 create mode 100644 lib/eal/common/rte_thread.c
 delete mode 100644 lib/eal/unix/rte_thread.c

-- 
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 " 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                             ` Narcisa Ana Maria Vasile [this message]
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                               ` [dpdk-dev] [PATCH v12 04/10] eal: implement functions for thread affinity management Narcisa Ana Maria Vasile
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-1-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).