Received: by mail.netbsd.org (Postfix, from userid 605) id 3A01384D99; Fri, 30 Apr 2021 13:54:02 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 6ECD784D90 for ; Fri, 30 Apr 2021 13:54:01 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id mbnxtlntT4nA for ; Fri, 30 Apr 2021 13:54:01 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.NetBSD.org [IPv6:2001:470:a085:999:28c:faff:fe03:5984]) by mail.netbsd.org (Postfix) with ESMTP id C116484CE0 for ; Fri, 30 Apr 2021 13:54:00 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id BE4E6FA95; Fri, 30 Apr 2021 13:54:00 +0000 (UTC) Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" MIME-Version: 1.0 Date: Fri, 30 Apr 2021 13:54:00 +0000 From: "Martin Husemann" Subject: CVS commit: [netbsd-9] src To: source-changes@NetBSD.org X-Mailer: log_accum Message-Id: <20210430135400.BE4E6FA95@cvs.NetBSD.org> Sender: source-changes-owner@NetBSD.org List-Id: Precedence: bulk Reply-To: source-changes-d@NetBSD.org Mail-Reply-To: "Martin Husemann" Mail-Followup-To: source-changes-d@NetBSD.org List-Unsubscribe: Module Name: src Committed By: martin Date: Fri Apr 30 13:54:00 UTC 2021 Modified Files: src/common/lib/libc/arch/arm/atomic [netbsd-9]: atomic_swap.S atomic_swap_16.S atomic_swap_64.S membar_ops.S src/sys/arch/arm/include [netbsd-9]: lock.h Log Message: Pull up following revision(s) (requested by skrll in ticket #1261): sys/arch/arm/include/lock.h: revision 1.38 common/lib/libc/arch/arm/atomic/membar_ops.S: revision 1.7 common/lib/libc/arch/arm/atomic/atomic_swap_16.S: revision 1.5 common/lib/libc/arch/arm/atomic/atomic_swap_64.S: revision 1.12 common/lib/libc/arch/arm/atomic/atomic_swap.S: revision 1.17 Add the appropriate memory barrier before the lock is cleared in __sync_lock_release_{1,2,4,8}. That is, all reads and write for the inner shareability domain before the lock clear store. Improve the membar_ops barriers - no need to use dsb and wait for completion. Also, we only to act on the inner shareability domain. Fix the barrier confusion. From Riastradh - thanks!. To generate a diff of this commit: cvs rdiff -u -r1.14.18.1 -r1.14.18.2 \ src/common/lib/libc/arch/arm/atomic/atomic_swap.S cvs rdiff -u -r1.4 -r1.4.18.1 \ src/common/lib/libc/arch/arm/atomic/atomic_swap_16.S cvs rdiff -u -r1.10.18.1 -r1.10.18.2 \ src/common/lib/libc/arch/arm/atomic/atomic_swap_64.S cvs rdiff -u -r1.6 -r1.6.28.1 \ src/common/lib/libc/arch/arm/atomic/membar_ops.S cvs rdiff -u -r1.33.8.1 -r1.33.8.2 src/sys/arch/arm/include/lock.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.