Message ID | 20230504045503.83276-1-malteskarupke@fastmail.fm (mailing list archive) |
---|---|
Headers |
Return-Path: <libc-alpha-bounces+patchwork=sourceware.org@sourceware.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id D3D083856DDF for <patchwork@sourceware.org>; Thu, 4 May 2023 04:55:33 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D3D083856DDF DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1683176133; bh=aTZXG4q++9GGsJ7GQ2VYzz6G6h8VvZDK2a0KDoYRxsY=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=YqKtM3t8ZgLwbT+7y/hdqqYeibvZSokyVPLFpMZlxOKB8IaDEFswm5b1jwBOMPRv7 ASS68hRWINKIpQhi23ZUApd7uHD5UlLzT5gIIj4oOTLkXwUvfrLR60zT00gKu9C0w5 Fmh0aeudP+Fu1CZLE9kcgCE7+y1x8CiQO6YqKw4Y= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by sourceware.org (Postfix) with ESMTPS id C28233858C31 for <libc-alpha@sourceware.org>; Thu, 4 May 2023 04:55:10 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C28233858C31 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id C56B15C0462; Thu, 4 May 2023 00:55:08 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Thu, 04 May 2023 00:55:08 -0400 X-ME-Sender: <xms:rDpTZLaw-PZ1gSDiY2SrL5bdlMyhYH403GN3JR9-K1kBl7tJKTkfQQ> <xme:rDpTZKbdZJolGwB1JuoCCSoxaUMMTUALbelpITjjKI5Kwde7Ok6rEmerwHuZtduS7 3iZwStbJx0lSCOZrA> X-ME-Received: <xmr:rDpTZN_bfZyBVwu3U39R0QppPWSdmnNxiiu2--CJ7EFX4cHf-S0CbhJ-NQdFjGHqPGacDFmKkusKBpN-kSefb_VuQNm3XRZbhJV6qq8> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfedvledgkeekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepmhgrlhhtvghs khgrrhhuphhkvgesfhgrshhtmhgrihhlrdhfmhenucggtffrrghtthgvrhhnpedvuddvff dtvefgkefgjeeuvdefffefleehheduveffjeeffedvffegheehkedtgeenucffohhmrghi nhepshhouhhrtggvfigrrhgvrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrg hrrghmpehmrghilhhfrhhomhepmhgrlhhtvghskhgrrhhuphhkvgesfhgrshhtmhgrihhl rdhfmh X-ME-Proxy: <xmx:rDpTZBpkmA2upT8oQCF6vEEDerG4eMV1Dx_9787eejuIAT2PxXdxJQ> <xmx:rDpTZGq_DcSxoVZYCLR-pb-5tGawJQ0ljGqwYqNIYvPWbZ5fdxtbbg> <xmx:rDpTZHRYcrbkDqIWvDwWFy_kdMXXcn9p-c-zvM0TYZktPf6bsQ1TJg> <xmx:rDpTZNT1UMgOCMGf_gi_dVtAqfl4_OF3EtjoeDGsgcuyIvxPlLMKeg> Feedback-ID: ifa6c408f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 4 May 2023 00:55:08 -0400 (EDT) To: libc-alpha@sourceware.org Cc: Malte Skarupke <malteskarupke@fastmail.fm> Subject: [PATCH v2 0/9] Patch to fix glibc condition variable bug (BZ 25847) Date: Thu, 4 May 2023 00:54:54 -0400 Message-Id: <20230504045503.83276-1-malteskarupke@fastmail.fm> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list <libc-alpha.sourceware.org> List-Unsubscribe: <https://sourceware.org/mailman/options/libc-alpha>, <mailto:libc-alpha-request@sourceware.org?subject=unsubscribe> List-Archive: <https://sourceware.org/pipermail/libc-alpha/> List-Post: <mailto:libc-alpha@sourceware.org> List-Help: <mailto:libc-alpha-request@sourceware.org?subject=help> List-Subscribe: <https://sourceware.org/mailman/listinfo/libc-alpha>, <mailto:libc-alpha-request@sourceware.org?subject=subscribe> From: malteskarupke--- via Libc-alpha <libc-alpha@sourceware.org> Reply-To: malteskarupke@fastmail.fm Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libc-alpha" <libc-alpha-bounces+patchwork=sourceware.org@sourceware.org> |
Series |
Patch to fix glibc condition variable bug (BZ 25847)
|
|
Message
develop--- via Libc-alpha
May 4, 2023, 4:54 a.m. UTC
From: Malte Skarupke <malteskarupke@fastmail.fm>
This is v2 of the patches, v1 here:
https://sourceware.org/pipermail/libc-alpha/2023-January/145023.html
The only difference is using of release semantics in pthread_cond_common
when writing to g_signals. Updating this one is a no-brainer because it
was just incorrect. I did not update any other writes to g_signals
because there is more of a debate there on whether pthread_cond_signal
should synchronize with pthread_cond_wait. It does not in the old
implementation, which relies on the fact that condition variables are
always used together with mutexes.
Frank Barrus (1):
pthreads NPTL: lost wakeup fix 2
Malte Skarupke (8):
nptl: Update comments and indentation for new condvar implementation
nptl: Remove unnecessary catch-all-wake in condvar group switch
nptl: Remove unnecessary quadruple check in pthread_cond_wait
nptl: Remove g_refs from condition variables
nptl: Use a single loop in pthread_cond_wait instaed of a nested loop
nptl: Fix indentation
nptl: rename __condvar_quiesce_and_switch_g1
nptl: Use all of g1_start and g_signals
nptl/pthread_cond_broadcast.c | 8 +-
nptl/pthread_cond_common.c | 109 ++--------
nptl/pthread_cond_signal.c | 19 +-
nptl/pthread_cond_wait.c | 278 +++++-------------------
nptl/tst-cond22.c | 12 +-
sysdeps/nptl/bits/thread-shared-types.h | 4 +-
sysdeps/nptl/pthread.h | 2 +-
7 files changed, 100 insertions(+), 332 deletions(-)