From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6B390A00C2; Wed, 30 Nov 2022 23:54:31 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 010EC40A7F; Wed, 30 Nov 2022 23:54:31 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id 2110640693 for ; Wed, 30 Nov 2022 23:54:29 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id EBC3820B83C2; Wed, 30 Nov 2022 14:54:27 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com EBC3820B83C2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1669848867; bh=255AxkUIsWSbD8lJgLvDbntE1z/Y7xUG2/O+KV3E8io=; h=Date:From:To:Cc:Subject:From; b=p5xV+Lr5wGf1m57VCblro7nfKvPR1L4VRXIK/atNwWoZdcGFrzs6UOAjgm8/75ICM y1bLuyWPkFD3h+FaJOtWdD8t8FVWHGMD+z+fdCgODAzNMSF+CWKW2q8t0KBgrkTWaQ x805oEZoCGSMxuSrdAO5re72JkizP/VrWfu1l6Mg= Date: Wed, 30 Nov 2022 14:54:27 -0800 From: Tyler Retzlaff To: dev@dpdk.org Cc: thomas@monjalon.net Subject: help with pthread_t deprecation / api changes Message-ID: <20221130225427.GA13682@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org 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!