DPDK patches and discussions
 help / color / mirror / Atom feed
From: Tyler Retzlaff <roretzla@linux.microsoft.com>
To: dev@dpdk.org
Cc: thomas@monjalon.net
Subject: help with pthread_t deprecation / api changes
Date: Wed, 30 Nov 2022 14:54:27 -0800	[thread overview]
Message-ID: <20221130225427.GA13682@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> (raw)

hi folks,

i'd like to continue work moving to our platform abstracted rte_thread
but ran into a hiccup. for some recent and not so recent apis it appears
they managed to slip in without ever being __experimental. 

as a function of the dpdk project api/abi policy this means we can't
change or remove some of these functions without following the
deprecation process.

the apis that are causing me immediate difficulty are
rte_thread_setname and rte_ctrl_thread_create.

i think the least painful path forward to deprecating and removing these
apis is probably just to introduce the replacements with new names.

1. introduce functions with the following names marked as
   __experimental.

   rte_control_thread_create(rte_thread_t *, ...)
   rte_thread_set_name(rte_thread_t, ...)
   rte_thread_get_name(rte_thread_t, ...)

   along with the new functions, new unit tests will be included.

2. update dpdk internal implementation to use the new functions.

3. immediately remove the following functions from the public headers
   and issue an api deprecation notice for the functions not marked
   experimental.

   rte_ctrl_thread_create(pthread_t *, ...)
   rte_thread_setname(pthread_t *, ...)

4. when the new functions have their __experimental marking removed
   issue an abi deprecation notice for the functions from (2).

i'm open to feedback/suggestions of a better approach if anyone has one
to offer.

thanks!

             reply	other threads:[~2022-11-30 22:54 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-30 22:54 Tyler Retzlaff [this message]
2022-12-02  1:12 ` Tyler Retzlaff
2022-12-02  8:03   ` Morten Brørup
2022-12-02 19:57     ` Tyler Retzlaff
2022-12-09  7:53       ` Thomas Monjalon
2022-12-09 16:48         ` Stephen Hemminger
2022-12-09 20:06           ` Tyler Retzlaff
2022-12-09 21:13             ` Thomas Monjalon
2022-12-09 23:49               ` Tyler Retzlaff
2022-12-11  7:50                 ` Thomas Monjalon
2022-12-12 17:45                   ` Tyler Retzlaff
2022-12-13  8:32                     ` Thomas Monjalon
2022-12-13 17:38                       ` Tyler Retzlaff
2022-12-13 19:34                         ` Thomas Monjalon
2022-12-13 20:39                           ` Morten Brørup
2022-12-14  0:16                             ` Tyler Retzlaff
2022-12-09 21:14           ` Thomas Monjalon
2022-12-09 22:38             ` Stephen Hemminger
2022-12-09 23:55               ` 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=20221130225427.GA13682@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net \
    --to=roretzla@linux.microsoft.com \
    --cc=dev@dpdk.org \
    --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).