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 B0BA7A055E; Fri, 10 Jun 2022 00:24:18 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 592FF4069C; Fri, 10 Jun 2022 00:24:18 +0200 (CEST) Received: from forward501j.mail.yandex.net (forward501j.mail.yandex.net [5.45.198.251]) by mails.dpdk.org (Postfix) with ESMTP id 0680C40689 for ; Fri, 10 Jun 2022 00:24:16 +0200 (CEST) Received: from iva1-cf747c9a36c8.qloud-c.yandex.net (iva1-cf747c9a36c8.qloud-c.yandex.net [IPv6:2a02:6b8:c0c:9282:0:640:cf74:7c9a]) by forward501j.mail.yandex.net (Yandex) with ESMTP id 437BC62311E; Fri, 10 Jun 2022 01:24:16 +0300 (MSK) Received: from iva7-f62245f79210.qloud-c.yandex.net (iva7-f62245f79210.qloud-c.yandex.net [2a02:6b8:c0c:2e83:0:640:f622:45f7]) by iva1-cf747c9a36c8.qloud-c.yandex.net (mxback/Yandex) with ESMTP id q9Nxt33FYe-OFgm6QNA; Fri, 10 Jun 2022 01:24:16 +0300 X-Yandex-Fwd: 2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1654813456; bh=FEtqqMERnOQHq+bN/2RGeomYaAZH1uj8LRUVWRih5QA=; h=In-Reply-To:From:Subject:Cc:References:Date:Message-ID:To; b=fh3ViYBzeDKGuu7KTj92mzMzE7w5T4/UA+6KY0VmoQXOhVAe3+IG5Nu3TcfW84u2C y/N3R6DuH/nNe1XlJB6spn3FiByKasDtPGPkaqGrOFwY7uPEBWg5FZk6OdNRA+eeXO Eyjoq+4izUk85JG9ASDcN1Jg5fbvPDPzP43iY4sQ= Authentication-Results: iva1-cf747c9a36c8.qloud-c.yandex.net; dkim=pass header.i=@yandex.ru Received: by iva7-f62245f79210.qloud-c.yandex.net (smtp/Yandex) with ESMTPSA id fGUkrk5qPe-OENa75Cq; Fri, 10 Jun 2022 01:24:14 +0300 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (Client certificate not present) Message-ID: <3f267f58-3c30-8963-3b03-c33e4c270397@yandex.ru> Date: Thu, 9 Jun 2022 23:24:12 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1 Subject: Re: [PATCH 3/6] eal: add basic rte thread ID equal API Content-Language: en-US To: Tyler Retzlaff , dev@dpdk.org Cc: thomas@monjalon.net, dmitry.kozliuk@gmail.com, anatoly.burakov@intel.com, Narcisa Vasile References: <1654783134-13303-1-git-send-email-roretzla@linux.microsoft.com> <1654783134-13303-4-git-send-email-roretzla@linux.microsoft.com> From: Konstantin Ananyev In-Reply-To: <1654783134-13303-4-git-send-email-roretzla@linux.microsoft.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit 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 09/06/2022 14:58, Tyler Retzlaff пишет: > Add rte_thread_equal() that tests if two rte_thread_id are equal. > > Signed-off-by: Narcisa Vasile > Signed-off-by: Tyler Retzlaff > --- > lib/eal/common/rte_thread.c | 6 ++++++ > lib/eal/include/rte_thread.h | 19 +++++++++++++++++++ > lib/eal/version.map | 1 + > 3 files changed, 26 insertions(+) > > diff --git a/lib/eal/common/rte_thread.c b/lib/eal/common/rte_thread.c > index 10d6652..21ed042 100644 > --- a/lib/eal/common/rte_thread.c > +++ b/lib/eal/common/rte_thread.c > @@ -6,6 +6,12 @@ > #include > > int > +rte_thread_equal(rte_thread_t t1, rte_thread_t t2) > +{ > + return t1.opaque_id == t2.opaque_id; for posix systems, why not: return pthread_equal(t1.opaque_id, t2.opaque_id); ? > +} > + > +int > rte_thread_attr_init(rte_thread_attr_t *attr) > { > RTE_VERIFY(attr != NULL); > diff --git a/lib/eal/include/rte_thread.h b/lib/eal/include/rte_thread.h > index 321fb59..32ab745 100644 > --- a/lib/eal/include/rte_thread.h > +++ b/lib/eal/include/rte_thread.h > @@ -134,6 +134,25 @@ int rte_thread_create(rte_thread_t *thread_id, > __rte_experimental > rte_thread_t rte_thread_self(void); > > +/** > + * @warning > + * @b EXPERIMENTAL: this API may change without prior notice. > + * > + * Check if 2 thread ids are equal. > + * > + * @param t1 > + * First thread id. > + * > + * @param t2 > + * Second thread id. > + * > + * @return > + * If the ids are equal, return nonzero. > + * Otherwise, return 0. > + */ > +__rte_experimental > +int rte_thread_equal(rte_thread_t t1, rte_thread_t t2); > + > #ifdef RTE_HAS_CPUSET > > /** > diff --git a/lib/eal/version.map b/lib/eal/version.map > index 22e5c85..4a52484 100644 > --- a/lib/eal/version.map > +++ b/lib/eal/version.map > @@ -428,6 +428,7 @@ EXPERIMENTAL { > rte_thread_attr_set_priority; > rte_thread_create; > rte_thread_detach; > + rte_thread_equal; > rte_thread_get_affinity_by_id; > rte_thread_get_priority; > rte_thread_join;