[{"id":3672624,"web_url":"http://patchwork.ozlabs.org/comment/3672624/","msgid":"<20260402095747.6efbd456@pumpkin>","list_archive_url":null,"date":"2026-04-02T08:57:47","subject":"Re: [PATCH] cmpxchg: allow const-qualified old value in cmpxchg()","submitter":{"id":89989,"url":"http://patchwork.ozlabs.org/api/people/89989/","name":"David Laight","email":"david.laight.linux@gmail.com"},"content":"On Thu, 02 Apr 2026 14:56:01 +0800\nHangbin Liu <liuhangbin@gmail.com> wrote:\n\n> The old value passed to cmpxchg() is semantically read-only: it is\n> only loaded into a register as a comparand and is never written back.\n> However, the macro currently assigns it implicitly to a local variable\n> of type __typeof__(*(ptr)), which triggers -Werror=discarded-qualifiers\n> when old is a const-qualified pointer and ptr points to a non-const type.\n> \n> To avoid this, let's add an explicit cast to __typeof__(*(ptr)) for the\n> old local variable in the cmpxchg macros. This explicit cast suppresses\n> the -Wdiscarded-qualifiers diagnostic.\n> \n> The new value is intentionally left without a cast: new will be stored\n> into *ptr, so silently accepting a const-qualified new would allow\n> callers to store a pointer-to-const into a non-const location without\n> any compiler warning.\n> \n> Suggested-by: Jakub Kicinski <kuba@kernel.org>\n> Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>\n...\n> \n> diff --git a/arch/alpha/include/asm/cmpxchg.h b/arch/alpha/include/asm/cmpxchg.h\n> index ae1b96479d0c..b4b8dac759c4 100644\n> --- a/arch/alpha/include/asm/cmpxchg.h\n> +++ b/arch/alpha/include/asm/cmpxchg.h\n> @@ -234,7 +234,7 @@ ____cmpxchg(volatile void *ptr, unsigned long old, unsigned long new,\n>  \n>  #define arch_cmpxchg_local(ptr, o, n)\t\t\t\t\t\\\n>  ({\t\t\t\t\t\t\t\t\t\\\n> -\t__typeof__(*(ptr)) _o_ = (o);\t\t\t\t\t\\\n> +\t__typeof__(*(ptr)) _o_ = (__typeof__(*(ptr)))(o);\t\t\\\n>  \t__typeof__(*(ptr)) _n_ = (n);\t\t\t\t\t\\\n>  \t(__typeof__(*(ptr))) ____cmpxchg((ptr), (unsigned long)_o_,\t\\\n>  \t\t\t\t\t  (unsigned long)_n_,\t\t\\\n\nThat looks like it loses the check that 'o' has the same type as '*ptr'.\nMaybe this works?\n\tauto _o_ = 1 ? (o) : *(ptr);\n\n  David","headers":{"Return-Path":"\n <SRS0=HCO/=CB=vger.kernel.org=sparclinux+bounces-6626-patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","sparclinux@vger.kernel.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","patchwork-incoming@ozlabs.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=N43yz0Pb;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=ozlabs.org\n (client-ip=2404:9400:2221:ea00::3; helo=mail.ozlabs.org;\n envelope-from=srs0=hco/=cb=vger.kernel.org=sparclinux+bounces-6626-patchwork-incoming=ozlabs.org@ozlabs.org;\n receiver=patchwork.ozlabs.org)","gandalf.ozlabs.org;\n arc=pass smtp.remote-ip=172.234.253.10 arc.chain=subspace.kernel.org","gandalf.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","gandalf.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=N43yz0Pb;\n\tdkim-atps=neutral","gandalf.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=sparclinux+bounces-6626-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=\"N43yz0Pb\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=209.85.128.41","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=gmail.com"],"Received":["from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmbVS5C72z1yFv\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 02 Apr 2026 20:03:11 +1100 (AEDT)","from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\tby gandalf.ozlabs.org (Postfix) with ESMTP id 4fmbVR546Xz4wTC\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 02 Apr 2026 20:03:11 +1100 (AEDT)","by gandalf.ozlabs.org (Postfix)\n\tid 4fmbVR4z8gz4wT0; Thu, 02 Apr 2026 20:03:11 +1100 (AEDT)","from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby gandalf.ozlabs.org (Postfix) with ESMTPS id 4fmbVN2MxJz4wTC\n\tfor <patchwork-incoming@ozlabs.org>; Thu, 02 Apr 2026 20:03:08 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id A1D683011C71\n\tfor <patchwork-incoming@ozlabs.org>; Thu,  2 Apr 2026 08:57:54 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 77C903A1CF9;\n\tThu,  2 Apr 2026 08:57:54 +0000 (UTC)","from mail-wm1-f41.google.com (mail-wm1-f41.google.com\n [209.85.128.41])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id F344C32142B\n\tfor <sparclinux@vger.kernel.org>; Thu,  2 Apr 2026 08:57:51 +0000 (UTC)","by mail-wm1-f41.google.com with SMTP id\n 5b1f17b1804b1-48334ee0aeaso5220075e9.1\n        for <sparclinux@vger.kernel.org>;\n Thu, 02 Apr 2026 01:57:51 -0700 (PDT)","from pumpkin (82-69-66-36.dsl.in-addr.zen.co.uk. [82.69.66.36])\n        by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-4887e735532sm217845265e9.0.2026.04.02.01.57.48\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Thu, 02 Apr 2026 01:57:49 -0700 (PDT)"],"ARC-Seal":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707; t=1775120591; cv=pass;\n\tb=vGTtnJkCilV9/8qy3qQ4RsecV6m3/eCdGJtf/IFZrL8zOvTP6Af9ltFEVwwOp6bz4XmVx8UhZN/SHZYCGfSXqwUIAQQXKdotceP8IhTiYPPs3MrIy0VT+d4nREaT3PWA8PRQB+9LTWIQB5Z083qwSKosyLVEXH11Qr62p64iExC64z25hw7ncDduT4xRs18kepOFQtdiws5DqJ1T85tTHOEfgPEFUODxoPdNBuK2FlxtfZTTKyRqRQhUu4FFFu9GznmnK3ebxHiaHsvLJlR+6F/erRSGY4xkpIjbblqKwv3doLzv30tmJ13OK/a754QUyAx8Au11YR6OGkiczFRpNw==","i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775120274; cv=none;\n b=sEPWztWybEwg55duGXXlm6Pl8hKTaXox/NEEMlgC8YG6uCBqQJhfaPvZYfWi9E+CZ5ILwjJgDZykxEj2LITfvrUSR9IqHINw613PcQbxHKiP+F1gHDeEMgBw3gMHbrYo+v1OUjYHADqf7zrcoLCrlG3z/OGS2zYRoY5I7ldZ2gU="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707;\n\tt=1775120591; c=relaxed/relaxed;\n\tbh=LnQTQFMkaspyfTBlP7NJBNzFuL146lWNPT7LvqeL2XU=;\n\th=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References:\n\t MIME-Version:Content-Type;\n b=PpEAt4K+ehVBkLWACLQhC05oX6FpuU69keid/zJIkOJjTnDGYy6dI+T3kaEJpGX08tU4I4Rw7I7Bfgh+AsWNFoccwu3w5Xh8dNSvH57umhHf+ow6ikg79bR7AbqL/uxNWBa/Mdt+nyTDhJOUKtHi1i8NT/ZFVP6EtFLN8Da6JBa7XmOwLNTcuRJbiEL6ogAESjVIveknpfHX72+dEZzb1gbvYdV2UhK/yWfiUOUNYOtfPG3mO5IE/MWbEeITykGj1JuZlpBL30hH0Tza/1iJOI6yrdM0fVk3cphT+2vfFOTYtQmMXn9jh52RAo4ik43faZ/zPiACexN1y2f2t/mjbQ==","i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775120274; c=relaxed/simple;\n\tbh=7tyJ0+wz5LzsOmdaY0Yimnd2RzEPrZZv3nZHEii7oEs=;\n\th=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References:\n\t MIME-Version:Content-Type;\n b=m6FrOcUzGDS8+w0J59q7OEME5qknuRJDkAjHjx4UYYaLsGkMBoU2XXdgXnBmRZ7vyiNVGyIn78ZZk9pT8+JdhZVzcRhdGb+BDgl8i0vY2W8OdiQ2Q4TP99bRzm8B61ZIBsYfDfVrKGTb2lCZsP6GWX5DixbaQDlLc4ScLiX/56s="],"ARC-Authentication-Results":["i=2; gandalf.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com; dkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=N43yz0Pb; dkim-atps=neutral;\n spf=pass (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=sparclinux+bounces-6626-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org) smtp.mailfrom=vger.kernel.org","i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com;\n spf=pass smtp.mailfrom=gmail.com;\n dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=N43yz0Pb; arc=none smtp.client-ip=209.85.128.41"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=gmail.com; s=20251104; t=1775120270; x=1775725070;\n darn=vger.kernel.org;\n        h=content-transfer-encoding:mime-version:references:in-reply-to\n         :message-id:subject:cc:to:from:date:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=LnQTQFMkaspyfTBlP7NJBNzFuL146lWNPT7LvqeL2XU=;\n        b=N43yz0PbY37tKQwLI7fxz/TezjohnBPHceaTDSIHXJZ3lR+l7erEdzyuYI3/5fRC/P\n         aKbwZiXH/cRosXudrYOUKNUT8TPbaLVOs6PeIW/HuQH5TsnCf4Fm5Sgo24YdKsa6ii/U\n         /fju0wbiv5lfrFjides8gma93qJvGrmo2JqMyd4NJj0a7E9wY3w+nIAyjyJTMEfvk7PG\n         g3zBjCmG4+hbFTu/luNZzrq8m7P9/XsoiMeRQT/rmz73FwKb6JnSjpaUqV0ZmOFNtuUi\n         vKFA8PaRd5wgturtCUT32KaTz75xIUFFg4zOpfG2jjDwyipSacuYVDVzYgsXBFUpnDzh\n         LkIA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775120270; x=1775725070;\n        h=content-transfer-encoding:mime-version:references:in-reply-to\n         :message-id:subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from\n         :to:cc:subject:date:message-id:reply-to;\n        bh=LnQTQFMkaspyfTBlP7NJBNzFuL146lWNPT7LvqeL2XU=;\n        b=T51A111q9Htw8I3whir+5u0PcpykjPusXRl6hKYxa7VX70YRkPBx34hMOrrqYMkApI\n         8/u0JGhPSMDRV4O/ebb4ccdxlF+o51QJzBU9OGmWnnn4yRq0vGWRC38BV4RzB+nTo9Rj\n         +KQIFA7r1z4yxGrfuPZUlb5NfZHHa2dBF/hldr62P04Odt585FLjWRfKMg1gb5N8dvI3\n         6BhPmbfSSmEig8cMBP/Hv33c+IVe5Ev7rKQ6dEszZ636gUnPr2Clk0CPhi+yJfpdoECE\n         kcHrRuJqzUmGeifY9Mev3EyPz3TNe5QArglgiVWOASarlIxBnyCyXEN/TZQCLVLSIM+3\n         NfyA==","X-Forwarded-Encrypted":"i=1;\n AJvYcCUZBI3W0YH+fj9b+n2GtR1xABanhsW3G67bw9E6Nf+EuFKbSGjH9UK+Ne7ZnL5kYgFhc2YWyNnb4cjw@vger.kernel.org","X-Gm-Message-State":"AOJu0YyphLjTNrJYMDXpkq6OzmlSR/8b1TqQk4DniBcinue1O5SUOq9D\n\t9Y3bsSYHzZ8i6dDe/rIJbanLkgwsHRV9J+YwCadt2q3+TY/FYVL6a8R7","X-Gm-Gg":"ATEYQzxvn9Lt+yPPGw+zhDzEAJxa+z/cpCZ7eSFrv8jwXqGRrW7oruwtfZlVrhJewJR\n\tOXxsza4xEKiYLSmTYdcW+WRHymp+9SkhK8sw9/5rOPP480AO5uUJZHG2EzS/HRWNkoN4kQC0noG\n\t1wcLAPgfFQm//dv4484xKltrUzusQMgi99G7zpFwu6NSRQUwv0MgQ8ipqCWxo3U9HF5gntcX0nJ\n\t5Zso19LH/E/+sd+DHvlDccVv2cMekoBKYax9X6D3E7ZJAuO/00qWyV/BcDRxCQS7qFyXz9JFsD2\n\t0ts4zNkNWcw/bhxnFa5VYPJmTCnrCSlrWCP6b/USSPOc4Ahc63qjNNiy/iA1ZBi10pr6hi4j6On\n\thQO+GQXw6mdOtxnTnrELlNIl6Y4mYhikbJscCxz60AKs5C7dJ9JDi8jB40sVO2eyKY/3ifhPFns\n\tZpn5qJA+vSnP6DovrtF0s8rrS1TN8D7AH4fph6ZM37TWzT48u9L8TWqQrFYBBa","X-Received":"by 2002:a05:600c:630f:b0:487:288:1198 with SMTP id\n 5b1f17b1804b1-4888359da58mr102555095e9.22.1775120270131;\n        Thu, 02 Apr 2026 01:57:50 -0700 (PDT)","Date":"Thu, 2 Apr 2026 09:57:47 +0100","From":"David Laight <david.laight.linux@gmail.com>","To":"Hangbin Liu <liuhangbin@gmail.com>","Cc":"Richard Henderson <richard.henderson@linaro.org>, Matt Turner\n <mattst88@gmail.com>, Magnus Lindholm <linmag7@gmail.com>, Vineet Gupta\n <vgupta@kernel.org>, Brian Cain <bcain@kernel.org>, \"James E.J. Bottomley\"\n <James.Bottomley@HansenPartnership.com>, Helge Deller <deller@gmx.de>,\n Madhavan Srinivasan <maddy@linux.ibm.com>, Michael Ellerman\n <mpe@ellerman.id.au>, Nicholas Piggin <npiggin@gmail.com>, \"Christophe\n Leroy (CS GROUP)\" <chleroy@kernel.org>, Paul Walmsley <pjw@kernel.org>,\n Palmer Dabbelt <palmer@dabbelt.com>, Albert Ou <aou@eecs.berkeley.edu>,\n Alexandre Ghiti <alex@ghiti.fr>, Yoshinori Sato\n <ysato@users.sourceforge.jp>, Rich Felker <dalias@libc.org>, John Paul\n Adrian Glaubitz <glaubitz@physik.fu-berlin.de>, \"David S. Miller\"\n <davem@davemloft.net>, Andreas Larsson <andreas@gaisler.com>, Thomas\n Gleixner <tglx@kernel.org>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov\n <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org,\n \"H. Peter Anvin\" <hpa@zytor.com>, Chris Zankel <chris@zankel.net>, Max\n Filippov <jcmvbkbc@gmail.com>, linux-alpha@vger.kernel.org,\n linux-kernel@vger.kernel.org, linux-snps-arc@lists.infradead.org,\n linux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,\n linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org,\n linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, Jakub Kicinski\n <kuba@kernel.org>","Subject":"Re: [PATCH] cmpxchg: allow const-qualified old value in cmpxchg()","Message-ID":"<20260402095747.6efbd456@pumpkin>","In-Reply-To":"<20260402-cmpxchg-v1-1-4561e2c05d2c@gmail.com>","References":"<20260402-cmpxchg-v1-1-4561e2c05d2c@gmail.com>","X-Mailer":"Claws Mail 4.1.1 (GTK 3.24.38; arm-unknown-linux-gnueabihf)","Precedence":"bulk","X-Mailing-List":"sparclinux@vger.kernel.org","List-Id":"<sparclinux.vger.kernel.org>","List-Subscribe":"<mailto:sparclinux+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:sparclinux+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=US-ASCII","Content-Transfer-Encoding":"7bit","X-Spam-Status":"No, score=-1.2 required=5.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DMARC_PASS,\n\tFREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,\n\tMAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=disabled\n\tversion=4.0.1","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on gandalf.ozlabs.org"}},{"id":3672660,"web_url":"http://patchwork.ozlabs.org/comment/3672660/","msgid":"<20260402104733.GZ3738786@noisy.programming.kicks-ass.net>","list_archive_url":null,"date":"2026-04-02T10:47:33","subject":"Re: [PATCH] cmpxchg: allow const-qualified old value in cmpxchg()","submitter":{"id":493,"url":"http://patchwork.ozlabs.org/api/people/493/","name":"Peter Zijlstra","email":"peterz@infradead.org"},"content":"On Thu, Apr 02, 2026 at 02:56:01PM +0800, Hangbin Liu wrote:\n> The old value passed to cmpxchg() is semantically read-only: it is\n> only loaded into a register as a comparand and is never written back.\n> However, the macro currently assigns it implicitly to a local variable\n> of type __typeof__(*(ptr)), which triggers -Werror=discarded-qualifiers\n> when old is a const-qualified pointer and ptr points to a non-const type.\n> \n> To avoid this, let's add an explicit cast to __typeof__(*(ptr)) for the\n> old local variable in the cmpxchg macros. This explicit cast suppresses\n> the -Wdiscarded-qualifiers diagnostic.\n> \n> The new value is intentionally left without a cast: new will be stored\n> into *ptr, so silently accepting a const-qualified new would allow\n> callers to store a pointer-to-const into a non-const location without\n> any compiler warning.\n> \n> Suggested-by: Jakub Kicinski <kuba@kernel.org>\n> Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>\n> ---\n\nWhere is this a problem? I've never seen this. Also, new code should\nprobably use try_cmpxchg() anyway.","headers":{"Return-Path":"\n <SRS0=nb5O=CB=vger.kernel.org=sparclinux+bounces-6627-patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","sparclinux@vger.kernel.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","patchwork-incoming@ozlabs.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n secure) header.d=infradead.org header.i=@infradead.org header.a=rsa-sha256\n header.s=desiato.20200630 header.b=fWHvfBdk;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=ozlabs.org\n (client-ip=150.107.74.76; helo=mail.ozlabs.org;\n envelope-from=srs0=nb5o=cb=vger.kernel.org=sparclinux+bounces-6627-patchwork-incoming=ozlabs.org@ozlabs.org;\n receiver=patchwork.ozlabs.org)","gandalf.ozlabs.org;\n arc=pass smtp.remote-ip=172.234.253.10 arc.chain=subspace.kernel.org","gandalf.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=infradead.org","gandalf.ozlabs.org;\n\tdkim=pass (2048-bit key;\n secure) header.d=infradead.org header.i=@infradead.org header.a=rsa-sha256\n header.s=desiato.20200630 header.b=fWHvfBdk;\n\tdkim-atps=neutral","gandalf.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=sparclinux+bounces-6627-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org\n header.b=\"fWHvfBdk\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=90.155.92.199","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=infradead.org","smtp.subspace.kernel.org;\n spf=none smtp.mailfrom=infradead.org"],"Received":["from mail.ozlabs.org (gandalf.ozlabs.org [150.107.74.76])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmdqc3QsWz1yGJ\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 02 Apr 2026 21:48:12 +1100 (AEDT)","from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\tby gandalf.ozlabs.org (Postfix) with ESMTP id 4fmdqc2qsSz4wTK\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 02 Apr 2026 21:48:12 +1100 (AEDT)","by gandalf.ozlabs.org (Postfix)\n\tid 4fmdqc2kjlz4wT9; Thu, 02 Apr 2026 21:48:12 +1100 (AEDT)","from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby gandalf.ozlabs.org (Postfix) with ESMTPS id 4fmdqX0vk4z4wTK\n\tfor <patchwork-incoming@ozlabs.org>; Thu, 02 Apr 2026 21:48:07 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 7F6DD3018284\n\tfor <patchwork-incoming@ozlabs.org>; Thu,  2 Apr 2026 10:48:04 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id DD021376BF1;\n\tThu,  2 Apr 2026 10:48:02 +0000 (UTC)","from desiato.infradead.org (desiato.infradead.org [90.155.92.199])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 2558332F765;\n\tThu,  2 Apr 2026 10:48:01 +0000 (UTC)","from\n 2001-1c00-8d85-4b00-266e-96ff-fe07-7dcc.cable.dynamic.v6.ziggo.nl\n ([2001:1c00:8d85:4b00:266e:96ff:fe07:7dcc]\n helo=noisy.programming.kicks-ass.net)\n\tby desiato.infradead.org with esmtpsa (Exim 4.98.2 #2 (Red Hat Linux))\n\tid 1w8FaH-00000002G2g-3cX8;\n\tThu, 02 Apr 2026 10:47:34 +0000","by noisy.programming.kicks-ass.net (Postfix, from userid 1000)\n\tid 53C6A30301D; Thu, 02 Apr 2026 12:47:33 +0200 (CEST)"],"ARC-Seal":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707; t=1775126892; cv=pass;\n\tb=AAo6uUFoAUtKxgzGLSwF7fv/o0Q5rE0A2jT52ohUbeyJwilgZ+K8FBqWpeBWkJH8qQw1HWfCAZUUEEYAMnVFQ+S1VSRnJVjDdKj058x7wwS2EmrcqRCXkJm74vIXEUW1fkA/b+jXZnTf0s5r/3YpHEgH5YpePx2vWnDvoEa4uijJSN7zWFfrfWSTHyz5OHf0MtlnVzKLkzi12/YiyeVhY0/N8YZ/eSaDYpktonlarx61lkR5QDH5noZnNYCeMC2nU/cLuQUBsfm1+3tk+HxTn99vidMfCfbzPy6MwL3WJSGSQnfjXEUGE6mKSd4lkAio7dHWIcns1EOJCBlTJd25Jw==","i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775126882; cv=none;\n b=Qi1aZ2DD99D72T4/Xjm+aqmQO4S8S8pqMzeaYooX2FnyeR3eUz0ixd+PDfRRKD2S229PoIZP9JaA4SxVBkD5q7YLnb3+AY5byCYK4zaLXx7Aa8X5SbVruSjkrsFh9l58lbGJmpOTLKqn/V2FbHCSvxsIZDuNP0Zv2F1r/r6FNrI="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707;\n\tt=1775126892; c=relaxed/relaxed;\n\tbh=WuSnxkIyTO13mUz+vZ1/ml/c/eqQ5D0dK9NUy7xy4Pw=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=CUoKGu/gtechkMDfqsjmFLrjaubum4qOcGr5RH1+TC7lJOsk+1clP1Hz2iBGCt2BITTtTQgQMsj3B4Nnvg7DZDJSZ+KcSubuCzyqZs30disgAywoPNyDLtkpK9+cJ+E1SgymNszye41OHek8RdJ2/Az/TiBm5TCczchR3yU7SSSpZNVM6l53yAT0xNMsfKFCYvAUmOcBBbPgU8RDBazvsa/lkD0d+ty6infkVMuAqD5V/Fc6p31zpNpiQcOTX874tzWPvXnWi6nfEEDub2L9QGx949wDxk24imOTakbMHjKo9ksw68Ur3rfFgd6XlH27HJxYgr5EPgtPQmeGOHXHKg==","i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775126882; c=relaxed/simple;\n\tbh=B230Lbw6fdE5XbZzjmhRsROXtHpz0lHvjcVdYsqv3+g=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=ZQWt6Nr37FWfzA1bhgeZJ9wm6ydWy6ARmHnJjKJ+TCcDJawpUs6lzNh3sEusPGjpECP0vZUqKN4OfdJAAAJ6HobNuJKFZ8rIUXvAoCGofJY+BK9NoZGogeaIr1PGdggGynBbbtoOgcIBG5DtZVYt/01T3FJ4Y9h3pxqmMhNY8rg="],"ARC-Authentication-Results":["i=2; gandalf.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=infradead.org;\n dkim=pass (2048-bit key;\n secure) header.d=infradead.org header.i=@infradead.org header.a=rsa-sha256\n header.s=desiato.20200630 header.b=fWHvfBdk; dkim-atps=neutral;\n spf=pass (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=sparclinux+bounces-6627-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org) smtp.mailfrom=vger.kernel.org","i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=infradead.org;\n spf=none smtp.mailfrom=infradead.org;\n dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org\n header.b=fWHvfBdk; arc=none smtp.client-ip=90.155.92.199"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version:\n\tReferences:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To:\n\tContent-Transfer-Encoding:Content-ID:Content-Description;\n\tbh=WuSnxkIyTO13mUz+vZ1/ml/c/eqQ5D0dK9NUy7xy4Pw=; b=fWHvfBdkYBp1lDE/7yjJLeJyG4\n\tTDG024jO+otVJtwiymsQjjwAfzXysI0Ne/Hap+hOUQ6HF3At22XcXejbtpYlWZVb7GLO9iSy8lBz/\n\txXoiPgVJTNjnS6NdQ+JrLTq5kguJS2cahxS6gs3sXaw3b07PcCyOKgqMNnJYuSMZkSWQ1zbwrH1lL\n\toQvCfWFVfYg2y5n87Si+3p5rgef7vqX5HJwvSTsRp8czWpsWUtQti6XMSrgnlzRPw7jmDhnI0sbSY\n\tFLNqQFUUhtoZK6LgqB9dMKy1Plr2pBXtNoo1Rj1bEdri+YGju2kRuh4KtAyO/E8p9i0u4EW5ey6u+\n\tj2zCRXxw==;","Date":"Thu, 2 Apr 2026 12:47:33 +0200","From":"Peter Zijlstra <peterz@infradead.org>","To":"Hangbin Liu <liuhangbin@gmail.com>","Cc":"Richard Henderson <richard.henderson@linaro.org>,\n\tMatt Turner <mattst88@gmail.com>,\n\tMagnus Lindholm <linmag7@gmail.com>,\n\tVineet Gupta <vgupta@kernel.org>, Brian Cain <bcain@kernel.org>,\n\t\"James E.J. Bottomley\" <James.Bottomley@hansenpartnership.com>,\n\tHelge Deller <deller@gmx.de>,\n\tMadhavan Srinivasan <maddy@linux.ibm.com>,\n\tMichael Ellerman <mpe@ellerman.id.au>,\n\tNicholas Piggin <npiggin@gmail.com>,\n\t\"Christophe Leroy (CS GROUP)\" <chleroy@kernel.org>,\n\tPaul Walmsley <pjw@kernel.org>, Palmer Dabbelt <palmer@dabbelt.com>,\n\tAlbert Ou <aou@eecs.berkeley.edu>, Alexandre Ghiti <alex@ghiti.fr>,\n\tYoshinori Sato <ysato@users.sourceforge.jp>,\n\tRich Felker <dalias@libc.org>,\n\tJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,\n\t\"David S. Miller\" <davem@davemloft.net>,\n\tAndreas Larsson <andreas@gaisler.com>,\n\tThomas Gleixner <tglx@kernel.org>, Ingo Molnar <mingo@redhat.com>,\n\tBorislav Petkov <bp@alien8.de>,\n\tDave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org,\n\t\"H. Peter Anvin\" <hpa@zytor.com>, Chris Zankel <chris@zankel.net>,\n\tMax Filippov <jcmvbkbc@gmail.com>, linux-alpha@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org, linux-snps-arc@lists.infradead.org,\n\tlinux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,\n\tlinuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org,\n\tlinux-sh@vger.kernel.org, sparclinux@vger.kernel.org,\n\tJakub Kicinski <kuba@kernel.org>","Subject":"Re: [PATCH] cmpxchg: allow const-qualified old value in cmpxchg()","Message-ID":"<20260402104733.GZ3738786@noisy.programming.kicks-ass.net>","References":"<20260402-cmpxchg-v1-1-4561e2c05d2c@gmail.com>","Precedence":"bulk","X-Mailing-List":"sparclinux@vger.kernel.org","List-Id":"<sparclinux.vger.kernel.org>","List-Subscribe":"<mailto:sparclinux+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:sparclinux+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"<20260402-cmpxchg-v1-1-4561e2c05d2c@gmail.com>","X-Spam-Status":"No, score=-1.2 required=5.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DMARC_PASS,\n\tHEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,\n\tSPF_PASS autolearn=disabled version=4.0.1","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on gandalf.ozlabs.org"}},{"id":3672715,"web_url":"http://patchwork.ozlabs.org/comment/3672715/","msgid":"<ac5qIUS5azbWAc9q@fedora>","list_archive_url":null,"date":"2026-04-02T13:07:45","subject":"Re: [PATCH] cmpxchg: allow const-qualified old value in cmpxchg()","submitter":{"id":15639,"url":"http://patchwork.ozlabs.org/api/people/15639/","name":"Hangbin Liu","email":"liuhangbin@gmail.com"},"content":"On Thu, Apr 02, 2026 at 09:57:47AM +0100, David Laight wrote:\n> > diff --git a/arch/alpha/include/asm/cmpxchg.h b/arch/alpha/include/asm/cmpxchg.h\n> > index ae1b96479d0c..b4b8dac759c4 100644\n> > --- a/arch/alpha/include/asm/cmpxchg.h\n> > +++ b/arch/alpha/include/asm/cmpxchg.h\n> > @@ -234,7 +234,7 @@ ____cmpxchg(volatile void *ptr, unsigned long old, unsigned long new,\n> >  \n> >  #define arch_cmpxchg_local(ptr, o, n)\t\t\t\t\t\\\n> >  ({\t\t\t\t\t\t\t\t\t\\\n> > -\t__typeof__(*(ptr)) _o_ = (o);\t\t\t\t\t\\\n> > +\t__typeof__(*(ptr)) _o_ = (__typeof__(*(ptr)))(o);\t\t\\\n> >  \t__typeof__(*(ptr)) _n_ = (n);\t\t\t\t\t\\\n> >  \t(__typeof__(*(ptr))) ____cmpxchg((ptr), (unsigned long)_o_,\t\\\n> >  \t\t\t\t\t  (unsigned long)_n_,\t\t\\\n> \n> That looks like it loses the check that 'o' has the same type as '*ptr'.\n> Maybe this works?\n> \tauto _o_ = 1 ? (o) : *(ptr);\n> \nOh, I didn't notice this. Thanks for the comment!\n\nBest Regards\nHangbin","headers":{"Return-Path":"\n <SRS0=HGPI=CB=vger.kernel.org=sparclinux+bounces-6628-patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","sparclinux@vger.kernel.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","patchwork-incoming@ozlabs.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=PJY3Xeej;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=ozlabs.org\n (client-ip=2404:9400:2221:ea00::3; helo=mail.ozlabs.org;\n envelope-from=srs0=hgpi=cb=vger.kernel.org=sparclinux+bounces-6628-patchwork-incoming=ozlabs.org@ozlabs.org;\n receiver=patchwork.ozlabs.org)","gandalf.ozlabs.org;\n arc=pass smtp.remote-ip=\"2600:3c09:e001:a7::12fc:5321\"\n arc.chain=subspace.kernel.org","gandalf.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","gandalf.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=PJY3Xeej;\n\tdkim-atps=neutral","gandalf.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c09:e001:a7::12fc:5321; helo=sto.lore.kernel.org;\n envelope-from=sparclinux+bounces-6628-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=\"PJY3Xeej\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=209.85.216.48","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=gmail.com"],"Received":["from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1 raw public key)\n server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmhzV2fDbz1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 00:10:14 +1100 (AEDT)","from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\tby gandalf.ozlabs.org (Postfix) with ESMTP id 4fmhzV0z7gz4wT1\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 00:10:14 +1100 (AEDT)","by gandalf.ozlabs.org (Postfix)\n\tid 4fmhzV0vz2z4wTW; Fri, 03 Apr 2026 00:10:14 +1100 (AEDT)","from sto.lore.kernel.org (sto.lore.kernel.org\n [IPv6:2600:3c09:e001:a7::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby gandalf.ozlabs.org (Postfix) with ESMTPS id 4fmhzQ2Qnhz4wT1\n\tfor <patchwork-incoming@ozlabs.org>; Fri, 03 Apr 2026 00:10:10 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sto.lore.kernel.org (Postfix) with ESMTP id 5BB0130B6E60\n\tfor <patchwork-incoming@ozlabs.org>; Thu,  2 Apr 2026 13:08:11 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id EB65A3DFC85;\n\tThu,  2 Apr 2026 13:08:04 +0000 (UTC)","from mail-pj1-f48.google.com (mail-pj1-f48.google.com\n [209.85.216.48])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 1685A3D9DD4\n\tfor <sparclinux@vger.kernel.org>; Thu,  2 Apr 2026 13:08:01 +0000 (UTC)","by mail-pj1-f48.google.com with SMTP id\n 98e67ed59e1d1-358ed696623so350748a91.0\n        for <sparclinux@vger.kernel.org>;\n Thu, 02 Apr 2026 06:08:01 -0700 (PDT)","from fedora ([209.132.188.88])\n        by smtp.gmail.com with ESMTPSA id\n 98e67ed59e1d1-35dbe41b11fsm7822915a91.0.2026.04.02.06.07.48\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Thu, 02 Apr 2026 06:08:00 -0700 (PDT)"],"ARC-Seal":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707; t=1775135414; cv=pass;\n\tb=JUF7PSCmJXLtbvVUhoL1m9dUYIFHKMgV1df3Z3OKNJNQKr3iSCUamCTm1/ZcfmzVSsE/vCU61B/L1gTSw9ZgY7x28Odd3Yu6aaiq25RuQOFbtlPvvt7w0itBLRr1/iZoSgXu4IeEoQR2bOluSJGtMfgU2YmViTojuHhAaayd+xIUgXyDzDL0Qqy9oPt/ADG58zm+UgQY3Iy2y1G9mw0QwNv6E8cWV4ZCum2/8PIlKLZJI9ORZUDTwDBHaWJ1yzBXD1gbIsj9+oEeU5U0DGDI9/dmvuyA455ZLNTj7Ndx+th/Y+ykn/hrfj6wi4Hp9J2yl4H2JFBigUY5MPA0HumnpA==","i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775135284; cv=none;\n b=VuclCak7SbJsaYma2A2TM5wbkA6AQNFQnEpe7RF6trIxtiorLX29k5LgdXqS3RHtcOrtsyrl3LBD7xyjW7ssgcNNJqrbU3+pGwH7RzL4hOD1b1wM5ysgxQS7nL90K3Trv1t1iatnWhUu7XVIlmo+uSyqxySw0fPseGtQxSK7ERk="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707;\n\tt=1775135414; c=relaxed/relaxed;\n\tbh=KWxJTOWQkri5jmv5ZKMT+tNuIWsfKgbRVKTEMtbqloY=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=j8jfzn3LdQPd3zXu99XlYCEqi0O1XKVZtw91m6mQ7d09nRWtZSrAFwzQnVsjaQ6z2/vdyboCrJ9giF+aNY2qYxkwGf/6ssvw9cWylT6oGabD92L5V/fxD/V2I8SLfIh1kMO9fOtoQDCS47xXFlWL8Vg84qTP3dgHP25/NzK8C+aSlIxrZ9gMZqE2vj2tfQ2l96qeeqIREMJiQNjmNTvpd1v9RBE4ocSpur+SY06mhXMUA/9+imUaWUaNGYgIAdv0dLPuEomNMlEWGHLLw2NMTtXoGr1Jgwem9gJIxVXovnNHI3tnlDZSLvO6T7AXYA2scgtlJshP30vx6H28nWQOfw==","i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775135284; c=relaxed/simple;\n\tbh=J6KuSzBKCDeaYiVgmtuuUSqnvej1+MF06b183JPn5yo=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=Bdc5Y+Gj++AB4rhjYU+u6IcqzkWMB/gKx9cQsFWxX60J9j6BQjIqXkitfN2sNO+HgQAYkxodM+CklXU5IfSojwm71UIXuu8+/fBNRdOc5X1NpC27lkuD2v4iaGp5trP5ysXF13O8jqpGcb4c3uhKmKZT9pWSqSKuzdmF4GCRkqU="],"ARC-Authentication-Results":["i=2; gandalf.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com; dkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=PJY3Xeej; dkim-atps=neutral;\n spf=pass (client-ip=2600:3c09:e001:a7::12fc:5321; helo=sto.lore.kernel.org;\n envelope-from=sparclinux+bounces-6628-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org) smtp.mailfrom=vger.kernel.org","i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com;\n spf=pass smtp.mailfrom=gmail.com;\n dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=PJY3Xeej; arc=none smtp.client-ip=209.85.216.48"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=gmail.com; s=20251104; t=1775135281; x=1775740081;\n darn=vger.kernel.org;\n        h=in-reply-to:content-disposition:mime-version:references:message-id\n         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;\n        bh=KWxJTOWQkri5jmv5ZKMT+tNuIWsfKgbRVKTEMtbqloY=;\n        b=PJY3XeejgWRIMXpyhMO+u6jxmLwxcfufASnNiIpFCkeNcvwAsithilHAfhY5wy/vng\n         3OIgjRGhBHlDo5N7PhFCoMz9TVsP5yETjR5N7Rh3OlGy17wuPY0IkACiql1W0ukMTSqo\n         4KvtkNtw4f3WQUJyfGvDBYgAX7NkxzjN7CDvbMU/GWg+T8UtV8yaT2+0UTb5iIAZrys9\n         clV/yGPMxreSzrM50jf83Q0/nyNXCMX0BSbHk8PawyfpLZbdrSkfZyovK97mRRnBNt3W\n         pKYWlCXTMLNkGPJ/Sf4MSUpboNvn+sfYQcnjUa1aeRK6+dLoCAcQehPMWL8oFNC3pin4\n         1z7g==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775135281; x=1775740081;\n        h=in-reply-to:content-disposition:mime-version:references:message-id\n         :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc\n         :subject:date:message-id:reply-to;\n        bh=KWxJTOWQkri5jmv5ZKMT+tNuIWsfKgbRVKTEMtbqloY=;\n        b=qK/a8M/vuIAjNcq1WX8wThpx4ZsRYS4ZwkKOOazs2XchjvkmsjzndNekTuhCIPNmxL\n         SGOb0lpkwCL38burCff5Jwr3o0dNvvJFLRQx84DXvboBgLrx1lwD1MUkYFYwFm2+389O\n         eq4JDldmC7hdjBigp12SqIO8wEl3ZP3LjoCzh8XH6W26x7IInXljs4WBYnawlTSsuHkG\n         +K7Mct3JtdJfkYPbnyz2OjgZrNSDDomKafc/zYIadRQY+tt/Uc1smQvyZfb0Xw81vRjr\n         BlukrQZOqfw5dQuLbSSqfKQqxjqe1k3Ag37scSLXdGqmrg5qzJN4ErA6XCE5EYztQ7jd\n         jzMg==","X-Forwarded-Encrypted":"i=1;\n AJvYcCV12Ni1TueSRhg0FZAb6QsxZMT5+XRYw3EGMJ7htwI1IU1vkNSYum5WGUrKXnIlHyn4KPCpgM/Bctsz@vger.kernel.org","X-Gm-Message-State":"AOJu0YwsDhfRpBH8oKTnqIPJeMm0Pt/Ry4NqmfxAzhG/IMNKr8CLoIP7\n\ttyZcafGI48sz5PIjLHpmoj8pVVFFvX0Ar8U/UR1EujHgujeG6ateyolu","X-Gm-Gg":"AeBDietoAec+Uwq4Lwgzl5jU7RsWU7j0QiGYASQ3GE+v6h1exOA2WVuMjlmQF3gjNBt\n\trR96k9tML3V4eQy6+r4ySVY6a0Rni8g1PK2u0kIJS+q9oYTjcm7dr6O4cHRBz7s+9ISwVi59MsK\n\t/4E4xk9sSjYVJBfeJAlxqNIoZ9yU+unNYsJ6GTd8wZlkcCQXKAoVXvCwICfJVr+r1mphteeaaul\n\tIehTzWDoXAwPCBY2HnVKCJRg8X+8na7yFGrG6yoXKeQLOkI9twaC8BFmj4VQPrmeK0/EwWGwJI5\n\tkmoPbeGTheVxDwHuqbKSZ1nysPzsdMkIYkZfaSRlqFWCpBKCqw5jxA5Xj3SKAothfozkoAJgH4Q\n\tRLpROzRBL78xSIPLBHNNEMbMHBQ8YwkG20F3HWHz8xmgrRAZ7qyP/aASvVJrk53JRQUP9s5rvXM\n\t3emw1q7iu/YOLPHPpA1shjPjqoPnw=","X-Received":"by 2002:a17:90b:4d81:b0:35d:a412:3c79 with SMTP id\n 98e67ed59e1d1-35dc7079cb6mr6805318a91.30.1775135280985;\n        Thu, 02 Apr 2026 06:08:00 -0700 (PDT)","Date":"Thu, 2 Apr 2026 13:07:45 +0000","From":"Hangbin Liu <liuhangbin@gmail.com>","To":"David Laight <david.laight.linux@gmail.com>","Cc":"Richard Henderson <richard.henderson@linaro.org>,\n\tMatt Turner <mattst88@gmail.com>,\n\tMagnus Lindholm <linmag7@gmail.com>,\n\tVineet Gupta <vgupta@kernel.org>, Brian Cain <bcain@kernel.org>,\n\t\"James E.J. Bottomley\" <James.Bottomley@hansenpartnership.com>,\n\tHelge Deller <deller@gmx.de>,\n\tMadhavan Srinivasan <maddy@linux.ibm.com>,\n\tMichael Ellerman <mpe@ellerman.id.au>,\n\tNicholas Piggin <npiggin@gmail.com>,\n\t\"Christophe Leroy (CS GROUP)\" <chleroy@kernel.org>,\n\tPaul Walmsley <pjw@kernel.org>, Palmer Dabbelt <palmer@dabbelt.com>,\n\tAlbert Ou <aou@eecs.berkeley.edu>, Alexandre Ghiti <alex@ghiti.fr>,\n\tYoshinori Sato <ysato@users.sourceforge.jp>,\n\tRich Felker <dalias@libc.org>,\n\tJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,\n\t\"David S. Miller\" <davem@davemloft.net>,\n\tAndreas Larsson <andreas@gaisler.com>,\n\tThomas Gleixner <tglx@kernel.org>, Ingo Molnar <mingo@redhat.com>,\n\tBorislav Petkov <bp@alien8.de>,\n\tDave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org,\n\t\"H. Peter Anvin\" <hpa@zytor.com>, Chris Zankel <chris@zankel.net>,\n\tMax Filippov <jcmvbkbc@gmail.com>, linux-alpha@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org, linux-snps-arc@lists.infradead.org,\n\tlinux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,\n\tlinuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org,\n\tlinux-sh@vger.kernel.org, sparclinux@vger.kernel.org,\n\tJakub Kicinski <kuba@kernel.org>","Subject":"Re: [PATCH] cmpxchg: allow const-qualified old value in cmpxchg()","Message-ID":"<ac5qIUS5azbWAc9q@fedora>","References":"<20260402-cmpxchg-v1-1-4561e2c05d2c@gmail.com>\n <20260402095747.6efbd456@pumpkin>","Precedence":"bulk","X-Mailing-List":"sparclinux@vger.kernel.org","List-Id":"<sparclinux.vger.kernel.org>","List-Subscribe":"<mailto:sparclinux+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:sparclinux+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"<20260402095747.6efbd456@pumpkin>","X-Spam-Status":"No, score=-1.2 required=5.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DMARC_PASS,\n\tFREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,\n\tMAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=disabled\n\tversion=4.0.1","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on gandalf.ozlabs.org"}}]