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 A034BCF8551 for ; Thu, 3 Oct 2024 01:50:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 123076B04E4; Wed, 2 Oct 2024 21:50:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0D3036B04E5; Wed, 2 Oct 2024 21:50:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EB5F76B04E6; Wed, 2 Oct 2024 21:50:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id C2BDA6B04E4 for ; Wed, 2 Oct 2024 21:50:35 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id D08A5C0D63 for ; Thu, 3 Oct 2024 01:50:34 +0000 (UTC) X-FDA: 82630611588.06.E0CACB4 Received: from mail-qv1-f41.google.com (mail-qv1-f41.google.com [209.85.219.41]) by imf20.hostedemail.com (Postfix) with ESMTP id D484C1C000F for ; Thu, 3 Oct 2024 01:50:32 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=rowland.harvard.edu header.s=google header.b=cpilRMWy; dmarc=pass (policy=none) header.from=rowland.harvard.edu; spf=pass (imf20.hostedemail.com: domain of stern@g.harvard.edu designates 209.85.219.41 as permitted sender) smtp.mailfrom=stern@g.harvard.edu ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1727920193; a=rsa-sha256; cv=none; b=IREjFvCBrjlTjxYmhjJuW6cJ3wpXvfVXs8A/+Mk2aSMnTANG/FLiD/PF53kIC3a4bJ45XN dnshFyZhDGwnzJENUZFlSmbi8JW/+11zVcT2/Xvq6QLlbRk032SSiFNmjsTAU6HqQkvsdX OCQB8SsBAfFsi5RRmm89nb5lFgZBOYQ= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=rowland.harvard.edu header.s=google header.b=cpilRMWy; dmarc=pass (policy=none) header.from=rowland.harvard.edu; spf=pass (imf20.hostedemail.com: domain of stern@g.harvard.edu designates 209.85.219.41 as permitted sender) smtp.mailfrom=stern@g.harvard.edu ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727920193; 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=TW60IUTPehz0g12Pfaz6AL2tkt66MvpF0k2D1aaI7NQ=; b=nvVYXvzDoDovBbJ0aVFiSZghXjf5ljH3hgKBQGnDBAIdhEbkxsuVPfc/uTOmsluDFizDqM P9yxiYF2FFvlKs92qqsXd8B2IKj5KHxNjZNXiYG92VJ5bxZvVlhHsVhYMndcJSJEtXxv/r SPbkFN67WDRWiXY+l6AdekDS0tw6T+E= Received: by mail-qv1-f41.google.com with SMTP id 6a1803df08f44-6cb82317809so3630536d6.0 for ; Wed, 02 Oct 2024 18:50:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rowland.harvard.edu; s=google; t=1727920232; x=1728525032; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=TW60IUTPehz0g12Pfaz6AL2tkt66MvpF0k2D1aaI7NQ=; b=cpilRMWy9lJQ+UtlZnVX3adVxnrhLHaWxa0bWZH/KuebMaxvfuaPrqWV2nF+Xph1WQ xuYlI5XZWFYRcgSIH4KZZvivFXNqMNEAgTuoSCgsz7K4bo2aSd0LlwV78uPz3CboDDqZ pfeQMEkGKugoiT/HmY/EsDmhXPFbUpbQzSs965XrwH01kbgh3AQVp8U/z4is+uND/Whi vaUtX6Lwi/k9yEA/iAfkRaXGQjMvPYYOP6I2i3xZuRC8CKBU0XziS3KBN1H0b5QPtiOy 4gHt3IKLIpaPQbLWj+t7N/BQcaLhyFL8gbhvlAqA/YVcG1PD2c8qwnceAF365mjyivfc iyCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1727920232; x=1728525032; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=TW60IUTPehz0g12Pfaz6AL2tkt66MvpF0k2D1aaI7NQ=; b=vHxPBkXOhZ5trAY/iLCZNXi6SfN8lAczfbPzdXwqhMsCY3Ps8mdeNhC6oPvMClMMiI ruu0G0qJh+Bdwoh0vEjxQL2rMIfqyU/IvO+469XrLow+NJr9X5C07iBUCQsz87mloYvd 4zgETbPeORfPpX54ZsaIxmGOvEZsYgKLWdQxQqbEoHmyWXPWogtje1C1i65HuNVWMAY9 XwYKeRmxQhXIH1JyDTxneWjuZW5piZIkCIWP+pV1x+jAovZlEtJtkG0F8fEZjE8IJTm8 zGrqH98Nug9iKzoYY2mIiTQS4/mTk/cd9yH1E/qdPvVO7Oonfvui5JaVWJB+zd3s0fa+ OKNA== X-Forwarded-Encrypted: i=1; AJvYcCXNOHprebt9RBkVQq8FlOqjkMmXCNTaU55UPu+IXUAbWHROjhUE+2dR7k6QGxt5r2MMBiy7xL3ZNA==@kvack.org X-Gm-Message-State: AOJu0YxG/T2K0jTmRzp/TUevIFu8swQNswLnUHinAIueEDkab3Lht/LX 1GhTrC7V4ZqP2iIcTDyhmahpfZSszBY8M8m6NEiMgrtZjnLJ6op6/eHEcycZ0Q== X-Google-Smtp-Source: AGHT+IEv26iq8/1ZOyYGTcYuUxX/o0z7IncEd2xD4JiQFmC+bd8vOYXdTa6iFRK06pFUDggHzbTHhw== X-Received: by 2002:a05:6214:4890:b0:6cb:5105:8d4a with SMTP id 6a1803df08f44-6cb81a9e3d2mr76906956d6.34.1727920231847; Wed, 02 Oct 2024 18:50:31 -0700 (PDT) Received: from rowland.harvard.edu ([2601:19b:681:fd10::1384]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6cb9359bfe3sm1286326d6.9.2024.10.02.18.50.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Oct 2024 18:50:31 -0700 (PDT) Date: Wed, 2 Oct 2024 21:50:27 -0400 From: 'Alan Stern' To: David Laight Cc: Jonas Oberhauser , Mathieu Desnoyers , Linus Torvalds , "linux-kernel@vger.kernel.org" , Greg Kroah-Hartman , Sebastian Andrzej Siewior , "Paul E. McKenney" , Will Deacon , Peter Zijlstra , Boqun Feng , John Stultz , Neeraj Upadhyay , Frederic Weisbecker , Joel Fernandes , Josh Triplett , Uladzislau Rezki , Steven Rostedt , Lai Jiangshan , Zqiang , Ingo Molnar , Waiman Long , Mark Rutland , Thomas Gleixner , Vlastimil Babka , "maged.michael@gmail.com" , Mateusz Guzik , Gary Guo , "rcu@vger.kernel.org" , "linux-mm@kvack.org" , "lkmm@lists.linux.dev" Subject: Re: [PATCH 1/2] compiler.h: Introduce ptr_eq() to preserve address dependency Message-ID: <68dc00b3-1ca1-42bc-8f1e-78ace10e4d64@rowland.harvard.edu> References: <02c63e79-ec8c-4d6a-9fcf-75f0e67ea242@rowland.harvard.edu> <9539c551-5c91-42db-8ac1-cff1d6d7c293@huaweicloud.com> <2cdda043-1ad9-40cf-a157-0c16a0ffb046@rowland.harvard.edu> <5d7d8a59-57f5-4125-95bb-fda9c193b9cf@huaweicloud.com> <82e97ad5-17ad-418d-8791-22297acc7af4@rowland.harvard.edu> <2b1caba3-48fa-43b9-bd44-cf60b9a141d7@rowland.harvard.edu> <22638e2fe1274eb0834fa3e43b44184e@AcuMS.aculab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Queue-Id: D484C1C000F X-Rspamd-Server: rspam01 X-Stat-Signature: ek5zif8msy4rdd3e7s7qromqij534wg3 X-HE-Tag: 1727920232-115043 X-HE-Meta: U2FsdGVkX1/citJuq4ghfWp9Jz+JxAPgeNVwvppmUCMQMf+KkQ8Tb/X2CGTYW10xRKIqALEdU3MuPEzDjy5MqyqiaBsKS0jm/FnzYQfe5Vus0wwpy8DkVID1Tr47Wqq0hAK3I6e9DaAkqXezyjMKHiE1p1ey2mXFZGARMvkAESZzNsU4ND54MDWf2bWWAJY1OO0LYLrEus/xrYfZ6qEMriSydI1q537xtFTMRMArjnWg1KKrJE5DSrlVu3RpsuFE0TTu8O8PcHourAofi9kPoM6XGA5b8GayJw8uMUYE5LKw2Mcb6hLS/ThD2VV+p6nMbagRJDJB5yh/1hAoNwy3w2VYEP3MVliuWOsfpmum3RhzWbomy2lJFeFaV9GcC6WaWqahe+5lqjE6G0ZY3bDKsqkjtRb92gXl+CEjZnCXKPEECQda1kc7dAhyfTPwLvPa2Lp1XW5Kanj2tnp541U+W9qnIUOXmmujMz1DiK+Bm33RjL3tLGzANSFXGB850OanHj7oVr6rsU+L7RtvriIRgjmxWq1q/ZGj8yTTvLjhv6vnFvysKnwX7sZqAAk7gchLSYwNxtbqZd2r80EQaFDPAdtMOaZDnDZFIIMMSW2oAMd8sYOdph2HzSC9Q5MMr1SGxUvKaWRyHZpycfxqq69AzjAXnFL61EjCS6vLghLRzvt9ZtUfSL61p2efMd/9QHFwgapci0Dy1DPD957tv7ilfkMpztyuVF7PAGXa51GpwjNWyLK0PZedHPkk8D3UbcF8weXTIQ7cbwB52ksWXjtY67xQAxHSvbPC1kRMgtYlIv6zmOM/c7hSRG4hDaNacpOoTOcS0Wd23tzQuwQxHUcGyEPp02spc+FoEdZafx3f1IAOoBWD3bh2NV80V/NHQLvCyEgYHLXpCVFuowst9g9HFNj2lQKqj9N9afEFa9NRL/YeTdp6ePw7zdMtlyFlSBmCfv6JuhmPfafgSp8IRM/ dFI9vKTU T8R2l0ITLYmwQaLq86ojZsY8imm4SsIOL1fPpa5e83bkM9WRKwjiJKbgxlr0+t87kvmLcB3RiFuOKYP+D4hSUBtID13s40LOKxfBJJdpx40yzLB2Y9atZGT26KXI54ZcDZgG4KN7m/ugdnglO31dZcr/S18xMGGhmYS5YJpSwemPOHy/Ug3DrmmJ1n0y6+yyGPTfzK/Q8aN+axIsZvt5ghoLaphJRYeFe4eXDYtvSNLxIJndqOvjJKRg37EQM93KP2/xwSEcOGmj3Z6ElP2mKak5ta1XPNwEoJ62ZPvDsPjTkYBAZVG/HSBhaGwje+gj7TqbOuVhT3MkbnFCKfFX7XLT9zHaUFnbz5Cu7Ywui09C/hTiubM3YLEH5+DZwArFlWt0BEBpRLS1qI/5/7M9Bn94RHj85qpdpAfYVlFo3L9wDDRD0alQghb3nFsOnJT+6hneiYeYwamtGPfsgKPdqvZq5DvpQ72ZC5SVtQ7bjCIwa7GH/Vf0JzfF7P/tnmG6JNeiXFrC6NVkkfVP486bFK8QfbLrFpkGewEHjg19CpWLE6IKXA5yCcnNKuozSHweXE1WaybwDJ4VE1or1m/GZ+TnZfK+ZO1KAAhR+gsjD/9uviGrIyT5tB6QIT88egNvcKi0wkPGzKK63cEFtS2bOcJ5Ozzlxd/W01RDTd04/sbOoyq16Xe4mHUW3k6YnztlIwEzo 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 Wed, Oct 02, 2024 at 03:24:45PM +0000, David Laight wrote: > I think I know what you are trying to do, and you just fail. > Whether something can work is another matter, but that code > can't ever work. > > Inside if (a == b) the compiler will always use the same register > for references to a and b - because it knows they have the same value. According to the other people in this discussion who have actually tried using this code, it _does_ work (at least some of the time). However, I'm not one of those people and so I leave it up to them to decide how to respond to this critique. Alan > Possibly something like: > c = b; > OPTIMISER_HIDE_VAR(c); > if (a == c) { > *b > will ensure that there isn't a speculative load from *a. > You'll get at least one register-register move - but they are safe. > Otherwise you'll need to put the condition inside an asm block. > > David