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 391F7C54EBC for ; Thu, 12 Jan 2023 11:13:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B273E8E0002; Thu, 12 Jan 2023 06:13:47 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id AD72D8E0001; Thu, 12 Jan 2023 06:13:47 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 99F6C8E0002; Thu, 12 Jan 2023 06:13:47 -0500 (EST) 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 8BC2E8E0001 for ; Thu, 12 Jan 2023 06:13:47 -0500 (EST) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 51D3E40D42 for ; Thu, 12 Jan 2023 11:13:47 +0000 (UTC) X-FDA: 80345886894.14.842A487 Received: from mx0a-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf04.hostedemail.com (Postfix) with ESMTP id E6B7C4001A for ; Thu, 12 Jan 2023 11:13:44 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="GM/bPcLA"; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf04.hostedemail.com: domain of agordeev@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=agordeev@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1673522025; 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=2CpYJJvffSxR/qx+Z65ONIz3u9DGwI+Pun3NTqeU50s=; b=FSZPm4CCqjYA+HLxaEpP9VobSuduDSN7HtaAjjDUEVi35p++eqmxF3IsWK7Rc987t57cOK StkcUIzc9avll6eOrBLfy6F/lakgZj+9eoKwlzD7sy+YvExzZWD33f7C5/NsUyokKdny+7 J2z0QXpHZYZG2WZRP4jSSg9pJMhy9Rk= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="GM/bPcLA"; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf04.hostedemail.com: domain of agordeev@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=agordeev@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1673522025; a=rsa-sha256; cv=none; b=M8GyofXlrTLX4MmviM4mimJOeXKO1JOamYiY1uYGL3ONioy0nR6POSaiM3bPhM9+yqZw8j RrhG7zhqIKI/hIxFSY2m9Mgw8jaICTm26kS5/yaZCIGkM4aL+48u65b2/tiJAcp4bOzdbQ afW/75zvzL8fjs6LehIRfPSH7d/mwMI= Received: from pps.filterd (m0098416.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 30CB64Ag029275; Thu, 12 Jan 2023 11:13:01 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=date : from : to : cc : subject : message-id : references : mime-version : content-type : in-reply-to; s=pp1; bh=2CpYJJvffSxR/qx+Z65ONIz3u9DGwI+Pun3NTqeU50s=; b=GM/bPcLAswwBR0dcOm1np18HrXvcmRRsnSIYZINj7Hjr9dGc+amviX7pQzztaVTQkVpn WHR6aqbmdpb8csCgYMta/l7eUZ6T2s86uOm6+Tm82ncF6x8cy5MbeFQnf2V4/qxf9Xc6 O43GKnCeC0dTTIE4rIFOPTRqfeeFkCN0l3vtDu39S0rsJqJHPcNZFKdLi81wBJQ5+1/s JOMx3E9CQxnKrWf1nGD1jqfnFhHqd65i9ymBIn30hbez0BTr3GvjttlT8sFICGdJIw0S 34w9zxub3HL9y5w/0I6cm/Xfwdgq6QFfiFuXQlz9J9767Ahuw2R8M7rooM86Oyi/fLvm 0w== Received: from pps.reinject (localhost [127.0.0.1]) by mx0b-001b2d01.pphosted.com (PPS) with ESMTPS id 3n2h1pr67c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Jan 2023 11:13:01 +0000 Received: from m0098416.ppops.net (m0098416.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 30CB6ibV031123; Thu, 12 Jan 2023 11:13:00 GMT Received: from ppma03fra.de.ibm.com (6b.4a.5195.ip4.static.sl-reverse.com [149.81.74.107]) by mx0b-001b2d01.pphosted.com (PPS) with ESMTPS id 3n2h1pr669-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Jan 2023 11:13:00 +0000 Received: from pps.filterd (ppma03fra.de.ibm.com [127.0.0.1]) by ppma03fra.de.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 30BHPFmv031030; Thu, 12 Jan 2023 11:12:57 GMT Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230]) by ppma03fra.de.ibm.com (PPS) with ESMTPS id 3n1kyx9p83-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Jan 2023 11:12:57 +0000 Received: from smtpav04.fra02v.mail.ibm.com (smtpav04.fra02v.mail.ibm.com [10.20.54.103]) by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 30CBCr7C22937980 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 12 Jan 2023 11:12:53 GMT Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A17CB20043; Thu, 12 Jan 2023 11:12:53 +0000 (GMT) Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2DBF720040; Thu, 12 Jan 2023 11:12:50 +0000 (GMT) Received: from li-4a3a4a4c-28e5-11b2-a85c-a8d192c6f089.ibm.com (unknown [9.171.13.23]) by smtpav04.fra02v.mail.ibm.com (Postfix) with ESMTPS; Thu, 12 Jan 2023 11:12:50 +0000 (GMT) Date: Thu, 12 Jan 2023 12:12:48 +0100 From: Alexander Gordeev To: Heiko Carstens Cc: Peter Zijlstra , Thomas Richter , torvalds@linux-foundation.org, corbet@lwn.net, will@kernel.org, boqun.feng@gmail.com, mark.rutland@arm.com, catalin.marinas@arm.com, dennis@kernel.org, tj@kernel.org, cl@linux.com, gor@linux.ibm.com, borntraeger@linux.ibm.com, svens@linux.ibm.com, Herbert Xu , davem@davemloft.net, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, joro@8bytes.org, suravee.suthikulpanit@amd.com, robin.murphy@arm.com, dwmw2@infradead.org, baolu.lu@linux.intel.com, Arnd Bergmann , penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, Andrew Morton , vbabka@suse.cz, roman.gushchin@linux.dev, 42.hyeyoo@gmail.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-crypto@vger.kernel.org, iommu@lists.linux.dev, linux-arch@vger.kernel.org Subject: Re: [RFC][PATCH 08/12] s390: Replace cmpxchg_double() with cmpxchg128() Message-ID: References: <20221219153525.632521981@infradead.org> <20221219154119.352918965@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: hrmaJ6_faD8RHCW_pvcyE-JA-vnPIVMq X-Proofpoint-GUID: KLt4Oe9V1h3Xoju5iqVMXGihur9SkCzg X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2023-01-12_06,2023-01-12_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 adultscore=0 mlxlogscore=898 bulkscore=0 malwarescore=0 spamscore=0 suspectscore=0 priorityscore=1501 impostorscore=0 clxscore=1011 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2301120077 X-Rspamd-Queue-Id: E6B7C4001A X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: 6jqrpm91yetmyc7bquppt97rb33g1whc X-HE-Tag: 1673522024-801554 X-HE-Meta: U2FsdGVkX198M4rZ3YEVzWnEw1gjpWIv79q2Z8i/VLNWgYupqh/H2AElPJOq0g2LqCQGNCHyMvNtukf7cKDN5rl6VrHec1zyaKQdKo2rZrykx24Abnd5bTZO812qxdv/zyMj456q+7vRZC5Fas310riIdN3T4Zovclp/S8bMQB9C9aHBI42mZMCUi2VkVKY1QW6ja3sFeRV3VM2lNnjLGFEm+Uyir30brbMvD8icabv66FjFwjPee+bUyiRlMtmlYzNB9z/wxZnHjzgSPFRUTRWKsi37Tsq9nG5LhYO3VdjlRyLFNl8RXRxaBWH1m8ZgKzsdbgG4uJrDcjdpNdnlId8bYkFKT21FStgsVguXoQbQ5joZXn/6/iTc5YXDnTZ3TVCBR2PvNS99MSvkqePrSIJOb3gf93ZN6dSE4yeA1N20E3rQZk+W6HU+pFGJaKeqZXBMmkcV217i1FUJXjvqUrLqby2JWvjD/tzmGNMv7ONT7PBJJcfKF+aJDyDYkOWWs3WSTbJjEt1SmEff9ra9oNpuI9HuQpAMahNaEGXfycWi3zjl2m7N/FmC2FCUxVcVwd+Sr79vbJjr7iAIkAMy9W0yPwAfDWTHVivoEaGjI4g0iUJnbo3/MZTgudWDxEtT0MRIoCJadtzmJuLazTynyKGAKv5M8Aj4p+0TjgonOoy/9XiagCGG7ajJLk4Q444tdkrSIyhvzwvmZCY+FbjLiayDZTs54e1A7NTQRmQzVvIGVgKN7atZarS5X+l5IbmkVYUxgyL4x4bVJ2LNgiKZzKHqTHLBuMV+vspltwbJx5R+gk/hTEPGDPgLKqOfSets8hjMYPArrC+hBxTGekeSmi0x95AGwfecLEdTnbrOy7fIax9rBOf1/i/uE9rwasEW96MLGSREV4Ejn3Wb4oqVLPZc2L4Tp27R++9aDegtcZgvBWodnnRZskfSRdWkEAR2yvmnXQEpR3aJt+x/Dtd Mxc4lvuU McFDa 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: On Tue, Jan 10, 2023 at 12:46:44PM +0100, Heiko Carstens wrote: > > > + /* READ_ONCE() 16 byte header */ > > > + prev.val = __cdsg(&te->header.val, 0, 0); > > > do { > > > + old.val = prev.val; > > > + new.val = prev.val; > > > + *overflow = old.overflow; I guess, it would also make sense to place write to overflow after the while loop. So the output variable left intact in case the function bailed out. Not sure if it should be part of this patch though. > > > + if (old.f) { > > > /* > > > * SDB is already set by hardware. > > > * Abort and try to set somewhere > > > @@ -1490,10 +1509,10 @@ static bool aux_set_alert(struct aux_buffer *aux, unsigned long alert_index, > > > */ > > > return false; > > > } > > > + new.a = 1; > > > + new.overflow = 0; > > > + prev.val = __cdsg(&te->header.val, old.val, new.val); > > > + } while (prev.val != old.val); > > > > And while this case has an early exit, it only cares about a single bit > > (although you made it a full word) and so also shouldn't care. If > > aux_reset_buffer() returns false, @overflow isn't consumed. > > Yes, except that it is anything but obvious that @overflow isn't consumed.