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 A5516CDE021 for ; Thu, 26 Sep 2024 16:13:24 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 240536B0096; Thu, 26 Sep 2024 12:13:24 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1EFEE6B0098; Thu, 26 Sep 2024 12:13:24 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0B7F86B0099; Thu, 26 Sep 2024 12:13:24 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id E1E3B6B0096 for ; Thu, 26 Sep 2024 12:13:23 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 8E158C1901 for ; Thu, 26 Sep 2024 16:13:23 +0000 (UTC) X-FDA: 82607384286.11.51861E8 Received: from mail-lf1-f46.google.com (mail-lf1-f46.google.com [209.85.167.46]) by imf18.hostedemail.com (Postfix) with ESMTP id D717E1C0014 for ; Thu, 26 Sep 2024 16:13:19 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=UsjnMPkf; spf=pass (imf18.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.46 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727367039; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=QXnBUq/9ghYv0bNYvo4uDCfOpMdq8coMpre7nUUI9wE=; b=O9RDCQGgnAldjfbQ8PwxCE5jrjm5NX+JCh3GD0DMIXF26Qy3c+HNzoi8tn+3c5Wtf+HMw5 B+QqPKiKsLN1bkjs1Qul3FPeU5ft/BIzuT5fiQ2YzzoRMG7YkvySFZ1AEKyt92aHQycKQ7 YkIoJpoG2AtrKBuL8tj56vsFxvYK4vk= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=UsjnMPkf; spf=pass (imf18.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.46 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1727367039; a=rsa-sha256; cv=none; b=aT6pon0I1bL2gBLuXb0/VNYFDY1pQtWAoHAi5ld99tdZazCpksqeOw0LX8xggvrD+tCCSf Z8Bq5lHKabS5ObcbGqST2pMzkJ+jmnfl4eW5Aq7X69tju9yzxYTgKn0t67NUTdqwshcsl9 yI+HFHHwG7i856aiXeYZufhA3Atqo/o= Received: by mail-lf1-f46.google.com with SMTP id 2adb3069b0e04-5365a9574b6so2018629e87.1 for ; Thu, 26 Sep 2024 09:13:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1727367198; x=1727971998; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=QXnBUq/9ghYv0bNYvo4uDCfOpMdq8coMpre7nUUI9wE=; b=UsjnMPkfkNn35990HEsCJ+gm3M8bLYAQPBF18u/T7rHAru1cdDlcySV2YNlX7NlX+R x9BIMr06v/R4TlRxmeWs4W3O0/o6e53HC2I4O7TSITH47Ud3w99aU2ZZi/cqSSyAXaSj s81aJut/jXjBWsxxe4HWfbSbhk2h/LS8aSxUA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1727367198; x=1727971998; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=QXnBUq/9ghYv0bNYvo4uDCfOpMdq8coMpre7nUUI9wE=; b=ul3ypk54gtarFl5C6o46fQmwsFU/51NtCXu/QuLKvxtrt9rnFhFRo7RAL+JUewBGfK bMug4nRduGUtQIKp+Y+e8XbksEvxsyh5nPlaV3VYqBiKnCkY+2adRdyTUxq8fTu4LjQJ hHlYtTk+3w4B72QQAqBTrH2L5fa6LZR/YdO6kNkgf67sB5RHggq4PS9BP/q4Tl7smHeV 0xudK7Ll4Z/oTnOFJL+wa/a2wqNDajN5quuPJZ2iQsQMGsFXDGQToAQb33/S9eaoN3yR hkrijzTvGlTlVmDVTGeuQ7h+OZ0gbIX6nsXzQjHkh1GVs1RIy/WmL+Mydw2rfCaxqCuF 5J/w== X-Forwarded-Encrypted: i=1; AJvYcCUP9So0nNlJ7PE78IEtKNpa+3hDrcdqlpErOwq6gjpQ6nTkZ6P5011sk175ELkP3bIVNWZoOU/KbA==@kvack.org X-Gm-Message-State: AOJu0Yy7lqzuMjX1P2lzRRDOMUXqj7cYVcTyFN+9qT7uYpW8JlP3bldI t5fXOdhRxelG//s5usncfhCesSon8D/KZ43z3m8CQ8gyEyl3ecASAdmP1LThQXP9h4aBKzz52b+ PaeXu4g== X-Google-Smtp-Source: AGHT+IFOa4TcFY4QXUSO1WQ/5a9wKQ/dtBvRzTz6YHYs2mUCP/BumJ4mKS7SBfIwgt6pUraOu1LiaQ== X-Received: by 2002:a05:6512:280e:b0:536:5810:e89 with SMTP id 2adb3069b0e04-5389fca2d7dmr136531e87.49.1727367197835; Thu, 26 Sep 2024 09:13:17 -0700 (PDT) Received: from mail-lf1-f49.google.com (mail-lf1-f49.google.com. [209.85.167.49]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-538a0440bebsm481e87.258.2024.09.26.09.13.16 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 26 Sep 2024 09:13:16 -0700 (PDT) Received: by mail-lf1-f49.google.com with SMTP id 2adb3069b0e04-5356aa9a0afso1869173e87.2 for ; Thu, 26 Sep 2024 09:13:16 -0700 (PDT) X-Forwarded-Encrypted: i=1; AJvYcCUJ07Y3dIajadf+5RRseuWXFrCzKVHBDIkU29g3hULGy6WuCZVskoO8GSOLzrs2/qSij2BQ8TO3Bw==@kvack.org X-Received: by 2002:a05:6512:1113:b0:536:53e3:feae with SMTP id 2adb3069b0e04-5389fc34426mr138492e87.11.1727367195995; Thu, 26 Sep 2024 09:13:15 -0700 (PDT) MIME-Version: 1.0 References: <20240917143402.930114-1-boqun.feng@gmail.com> <20240917143402.930114-2-boqun.feng@gmail.com> <55975a55-302f-4c45-bfcc-192a8a1242e9@huaweicloud.com> <4167e6f5-4ff9-4aaa-915e-c1e692ac785a@efficios.com> <48992c9f-6c61-4716-977c-66e946adb399@efficios.com> <2b2aea37-06fe-40cb-8458-9408406ebda6@efficios.com> <55633835-242c-4d7f-875b-24b16f17939c@huaweicloud.com> In-Reply-To: <55633835-242c-4d7f-875b-24b16f17939c@huaweicloud.com> From: Linus Torvalds Date: Thu, 26 Sep 2024 09:12:58 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFC PATCH 1/4] hazptr: Add initial implementation of hazard pointers To: Jonas Oberhauser Cc: Mathieu Desnoyers , Boqun Feng , linux-kernel@vger.kernel.org, rcu@vger.kernel.org, linux-mm@kvack.org, lkmm@lists.linux.dev, "Paul E. McKenney" , Frederic Weisbecker , Neeraj Upadhyay , Joel Fernandes , Josh Triplett , Uladzislau Rezki , Steven Rostedt , Lai Jiangshan , Zqiang , Peter Zijlstra , Ingo Molnar , Will Deacon , Waiman Long , Mark Rutland , Thomas Gleixner , Kent Overstreet , Vlastimil Babka , maged.michael@gmail.com, Neeraj Upadhyay Content-Type: text/plain; charset="UTF-8" X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: D717E1C0014 X-Stat-Signature: gh4gcd6io5gscqy6gydu8pqs8j4xweux X-Rspam-User: X-HE-Tag: 1727367199-363146 X-HE-Meta: U2FsdGVkX1+ts6WJoLWMGNQ4WcXH3M2ArQJErOoXPLRtTz3aaMpN3gpYCPgNsk/rHTLQaNOFbZNix8QG7QLPtFHRyM3vpt3FutaALz3n1PBtwhI3Bm5mXGEEn7miiqMnBN5y2NHyAh/7aSit0dwZKUES4VFjypWeOg2oUbgN7CMKMVNXNarZI6mI96BmrTybT/4hJ2hIS6/M1B2B+VJXMdIHTTqyIJDs6GTlpr4MtSMpx6we3AIqZw4nE73MuJZkzWAnjghsNeP7kK4XJYisAb1oVJ0+nIIKKx/CIDWe9alUOl9z/OfiGbhwbAHRwr5ABDck8bu02V1Qs4TXqZ6ZOYbKFh6Bhpyej4XpwtR+SuWsacPD2/uvmtCYdccovfrxym7uBcwFbslDIy5yILNjxPyC3zgIe/phS3ClwU93XIcnkT4dFsGWD+5lraT2WeZmNcqjXpw6TaeLx/1qTT+lL7eyGcbnC0yS3IuQFoQGGPQ5SyJUzCUyLuv9IWAxVOASXgQY7Qk7cHcqGC3oGTSTH8rOIPo7v/zJa5Ot6NQxOkl6jO5N4Ci4NBeR0fWrfsaatbzfzl4bUbUzVA5TJemo/ZdHGsuup7MgiFvf2vWpaZfAdAHw8TxuZZnPsiOYhhmb/MdhgvxFF7tNbIrFcnXk6xmlpUteW4rdB9hQTtiD6AgIC8af/Sxu0uoug88mabhYGGTwFq5o9NC5loL4XCQujVNmoGLB6ICj4ZfFbhz4ZAR3E3c030VpNqW64w4kevcrx2e7TB0s4hABJtl8VoPLPN+0ScmglktlPsN+STlLixgRvDn0ii4tmOwVIjiRqGwQtjSt3p4+8MIa7sjtLKu9iJZitB3edRF4ad0r0Eeblq7fxtbKuVkTJuF8B0ZlaufS+sYuexBVDvw27NMnj7ggeRm3dg2UroIsODjsiAA8M6iMuq9drTzxFZG2mnBnqjI7aXpmrAQqdSA6lI+LXXV 1IclFtAm wnwt4qXAJA11Kj5eQC8Arya6vx8pEl8mEH+nHSYbvp/76hrx2Ff+ScTeieWc7u0C6f8gOapqLO3MzUsfFLI7cKpClVUqKObR2Ni4FnZ3EZ6Hcn2HWfyvtbR7XLkqrxTl+bGgLP6lDdjGesqk1uLiS7nh7KL8zRUQMZ3C1lW8LuveQEKXFZG8ED+kQ9iJWrMVIvPAjEgjYjoCHqui9fV3T8DLDQ8VGiHZfUNY1NHuGIXRiMmtbXU/EiGKQfduGdaicbB/Cuw8PR0uSg+d928uHX7Fb0pilUY7F8xDnANRzLv85NFMitgmX33OpFTfaL1p9qwCB5SNaSGTgU+NlCaybe0Wl9pKWBD+9GqsdPBpro3oI36sUeFjvEA8JQQClZn8c90ZcApVsXrkXwR3sG51wNe53ovdPz71NqYOGIkHANV3tiMJA2lZieB7pfhfBp7uMi2f3Yucg78qwGojnNUfP66dKZEGFJInrs7rJR2OW4feenZ3ER2L00uaZyej7xXbVvy47lMIyZ46/ZuDBZ/oUq1rDg87yc62NJBiRjke+es4weTGBw/GK1ixbGoc7Jay8Ap0rB6R6XtUmkU+Vk9YZ//cJ3GE94e1Z8iGu 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 Thu, 26 Sept 2024 at 08:54, Jonas Oberhauser wrote: > > No, the issue introduced by the compiler optimization (or by your > original patch) is that the CPU can speculatively load from the first > pointer as soon as it has completed the load of that pointer: You mean the compiler can do it. The inline asm has no impact on what the CPU does. The conditional isn't a barrier for the actual hardware. But once the compiler doesn't try to do it, the data dependency on the address does end up being an ordering constraint on the hardware too (I'm happy to say that I haven't heard from the crazies that want value prediction in a long time). Just use a barrier. Or make sure to use the proper ordered memory accesses when possible. Don't use an inline asm for the compare - we don't even have anything insane like that as a portable helper, and we shouldn't have it. Linus