DPDK patches and discussions
 help / color / mirror / Atom feed
From: Tyler Retzlaff <roretzla@linux.microsoft.com>
To: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Cc: dev@dpdk.org, thomas@monjalon.net, anatoly.burakov@intel.com,
	Narcisa Vasile <navasile@microsoft.com>
Subject: Re: [PATCH v2 2/6] eal: add thread lifetime management
Date: Tue, 21 Jun 2022 09:24:34 -0700	[thread overview]
Message-ID: <20220621162434.GB18214@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> (raw)
In-Reply-To: <20220618155908.70e822af@sovereign>

On Sat, Jun 18, 2022 at 03:59:08PM +0300, Dmitry Kozlyuk wrote:
> 2022-06-14 16:47 (UTC-0700), Tyler Retzlaff:
> 
> > +int
> > +rte_thread_create(rte_thread_t *thread_id,
> > +		const rte_thread_attr_t *thread_attr,
> > +		rte_thread_func thread_func, void *args)
> > +{
> > [...]
> > +		if (thread_attr->priority ==
> > +				RTE_THREAD_PRIORITY_REALTIME_CRITICAL) {
> > +			ret = ENOTSUP;
> > +			goto cleanup;
> > +		}
> > +		ret = thread_map_priority_to_os_value(thread_attr->priority,
> > +				&param.sched_priority, &policy);
> > +		if (ret != 0)
> > +			goto cleanup;
> 
> thread_map_priority_to_os_value() already checks for unsupported values,
> why not let it do this particular check?

okay, so i looked at this more closely.

* thread_map_priority_to_os_value() just does mapping and
  RTE_THREAD_PRIORITY_REALTIME_CRITICAL is a valid mapping so it does not
  fail. by design it does one thing and one thing only perform the value
  mapping. admittedly it does not map every valid value right now, maybe it
  should?

  for consistency in the behavior of the function i'd suggest we don't
  make it have special cases in case we later decide to expand for
  additional valid mappings.

* rte_thread_set_priority() does fail with ENOTSUP on non-windows if
  provided RTE_THREAD_PRIORITY_REALTIME_CRITICAL however it cannot be
  used at this point since the thread has not been created.

if no further follow up on this i'm going to leave it as is.

thanks

  parent reply	other threads:[~2022-06-21 16:24 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-09 13:58 [PATCH 0/6] add thread lifetime and attributes API Tyler Retzlaff
2022-06-09 13:58 ` [PATCH 1/6] eal: add thread attributes Tyler Retzlaff
2022-06-09 13:58 ` [PATCH 2/6] eal: add thread lifetime management Tyler Retzlaff
2022-06-09 13:58 ` [PATCH 3/6] eal: add basic rte thread ID equal API Tyler Retzlaff
2022-06-09 22:24   ` Konstantin Ananyev
2022-06-10 22:48     ` Tyler Retzlaff
2022-06-11 12:25       ` Konstantin Ananyev
2022-06-13 13:39         ` Tyler Retzlaff
2022-06-10  0:40   ` fengchengwen
2022-06-09 13:58 ` [PATCH 4/6] test/threads: add tests for thread lifetime API Tyler Retzlaff
2022-06-09 13:58 ` [PATCH 5/6] test/threads: add tests for thread attributes API Tyler Retzlaff
2022-06-09 13:58 ` [PATCH 6/6] test/threads: remove unit test use of pthread Tyler Retzlaff
2022-06-14 23:47 ` [PATCH v2 0/6] add thread lifetime and attributes API Tyler Retzlaff
2022-06-14 23:47   ` [PATCH v2 1/6] eal: add thread attributes Tyler Retzlaff
2022-06-14 23:47   ` [PATCH v2 2/6] eal: add thread lifetime management Tyler Retzlaff
2022-06-18 12:59     ` Dmitry Kozlyuk
2022-06-20 17:39       ` Tyler Retzlaff
2022-06-21 16:24       ` Tyler Retzlaff [this message]
2022-06-21 18:51       ` Tyler Retzlaff
2022-06-21 19:44         ` Dmitry Kozlyuk
2022-06-21 21:28           ` Tyler Retzlaff
2022-06-21 22:24             ` Dmitry Kozlyuk
2022-06-22 18:21               ` Tyler Retzlaff
2022-06-14 23:47   ` [PATCH v2 3/6] eal: add basic rte thread ID equal API Tyler Retzlaff
2022-06-20  8:34     ` Konstantin Ananyev
2022-06-14 23:47   ` [PATCH v2 4/6] test/threads: add tests for thread lifetime API Tyler Retzlaff
2022-06-14 23:47   ` [PATCH v2 5/6] test/threads: add tests for thread attributes API Tyler Retzlaff
2022-06-14 23:47   ` [PATCH v2 6/6] test/threads: remove unit test use of pthread Tyler Retzlaff
2022-06-22 20:26 ` [PATCH v3 0/6] add thread lifetime and attributes API Tyler Retzlaff
2022-06-22 20:26   ` [PATCH v3 1/6] eal: add thread attributes Tyler Retzlaff
2022-06-22 20:26   ` [PATCH v3 2/6] eal: add thread lifetime management Tyler Retzlaff
2022-06-22 20:26   ` [PATCH v3 3/6] eal: add basic rte thread ID equal API Tyler Retzlaff
2022-06-22 20:26   ` [PATCH v3 4/6] test/threads: add tests for thread lifetime API Tyler Retzlaff
2022-06-22 20:26   ` [PATCH v3 5/6] test/threads: add tests for thread attributes API Tyler Retzlaff
2022-06-22 20:26   ` [PATCH v3 6/6] test/threads: remove unit test use of pthread Tyler Retzlaff
2022-06-27 16:56 ` [PATCH v4 0/6] add thread lifetime and attributes API Tyler Retzlaff
2022-06-27 16:56   ` [PATCH v4 1/6] eal: add thread attributes Tyler Retzlaff
2022-06-27 16:56   ` [PATCH v4 2/6] eal: add thread lifetime management Tyler Retzlaff
2022-06-27 16:56   ` [PATCH v4 3/6] eal: add basic rte thread ID equal API Tyler Retzlaff
2022-06-27 16:56   ` [PATCH v4 4/6] test/threads: add tests for thread lifetime API Tyler Retzlaff
2022-06-27 16:56   ` [PATCH v4 5/6] test/threads: add tests for thread attributes API Tyler Retzlaff
2022-06-27 16:56   ` [PATCH v4 6/6] test/threads: remove unit test use of pthread Tyler Retzlaff
2022-07-31 21:16   ` [PATCH v4 0/6] add thread lifetime and attributes API Dmitry Kozlyuk
2022-09-21  8:15   ` David Marchand
2022-09-29  7:02     ` David Marchand
2022-10-05 16:11     ` Tyler Retzlaff
2022-10-05 16:34       ` Tyler Retzlaff
2022-10-06  6:52         ` David Marchand
2022-10-06 15:14           ` Tyler Retzlaff
2022-10-06 13:36         ` Thomas Monjalon
2022-10-06 15:10           ` Tyler Retzlaff
2022-10-06 15:14             ` Thomas Monjalon
2022-10-06 15:20               ` Tyler Retzlaff
2022-10-06 15:26                 ` David Marchand
2022-10-06 15:27                   ` Tyler Retzlaff
2022-10-05 17:07 ` [PATCH v5 " Tyler Retzlaff
2022-10-05 17:07   ` [PATCH v5 1/6] eal: add thread attributes Tyler Retzlaff
2022-10-06  8:32     ` David Marchand
2022-10-05 17:07   ` [PATCH v5 2/6] eal: add thread lifetime management Tyler Retzlaff
2023-03-01  8:11     ` David Marchand
2023-03-01 20:34       ` Tyler Retzlaff
2022-10-05 17:07   ` [PATCH v5 3/6] eal: add basic rte thread ID equal API Tyler Retzlaff
2022-10-05 17:07   ` [PATCH v5 4/6] test/threads: add tests for thread lifetime API Tyler Retzlaff
2022-10-06  8:32     ` David Marchand
2022-10-06 15:19       ` Tyler Retzlaff
2022-10-05 17:07   ` [PATCH v5 5/6] test/threads: add tests for thread attributes API Tyler Retzlaff
2022-10-05 17:07   ` [PATCH v5 6/6] test/threads: remove unit test use of pthread Tyler Retzlaff
2022-10-06 19:25   ` [PATCH v5 0/6] add thread lifetime and attributes API David Marchand
2022-10-07 19:20     ` Tyler Retzlaff

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=20220621162434.GB18214@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net \
    --to=roretzla@linux.microsoft.com \
    --cc=anatoly.burakov@intel.com \
    --cc=dev@dpdk.org \
    --cc=dmitry.kozliuk@gmail.com \
    --cc=navasile@microsoft.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).