From nobody Wed Nov 5 14:27:33 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1534873052155832.864537617387; Tue, 21 Aug 2018 10:37:32 -0700 (PDT) Received: from localhost ([::1]:55116 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fsAaw-0001Dc-8n for importer@patchew.org; Tue, 21 Aug 2018 13:37:30 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33559) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fsA4b-00025A-F0 for qemu-devel@nongnu.org; Tue, 21 Aug 2018 13:04:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fsA4V-0006n7-Ns for qemu-devel@nongnu.org; Tue, 21 Aug 2018 13:04:04 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]:45850) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fsA4U-0006aH-U4 for qemu-devel@nongnu.org; Tue, 21 Aug 2018 13:03:59 -0400 Received: by mail-wr1-x42f.google.com with SMTP id 20-v6so10507759wrb.12 for ; Tue, 21 Aug 2018 10:03:52 -0700 (PDT) Received: from 640k.lan (dynamic-adsl-78-12-184-244.clienti.tiscali.it. [78.12.184.244]) by smtp.gmail.com with ESMTPSA id v6-v6sm2608955wmc.43.2018.08.21.10.03.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 21 Aug 2018 10:03:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=5XFVO8VHW6FjC+yodGVunP72gVKatohyO0v7g7Q3PWA=; b=hkmIN4Wh5RhTkQZ2gOp0uapgs2yonrQ3Or5BGoqO2s9co8nxR8J9Ul+DPkBqWED+F5 xvBZ/hu5w//UYph+XqjKYLMWkhEkpHfHVcTGMlMSVLwKwSjX8Jb9AF15b/RQ3DM38Eyx xh++TGaxsH/ZhFV3wUqlDVPnYk9T/ZnyViaNvkFUcv1dMpn5m/HnNKbeYy3fWNwvDEHY adAaSySFTsvAxSb72mc0GEG2uU+f9+7OD6lDzACS3hun1ycXilunEwg8MMziD0VpsW3L vjWmiXt7/h7sFPg3vbDYmIY9XnGM2nexvdXPdsAIPNcU5V8gtnA1iTlr9fKhAJUJmI1R p4iA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=5XFVO8VHW6FjC+yodGVunP72gVKatohyO0v7g7Q3PWA=; b=Nj6x4I7R/xx8gApuktEXKDMpst4Bqnzpt2IGf0pLMy09Dx7rIJNmBmP0k8yjUhf4vK BN8AjcrlLJLfZaffxx0Nn0BgmFPI4VPFJbBUOSxkWt1VQ5WLNyhJazVzJzeApDADLx8g IDyCZn0IMcZyF31LP4G9Wc+QHbn4OMC6oWkTSTNv+HKA3iJb1Egk+flpTCczF9pbCDFM 9JG1bpCVSj2ZVbsypSnwPYttStFQtMsY1KoX3Ax8z3VAeCOm+vdhq2f4+YK0MxvRq8bq jmJeXS589NKFZSuHB2TLQw+I+4LTkUsdzvRG5tsStGv53tDhhpTMNFxa0K70lJl2CcUD wYKg== X-Gm-Message-State: APzg51D+CHAEmzIO30yllAxqKfRK15hhEhqv+dJ47fyZ5WAuOfWYMWzL +gp6dTodJlM5UHyxhXV3XhT9nVgm X-Google-Smtp-Source: ANB0Vda3dSCg/FmcCjdH5tu4UMfTeSxCnotbZkPNlXIK6pvCFPud4hIyFdf59xL0b4XSu8cT7GRWPQ== X-Received: by 2002:adf:e792:: with SMTP id n18-v6mr9237031wrm.136.1534871031588; Tue, 21 Aug 2018 10:03:51 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Tue, 21 Aug 2018 19:02:16 +0200 Message-Id: <1534870966-9287-45-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1534870966-9287-1-git-send-email-pbonzini@redhat.com> References: <1534870966-9287-1-git-send-email-pbonzini@redhat.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::42f Subject: [Qemu-devel] [PULL 44/74] tests: add test-rcu-tailq X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Emilio G. Cota" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDMRC_1 RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: "Emilio G. Cota" Signed-off-by: Emilio G. Cota Message-Id: <20180819091335.22863-10-cota@braap.org> Signed-off-by: Paolo Bonzini --- tests/Makefile.include | 4 ++++ tests/test-rcu-list.c | 15 +++++++++++++++ tests/test-rcu-tailq.c | 2 ++ 3 files changed, 21 insertions(+) create mode 100644 tests/test-rcu-tailq.c diff --git a/tests/Makefile.include b/tests/Makefile.include index f6b6b22..961b28b 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -118,6 +118,8 @@ check-unit-y +=3D tests/test-rcu-list$(EXESUF) gcov-files-test-rcu-list-y =3D util/rcu.c check-unit-y +=3D tests/test-rcu-simpleq$(EXESUF) gcov-files-test-rcu-simpleq-y =3D util/rcu.c +check-unit-y +=3D tests/test-rcu-tailq$(EXESUF) +gcov-files-test-rcu-tailq-y =3D util/rcu.c check-unit-y +=3D tests/test-qdist$(EXESUF) gcov-files-test-qdist-y =3D util/qdist.c check-unit-y +=3D tests/test-qht$(EXESUF) @@ -601,6 +603,7 @@ test-obj-y =3D tests/check-qnum.o tests/check-qstring.o= tests/check-qdict.o \ tests/test-opts-visitor.o tests/test-qmp-event.o \ tests/rcutorture.o tests/test-rcu-list.o \ tests/test-rcu-simpleq.o \ + tests/test-rcu-tailq.o \ tests/test-qdist.o tests/test-shift128.o \ tests/test-qht.o tests/qht-bench.o tests/test-qht-par.o \ tests/atomic_add-bench.o @@ -651,6 +654,7 @@ tests/test-int128$(EXESUF): tests/test-int128.o tests/rcutorture$(EXESUF): tests/rcutorture.o $(test-util-obj-y) tests/test-rcu-list$(EXESUF): tests/test-rcu-list.o $(test-util-obj-y) tests/test-rcu-simpleq$(EXESUF): tests/test-rcu-simpleq.o $(test-util-obj-= y) +tests/test-rcu-tailq$(EXESUF): tests/test-rcu-tailq.o $(test-util-obj-y) tests/test-qdist$(EXESUF): tests/test-qdist.o $(test-util-obj-y) tests/test-qht$(EXESUF): tests/test-qht.o $(test-util-obj-y) tests/test-qht-par$(EXESUF): tests/test-qht-par.o tests/qht-bench$(EXESUF)= $(test-util-obj-y) diff --git a/tests/test-rcu-list.c b/tests/test-rcu-list.c index c8bdf49..8434700 100644 --- a/tests/test-rcu-list.c +++ b/tests/test-rcu-list.c @@ -91,6 +91,8 @@ struct list_element { QLIST_ENTRY(list_element) entry; #elif TEST_LIST_TYPE =3D=3D 2 QSIMPLEQ_ENTRY(list_element) entry; +#elif TEST_LIST_TYPE =3D=3D 3 + QTAILQ_ENTRY(list_element) entry; #else #error Invalid TEST_LIST_TYPE #endif @@ -129,6 +131,19 @@ static QSIMPLEQ_HEAD(, list_element) Q_list_head =3D #define TEST_LIST_INSERT_HEAD_RCU QSIMPLEQ_INSERT_HEAD_RCU #define TEST_LIST_FOREACH_RCU QSIMPLEQ_FOREACH_RCU #define TEST_LIST_FOREACH_SAFE_RCU QSIMPLEQ_FOREACH_SAFE_RCU + +#elif TEST_LIST_TYPE =3D=3D 3 +static QTAILQ_HEAD(, list_element) Q_list_head; + +#define TEST_NAME "qtailq" +#define TEST_LIST_REMOVE_RCU(el, f) QTAILQ_REMOVE_RCU(&Q_list_head, el, f) + +#define TEST_LIST_INSERT_AFTER_RCU(list_el, el, f) \ + QTAILQ_INSERT_AFTER_RCU(&Q_list_head, list_el, el, f) + +#define TEST_LIST_INSERT_HEAD_RCU QTAILQ_INSERT_HEAD_RCU +#define TEST_LIST_FOREACH_RCU QTAILQ_FOREACH_RCU +#define TEST_LIST_FOREACH_SAFE_RCU QTAILQ_FOREACH_SAFE_RCU #else #error Invalid TEST_LIST_TYPE #endif diff --git a/tests/test-rcu-tailq.c b/tests/test-rcu-tailq.c new file mode 100644 index 0000000..8d487e0 --- /dev/null +++ b/tests/test-rcu-tailq.c @@ -0,0 +1,2 @@ +#define TEST_LIST_TYPE 3 +#include "test-rcu-list.c" --=20 1.8.3.1