From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id D3922A053D; Wed, 5 Aug 2020 17:57:43 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2B5DC2BF2; Wed, 5 Aug 2020 17:57:43 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by dpdk.org (Postfix) with ESMTP id D9FF22BB5 for ; Wed, 5 Aug 2020 17:57:41 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 413651424; Wed, 5 Aug 2020 08:57:41 -0700 (PDT) Received: from localhost.localdomain (unknown [10.57.38.158]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 81C4E3F7D7; Wed, 5 Aug 2020 08:57:40 -0700 (PDT) From: Steven Lariau To: Cc: dev@dpdk.org, honnappa.nagarahalli@arm.com, dharmik.thakkar@arm.com, nd@arm.com, Steven Lariau Date: Wed, 5 Aug 2020 16:57:17 +0100 Message-Id: <20200805155721.19808-1-steven.lariau@arm.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH 0/4] test/stack: improve multithreaded test X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The current multithread DPDK stack test is using atomics operations to share information between threads. The lockfree stack implementation also uses atomic operations. This is an issue for testing. The atomics operations for the test may add some extra synchronization to the stack implementation, that doesn't exist. It makes it harder to find bugs related to memory orderings and data races. The main goal of the patch is to remove all atomics operations and any other form of data sharing in this test, to make sure that most of the execution time is spent on the stack library. Furthermore, this patch uses more appropriate functions to start / wait cores in order to simplify the code. The patch also adds code to propagate errors on any slave core to the master. Steven Lariau (4): test/stack: avoid trivial memory allocations test/stack: launch tests with mp remote launch API test/stack: propagate errors to main core test/stack: remove atomics operations app/test/test_stack.c | 71 ++++++++----------------------------------- 1 file changed, 13 insertions(+), 58 deletions(-) -- 2.17.1