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 7B5F7CDD1D2 for ; Fri, 27 Sep 2024 20:12:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E31FB6B009E; Fri, 27 Sep 2024 16:12:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DE22B6B00EA; Fri, 27 Sep 2024 16:12:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CAA1E6B00EE; Fri, 27 Sep 2024 16:12:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id ABCDD6B009E for ; Fri, 27 Sep 2024 16:12:36 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 31E7EA152A for ; Fri, 27 Sep 2024 20:12:36 +0000 (UTC) X-FDA: 82611615912.16.11512F1 Received: from smtpout.efficios.com (smtpout.efficios.com [167.114.26.122]) by imf28.hostedemail.com (Postfix) with ESMTP id 7C9E7C0014 for ; Fri, 27 Sep 2024 20:12:34 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=efficios.com header.s=smtpout1 header.b="h/gVdDqW"; spf=pass (imf28.hostedemail.com: domain of mathieu.desnoyers@efficios.com designates 167.114.26.122 as permitted sender) smtp.mailfrom=mathieu.desnoyers@efficios.com; dmarc=pass (policy=none) header.from=efficios.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1727467891; a=rsa-sha256; cv=none; b=8F7APxura6Er9/kV8ZJxO/GwUmWrdfyizdKcvIhWMBYrCgPF6kl93UbHbwSGrkTePVSTdG WO1tK80YAgvFXLyi+Wlg6XFUKoJvMxJygc5oNSVca+OQ08zc9jf1ycy+ZPb68UcJQoOAKM QSJJ5TEzGxdEzA7EfXUpGsZNGHH3nDY= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=efficios.com header.s=smtpout1 header.b="h/gVdDqW"; spf=pass (imf28.hostedemail.com: domain of mathieu.desnoyers@efficios.com designates 167.114.26.122 as permitted sender) smtp.mailfrom=mathieu.desnoyers@efficios.com; dmarc=pass (policy=none) header.from=efficios.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727467891; 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=do9ML4Hk0AxmcnfjSbEKMWHE4zyUNN20rP4uubZ5TG0=; b=n8WkVZzBMjtVJAvi0k13+zB+QGdwTXyew68FMPUtWvsMcVWnli6PIAd6BfEKdID5YZN3ev jeP5Ponf6zWKOXjf6MJCgCzsI7UTX2IvH4YOexaMOS1JSaYB5KeRJANBVaOJWePQEewVZu Gv+DMvPjoY7ZRsBlkr3Lo6f6o9yTlJ0= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=efficios.com; s=smtpout1; t=1727467949; bh=giYaesQDn/2SyGYHPHFv51rKO/LSurqf9VIA4G1DfXo=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=h/gVdDqWm/SS892LiCq+fgT33YFdAPHAxwlH9+UWeKHgPVdc7bc/tgiqXEpouAlO1 qLxRwOMf1oGIKWfL8m1tnkw/5q0czWgmROZIJtEMof+Mc5GFh+h0TiQZB+3Nft7nKO 5lxvA5J08rSnVlJRKM5V8plqzEfCcSEGn1+IxgUADjj4OW0bPl6L+bSpVk+F1koTU5 Xo8+OK17DXBvFqRjU3iIICo8IHab0Hd7OZKtofWor67rsDnUZMglqv4AYlgddx3rsz NcmQrGRfZPallzkvkih/4r9w0ueaUYeEd4K9tMpBOTteFxxKV+93CSXixgKlk6H3Dz Hr+XeRd+oBkcA== Received: from [IPV6:2606:6d00:100:4000:cacb:9855:de1f:ded2] (unknown [IPv6:2606:6d00:100:4000:cacb:9855:de1f:ded2]) by smtpout.efficios.com (Postfix) with ESMTPSA id 4XFhTT2srmz1RXx; Fri, 27 Sep 2024 16:12:29 -0400 (EDT) Message-ID: Date: Fri, 27 Sep 2024 16:10:25 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH 1/4] hazptr: Add initial implementation of hazard pointers To: Jonas Oberhauser , Boqun Feng Cc: Linus Torvalds , 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 References: <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> <62508c1f-66ca-450d-abb6-236ca3b9096d@huaweicloud.com> From: Mathieu Desnoyers Content-Language: en-US In-Reply-To: <62508c1f-66ca-450d-abb6-236ca3b9096d@huaweicloud.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Stat-Signature: u1bzstypaxq68a5ueo5qpxm1sfpfsoww X-Rspamd-Queue-Id: 7C9E7C0014 X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1727467954-946333 X-HE-Meta: U2FsdGVkX18nH2Euw4EJ+KLjAEbx60weot+xpqNgFKxh/+1GaN2okxjiimkGFI4buTtCmGfJdR5ADGW/o9Y5Xr2CFjbgAr3Xo1mxcsC2GxyUTHcikbKscbiRqCjLKbDogBRudBf4uHv3BCjTZIrj8udrSy/NFh4K1dL/vuSMDSTuiiWhviWKNYlXLD6bs3AIAPCfArrWysqc4GERU57eXctBYKbye8SNdGHurqk/YVYiihRJvqR54WtL/q44xv+bmD0iKctVokfiDa8dRPjIpJjHEI5lSjGVDpkRFPeCHBd+EBnAeqBwXZhs2HHKrksJYeLdt1AiSJFMNOv+0lDd7XxmKz1byMNVSTVHx97qbTH/x3YZqJMq4UkeBaYDiWJL05Q2mV6Z6Aqz2TnSXwXbtICHzjlVn8gz35FltwdahQlScjP89IaIu3QVNYKajmNc5yiWw+Jj+48IQZ9ExAVJNPqWYTeltPo4B6YxW3DPjIVvbObX6iTbttn3+MgW2u5s90EWgOPMEHMNchCx+5L7O1NxO8pnkbPVxLAET960wcYfA8ORqL/LOlTD00JawAqH6qtwJMXdtxvxYaW3zOh1oUMKqe143ZFeWQ3xdb18M5avcBhmnfU0RmpuXKXxBriZmVrtG26ZeRU7W4Vkdd9ncCSEUpUo9Dk9jQYXAATfP2PDvEDaPQxYyu9/pVSB2iOSmLMDPNRJfcVqO428y87r2oUMtXxTpVfgBMiawQ9PTyUG8OZ40ZG2teo0WUKXZJ3Oai0JjQKXXTBwouXeoYnGh8xBHPlk+XvjWAELij1Ar4M9YLgBWUoiv3WuVkh84fDyxZCKIS0W4Dn48UIpjjUYbmBKiLEvWECNCu/3ytig9Wwd8p/vssU7sQA5hbIf9zFji+xTRrf8oqwHj5sjCmbNf5DkISJ5ErqoiEQFF6HcJ36W4hbqaTfJvlxql1GMinMUNXSmDz4H2r+J/7TaynL C66Uhqor bvSJVfH6LMd8onf36dWYng6XhQqwLSyC+2oar8X1GmWF2yW41KZIJlKpVqjgUjMg1rrs0uoCSFXXwbQLPcJeKQiIMGy92cZhO07RmAFvttzpmUcUuEKalqSMuETw0TuTYfkgl89vsi62q9kHSGfqPp+aOIEGBjElmvCjHIKjCdtrxTJxxwAzTO58PbG2nJfP+Vh7TSriCU5CusCufRHsA1/IcA2UXEDaGbDZDlxYRtlh48rTJicKNahFIoumIn+J1/l/kZdrX32Qn0Sf2jk4qE+YAFdqgLin5+el7ylrb4J50gm4EFY0u9jw47u7Rv6Se+PDn1E67h9ea4dqBucxPPNMJMKa0xwBpPPrTaSDDr5NTbgQOFXxpl5CCXY8xoerfdqkS0cnkoDqThThM5uZnSpCyeZmSrh/a8lCDu8HtbqsRDiciKbory/HBj+bwGQBnzfUJpFyXimJ6UodLX4fPqzm8lshyIPGy5/liVV6bnZ30q6hLFR8q9rvA39HnKtJz0GC8NPa/3LEOiDZ196jMHVg9zw+rsPwFznCO 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 2024-09-27 21:23, Jonas Oberhauser wrote: [...] > That idea seems to be confirmed by this (atrocious, not to be copied!) > example: > > int fct_escape_address_of_b(void) > { >     int *a, *b; > >     do { >         a = READ_ONCE(p); >         asm volatile ("" : : : "memory"); >         b = READ_ONCE(p); >     } while (a != b); > >     // really really hide b >     int **p = &b; >     OPTIMIZER_HIDE_VAR(p); > >     asm volatile ("" : : : "memory"); >     return *b; > } > > This also does not generate any additional instructions, unlike just > using OPTIMIZER_HIDE_VAR(b). > > What is the advantage of defining OPTIMIZE_HIDE_VAR the way it currently > works instead of like above? Did you try it on godbolt.org ? Does it have the intended effect ? By the looks of it, you're just creating another version of @b called "p", which is then never used and would be discarded by further optimization. I'm unsure what you are trying to achieve here. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. https://www.efficios.com