From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id F10DCC282EC for ; Tue, 11 Mar 2025 16:21:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7A248280002; Tue, 11 Mar 2025 12:21:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 751E2280001; Tue, 11 Mar 2025 12:21:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5F3A7280002; Tue, 11 Mar 2025 12:21:25 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 31A74280001 for ; Tue, 11 Mar 2025 12:21:25 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 9A23EC035E for ; Tue, 11 Mar 2025 16:21:25 +0000 (UTC) X-FDA: 83209785330.05.80416FB Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf10.hostedemail.com (Postfix) with ESMTP id 2D603C0025 for ; Tue, 11 Mar 2025 16:21:03 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=EDLIcF3Z; dkim=pass header.d=linutronix.de header.s=2020e header.b=QLgJlvp+; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf10.hostedemail.com: domain of bigeasy@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=bigeasy@linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741710064; a=rsa-sha256; cv=none; b=H2kKSvOz4MXoEjvqrxS33zPJ1Z4eFanUWT7dipcRIAmzR9o+B3Y7DGEMqURdmG1hQlGPSq I8v+zPH+8mucKirSkGIgQSNCMuTpAGNrBc8KF/e/eON8cK376DvX6ONe9nBchm4wK3gIKw ldaSuIbobz9nDJIRfkWbwf3cs9HyH3g= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=EDLIcF3Z; dkim=pass header.d=linutronix.de header.s=2020e header.b=QLgJlvp+; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf10.hostedemail.com: domain of bigeasy@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=bigeasy@linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741710064; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=idnFXAwrGeEWSsNe0E7zhElexsxSDEbSkKaAW2x51HA=; b=xDbbfeJ55zCoICYnucMYeeOlFwFcNk/h2Kgi8YY2ABhuGvwsYJ3/p8KCLHnaAoNDcfKVLG 3IHOGRb6xxbA56aAzPzsIiglMcieGrF4srTjKToOrT8WbwrrwhsOgfixc9cfDsrbvuAghj z5ZDmZ03QOfI4H3koP1L3egYlvtKo7w= Date: Tue, 11 Mar 2025 17:20:59 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1741710061; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=idnFXAwrGeEWSsNe0E7zhElexsxSDEbSkKaAW2x51HA=; b=EDLIcF3Zswap0FRX/SVRYP5JW3JR6z01NFd8tiLAI0vFyL4tRQQiPt0SxesnWQIwUyj2j2 56EYIvdjKmvNmX+wCb+TtS+AS2fMZwy5nNAtfh3QrEoPK06NzQHNKndxdwDw+8PoXi6tPJ qj5Ei+vdiQ3bJksEvOzH1q4JgH64U3WdVSIrM+9QBJe/76zNZ3XQmJOePlsxbmOBefkTCU nDkPgFnCon/o6BTfG8qFtOeMKYq5xal12R+SoTwUeP9aLaFAXZQm8YWcgGWU0SdyTuFs+i cv5N6c6EAScRY0GuImabi2eT7udjaPmYOTAW24j4GxeAqn12+ToBRylIWDaCXg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1741710061; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=idnFXAwrGeEWSsNe0E7zhElexsxSDEbSkKaAW2x51HA=; b=QLgJlvp+LNALSDwcB+B0SqQcTQC25eQ1KuRXqgmtsfJnTzrpLGR+CUJGTLf7kb4eUmgV+f azZ98u8VYFSoueBQ== From: Sebastian Andrzej Siewior To: Mateusz Guzik Cc: Alexei Starovoitov , bpf@vger.kernel.org, andrii@kernel.org, memxor@gmail.com, akpm@linux-foundation.org, peterz@infradead.org, vbabka@suse.cz, rostedt@goodmis.org, houtao1@huawei.com, hannes@cmpxchg.org, shakeel.butt@linux.dev, mhocko@suse.com, willy@infradead.org, tglx@linutronix.de, jannh@google.com, tj@kernel.org, linux-mm@kvack.org, kernel-team@fb.com Subject: Re: [PATCH bpf-next v9 1/6] locking/local_lock: Introduce localtry_lock_t Message-ID: <20250311162059.BunTzxde@linutronix.de> References: <20250222024427.30294-1-alexei.starovoitov@gmail.com> <20250222024427.30294-2-alexei.starovoitov@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In-Reply-To: X-Rspamd-Queue-Id: 2D603C0025 X-Stat-Signature: 6n4x9db19d7amb7da8x6w1z1hrqztocg X-Rspamd-Server: rspam02 X-Rspam-User: X-HE-Tag: 1741710063-117745 X-HE-Meta: U2FsdGVkX19pUoz6AdSkkVf292qfYeu/H0ALsX78N86t/DVpPPu5w7QiXFzpo02WBCl8r4ZB/toMkrfZMzcyFQ/TsOHJ/Y1euiqIsXxKLRoc1AEzDzGh9ReLOcs8e5FmlpPa/mChhHqaId8flIviitHq38CZTLdPRxBQP+YpH+PD4OkxL87ph9x8ip1H4rZfkIgsCwzy3S4LqExHe8FhpIA+VdT85/jRU8kyVjDrUPxgX21glRYv2dybRmPj3Fb1IqWVybise58M3EqoXDz1hDVf4hy3Ob3+25qGFmhwB+xNZpa3spe+wSYLgfTnmYh6jl5iewJVl4kRCWek2X56JhTsqtNvqgWLigPr3rn4JefzbF5+6feFFANXxZnuTdCKVLyzpZWUFhq8Xl+RJYpujnMImXFkqpWHAg3rK3fVlKslbWe2V4sjS42zwzDOB9ud/1m1HQeD47fJSLIEzah92cJLWNsV4seIYzZrtvAgWd9dWe+fCT7rK33yzfs2TBoH0kheo6+gHZAdKsnWSMgUsfahgJgsbPxDfnruMxDbJ8b/2WC7n2SY+JjA4W3Qzc5qn7YVYP6Kyx9IKBttQJcDs88vJ4ZUpBZauc7aHrfYwispEX/zwxAZHcfZmta6wBJRL4G3uqaAFSLTiJPMefdjnYMR5v9sD/4GG3ZP6Eg4TFAFX5s1taoWDUJJ0rrPxftBHfIWtrZzYAe5DcvqKU1kVMoX07BEWxcr5hpnaazs+I7EADMbpzQbeKuQfeHFFehf173LY5T/tlgdKFrmxwdiDls/BTqXm8O507kuVU35LXmrgEdmFpaLih5RQ7fOoHK9Bq4cZSV1120+AYHoGuRFde/iqyCcNkHJO/vgqnGlQ1b4YCOVpE9SynHRNOdLDr+Unn1reKwhhws8XEpOqSZyoc5bdsvAPOASR3WJMVE4RQLQsyFturHBq6TsjEGTehJM8Vsj9jA0Ew2D/AEHQCG ExaA20u3 NdPS1+AD7zNrg3PEMdNLaCfYITPZr5hHvmbdHXEb4Lm7+nUZBJQD7BYSZPiRKZfo/uAvzlTpzeygrBptA5Lv4o0GO19EKhUj6ZPxLBl/2gx235YkPskCQlml4UkA21/kdly65Wh5/l9JkaHCgGpyq/PqzDokQRHCeZtefMiIn71Ycv4vBH2wJWXXYctCMqT4Fjx3b6gmVrxKgTqHc+yQTV1wakXwbWeTwUEak7dcS7XOBaitM8VtDBaOgd2y00f1U0OXObbhlQiyTMWeOWQi1gAOSTSmCVl/Zs8BgJvpUa98UbQe0Rpyr3PzW8c4xWgY/5tKGiDQ0ajMwSbnegcHgEHfz1X/WP33Eg1zm/TM+WSpymRk= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2025-03-11 16:44:30 [+0100], Mateusz Guzik wrote: > On Fri, Feb 21, 2025 at 06:44:22PM -0800, Alexei Starovoitov wrote: > > +#define __localtry_lock(lock) \ > > + do { \ > > + localtry_lock_t *lt; \ > > + preempt_disable(); \ > > + lt =3D this_cpu_ptr(lock); \ > > + local_lock_acquire(<->llock); \ > > + WRITE_ONCE(lt->acquired, 1); \ > > + } while (0) >=20 > I think these need compiler barriers. >=20 > I checked with gcc docs (https://gcc.gnu.org/onlinedocs/gcc/Volatiles.htm= l) > and found this as confirmation: > > Accesses to non-volatile objects are not ordered with respect to volati= le accesses. >=20 > Unless the Linux kernel is built with some magic to render this moot(?). You say we need a barrier() after the WRITE_ONCE()? If so, we need it in the whole file=E2=80=A6 Sebastian