From: Thomas Monjalon <thomas@monjalon.net>
To: dev@dpdk.org
Cc: Tyler Retzlaff <roretzla@linux.microsoft.com>,
David Marchand <david.marchand@redhat.com>,
Ferruh Yigit <ferruh.yigit@amd.com>
Subject: [PATCH 01/11] devtools: warn when adding some pthread calls
Date: Wed, 6 Sep 2023 18:12:18 +0200 [thread overview]
Message-ID: <20230906162226.1618088-2-thomas@monjalon.net> (raw)
In-Reply-To: <20230906162226.1618088-1-thomas@monjalon.net>
All pthread functions below have an equivalent in rte_thread API:
- pthread_create
- pthread_join
- pthread_detach
- pthread_setname_np
- pthread_set_name_np
- pthread_setaffinity_np
- pthread_attr_setinheritsched
- pthread_attr_setschedpolicy
Usage of these functions will be raised to encourage rte_thread adoption.
The pthread functions for locks and cancel are still allowed.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
devtools/checkpatches.sh | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/devtools/checkpatches.sh b/devtools/checkpatches.sh
index 55fabc5458..131ffbcebe 100755
--- a/devtools/checkpatches.sh
+++ b/devtools/checkpatches.sh
@@ -119,6 +119,14 @@ check_forbidden_additions() { # <patch>
-f $(dirname $(readlink -f $0))/check-forbidden-tokens.awk \
"$1" || res=1
+ # refrain from using some pthread functions
+ awk -v FOLDERS="lib drivers app examples" \
+ -v EXPRESSIONS="pthread_(create|join|detach|set((|_)name_np|affinity_np)|attr_set(inheritsched|schedpolicy))\\\(" \
+ -v RET_ON_FAIL=1 \
+ -v MESSAGE='Using pthread functions, prefer rte_thread' \
+ -f $(dirname $(readlink -f $0))/check-forbidden-tokens.awk \
+ "$1" || res=1
+
# forbid use of __reserved which is a reserved keyword in Windows system headers
awk -v FOLDERS="lib drivers app examples" \
-v EXPRESSIONS='\\<__reserved\\>' \
--
2.42.0
next prev parent reply other threads:[~2023-09-06 16:22 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-06 16:12 [PATCH 00/11] rework thread management Thomas Monjalon
2023-09-06 16:12 ` Thomas Monjalon [this message]
2023-09-07 8:20 ` [PATCH 01/11] devtools: warn when adding some pthread calls David Marchand
2023-09-06 16:12 ` [PATCH 02/11] eal: rename thread name length definition Thomas Monjalon
2023-09-08 4:00 ` Tyler Retzlaff
2023-09-06 16:12 ` [PATCH 03/11] eal: remove attributes from control thread creation Thomas Monjalon
2023-09-08 4:02 ` Tyler Retzlaff
2023-09-06 16:12 ` [PATCH 04/11] eal: promote thread API as stable Thomas Monjalon
2023-09-08 4:04 ` Tyler Retzlaff
2023-09-06 16:12 ` [PATCH 05/11] eal: force prefix for internal threads Thomas Monjalon
2023-09-07 8:28 ` David Marchand
2023-09-07 8:50 ` Morten Brørup
2023-09-07 8:53 ` David Marchand
2023-09-07 8:55 ` David Marchand
2023-09-07 11:10 ` Morten Brørup
2023-09-11 16:26 ` Thomas Monjalon
2023-09-11 21:32 ` Morten Brørup
2023-09-06 16:12 ` [PATCH 06/11] lib: convert to internal control threads Thomas Monjalon
2023-09-06 16:12 ` [PATCH 07/11] drivers: " Thomas Monjalon
2023-09-11 13:35 ` Andrew Rybchenko
2023-09-06 16:12 ` [PATCH 08/11] examples: convert to normal " Thomas Monjalon
2023-09-08 4:10 ` Tyler Retzlaff
2023-09-06 16:12 ` [PATCH 09/11] test: convert threads creation Thomas Monjalon
2023-09-08 4:12 ` Tyler Retzlaff
2023-09-06 16:12 ` [PATCH 10/11] eal: remove deprecated thread functions Thomas Monjalon
2023-09-08 4:22 ` Tyler Retzlaff
2023-09-11 16:13 ` Thomas Monjalon
2023-09-12 0:49 ` Tyler Retzlaff
2023-09-06 16:12 ` [PATCH 11/11] lib: remove pthread.h from includes Thomas Monjalon
2023-09-08 4:25 ` Tyler Retzlaff
2023-09-08 4:49 ` Ajit Khaparde
2023-09-10 2:55 ` Xu, Rosen
2023-09-07 8:30 ` [PATCH 00/11] rework thread management Morten Brørup
2023-09-08 4:26 ` Tyler Retzlaff
2023-09-13 10:34 ` [PATCH v2 " Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 01/11] devtools: warn when adding some pthread calls Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 02/11] eal: rename thread name length definition Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 03/11] eal: remove attributes from control thread creation Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 04/11] eal: promote thread API as stable Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 05/11] eal: force prefix for internal threads Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 06/11] lib: convert to internal control threads Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 07/11] drivers: " Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 08/11] examples: convert to normal " Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 09/11] test: convert threads creation Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 10/11] eal: remove deprecated thread functions Thomas Monjalon
2023-09-13 10:34 ` [PATCH v2 11/11] lib: remove pthread.h from includes Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 00/11] rework thread management Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 01/11] devtools: warn when adding some pthread calls Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 02/11] eal: rename thread name length definition Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 03/11] eal: remove attributes from control thread creation Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 04/11] eal: promote thread API as stable Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 05/11] eal: force prefix for internal threads Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 06/11] lib: convert to internal control threads Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 07/11] drivers: " Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 08/11] examples: convert to normal " Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 09/11] test: convert threads creation Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 10/11] eal: remove deprecated thread functions Thomas Monjalon
2023-09-13 11:28 ` [PATCH v3 11/11] lib: remove pthread.h from includes Thomas Monjalon
2023-09-17 12:26 ` [PATCH v3 00/11] rework thread management Konstantin Ananyev
2023-09-22 13:46 ` David Marchand
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=20230906162226.1618088-2-thomas@monjalon.net \
--to=thomas@monjalon.net \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@amd.com \
--cc=roretzla@linux.microsoft.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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).