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 37D1DC04FFF for ; Thu, 18 Apr 2024 13:09:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 94CE76B0087; Thu, 18 Apr 2024 09:09:33 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8FCF76B0088; Thu, 18 Apr 2024 09:09:33 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7EB2A6B0089; Thu, 18 Apr 2024 09:09:33 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 611F96B0087 for ; Thu, 18 Apr 2024 09:09:33 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id D9A921A13B5 for ; Thu, 18 Apr 2024 13:09:32 +0000 (UTC) X-FDA: 82022684184.06.558447B Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf16.hostedemail.com (Postfix) with ESMTP id 6E61918000F for ; Thu, 18 Apr 2024 13:09:30 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=GStT0MXM; spf=pass (imf16.hostedemail.com: domain of borntraeger@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=borntraeger@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1713445770; a=rsa-sha256; cv=none; b=r85FInRRRfiq7YWusOG99VLbZDRXF1wssK40zElMfLf6UBq8MuhYmTmiVBhFWFdaIrJ0YX YuqlhxkrNJy68aLgdaYlpr8gTBkp2xMmrul9y0ahNwFAw1mw+B+SPpaI6WywUp3ebkPOjS /0sRK3SHMjSTR2cqCjuyr5SQW5RWaBY= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=GStT0MXM; spf=pass (imf16.hostedemail.com: domain of borntraeger@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=borntraeger@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1713445770; 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=RaI5RA/Q5QPRrrhoR9duIhNVwqkwcc6C9qMHRKNHl+Q=; b=r9J2hYYhYTVXNxSBZL7fEWlL0F2eDCkx3qaQJMP5Vz2tJ/ZJaISTPSHowqKSjskaBTIsJH pf/Vb6/G9EsQ8SlkZaAV7hC0NPfUa9gnswoW5aSZI13cRDDEcmf+pTBBLm6aCa2SMZoXK8 aAnUWJZNxzEawh+ojMaYlXAhaQawLmc= Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43ID8jU3007642; Thu, 18 Apr 2024 13:09:29 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=message-id : date : mime-version : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding; s=pp1; bh=RaI5RA/Q5QPRrrhoR9duIhNVwqkwcc6C9qMHRKNHl+Q=; b=GStT0MXMLM/fZ9pe8YXt69mb+WpGa4ehYFCflmtI1TebfTGuMbPUuO7bFFnEttDSGBpW wVjQT2tYVG8bdJ5Dp0s8vaUIjKR3RCxcLs48OrDl9BDsHP8mgIt4bC3h/HXWy87Ur1ea OG9YwjXWDQgRJ3xAyBqYuela6as1U9OG3ItFOtMY6xuJO3ksmt8+q6QcY4JBOUX8EU6t aTY6SuWGr6L6Sa3qMYJOWu+A/ACjxwgvja03h9WYrHbiyap/VyGC7jtnVQ3bkhm2zmeo liJWDwa2pRwk/Mgrered6Ws1P8sjCBP9Z2EJssVeAecdv7ag1WdPqSTLHHeM5tyWcBQQ 9g== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3xk44rr044-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 18 Apr 2024 13:09:28 +0000 Received: from m0353725.ppops.net (m0353725.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 43ID9SkW008360; Thu, 18 Apr 2024 13:09:28 GMT Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3xk44rr041-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 18 Apr 2024 13:09:28 +0000 Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 43IB566T027289; Thu, 18 Apr 2024 13:09:27 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3xg4s0aw1y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 18 Apr 2024 13:09:27 +0000 Received: from smtpav03.fra02v.mail.ibm.com (smtpav03.fra02v.mail.ibm.com [10.20.54.102]) by smtprelay05.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 43ID9LH348693672 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 18 Apr 2024 13:09:23 GMT Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8FB9520043; Thu, 18 Apr 2024 13:09:21 +0000 (GMT) Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 591E320040; Thu, 18 Apr 2024 13:09:21 +0000 (GMT) Received: from [9.152.224.222] (unknown [9.152.224.222]) by smtpav03.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 18 Apr 2024 13:09:21 +0000 (GMT) Message-ID: <453afb13-c7e3-4156-9dbb-c6317503c715@linux.ibm.com> Date: Thu, 18 Apr 2024 15:09:20 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 2/2] s390/mm: re-enable the shared zeropage for !PV and !skeys KVM guests Content-Language: en-US To: David Hildenbrand , Alexander Gordeev Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Janosch Frank , Claudio Imbrenda , Heiko Carstens , Vasily Gorbik , Andrew Morton , Peter Xu , Sven Schnelle , Gerald Schaefer , Andrea Arcangeli , kvm@vger.kernel.org, linux-s390@vger.kernel.org References: <20240411161441.910170-1-david@redhat.com> <20240411161441.910170-3-david@redhat.com> <8533cb18-42ff-42bc-b9e5-b0537aa51b21@redhat.com> <20d1d8c5-70e9-4b00-965b-918f275cfae7@linux.ibm.com> From: Christian Borntraeger In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-TM-AS-GCONF: 00 X-Proofpoint-GUID: U_NintKTDQIUuOR8ZvOzcdWvOEEHjrHp X-Proofpoint-ORIG-GUID: T0JHOIK5lgqLYJh6QQs6jAcpUgEmZbJt X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-04-18_11,2024-04-17_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 bulkscore=0 lowpriorityscore=0 mlxlogscore=782 priorityscore=1501 mlxscore=0 suspectscore=0 phishscore=0 adultscore=0 clxscore=1015 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404180093 X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 6E61918000F X-Stat-Signature: ooe6km5kzcyg9connporffeba311ntrb X-Rspam-User: X-HE-Tag: 1713445770-362816 X-HE-Meta: U2FsdGVkX1/5KcTMWwsiMKio3SPnwBILkS4f7zodcAMb0ziNN14RtjgrZp2Sno6nZPcrAXpx0wTYKI/Ovcg076FtHP3iPWmuMiKv43Vgroe2PjLt6KFnAqft9wEEg1WDSX0/dsP1hbuujCO6zLmTKSYbejEhOhztLJGu2q3FF2DoCcDK2pILOA8UoaNjcgXZwst7eFkV3xM+V3j+JOF75aW+UOVFlCDgxJ1Br1ghGdTIVWAy3jpRbRThy6QaT9egw1st3jkDRdSCiYeRfO5vhzwjl786ZUcEfW5YFb1il620htQVcMBmzUZhkGwXpa3tOMvVLMJcwY19+/H6KZ+g2/2ZYLul8zm3aDCjF14hmbq4dDJTTmHN2kSWHKwfohwidghmlcsag58OAwHLnv6H+Soy35WU47kWVcBao/37yxrfgFgYyideY5sv7phdDuAQq4I8dw9xm17iWlhDgOcVV0bwMW39E32ZkfgsJ3KK7qBNh3Il+Mh+A03tUzZK5TcGwDlMA81nQr3OxVaQMtaqTFg4a9vfqjIh6r40RmQsjLQbl1zGNW8h/HCRWeEWrLRZzmmACGjO4qOKGz1TdDwze0ObBMPPhRiYFzvqbdkEW5H1//GaKpxH2af6TsIE6/2pEu4JFLYXqlOB3XfoT3my7Ha3WL3rfN1fptwlYwG3NZRq1Gcq8jjO7cKSNq14CbVYA1+J5pCFehBb9Isp9wfANOqeRbX46mHrxB0itdUFAqUqw3RvV0Eb0jOFdh70Tyxwr1J6DKwSJkCFpv7iWtyJVe6RPYgln6JNd23lRS+8oeYhRJ1XRozudCaX/13lnf2SjE9pZOlm5NZTZjlTsCY8VQUB3pew3Ub1i4stCwKgm4w+mwI2sDXO5Xp7x80jxNvEi4NyUXdMYvRoxc4YkByfet9riYxiRh7ht/7PjLUWd2PlLxLXIenyt/HD3m4HXvPsXk/jz2F/pgUBp0rD/pl LhAvBc8q WEp3ImfJNpFvkyB7hJMSWM3X+MAPTbzJzutR1uzKbOhb2J4WzfboL4PUG4h9AEDzVAEambV7b4sTineqq6jRYnYRcghqpsTpa440a5twmuKrM4TdcPQVzi03+Mn8R8lAhZybWqOOe+SzOJSAxzSW+IRUgPQmeqk1nYuhY+LR5qOydxS/u8YgtdecqV0R4W8CwSJytEkesTBp7eKFnejR++36/X/Nihdwt6oL9/LkW+cud7dw= 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: Am 16.04.24 um 15:41 schrieb David Hildenbrand: > On 16.04.24 14:02, Christian Borntraeger wrote: >> >> >> Am 16.04.24 um 08:37 schrieb Alexander Gordeev: >> >>>> We could piggy-back on vm_fault_to_errno(). We could use >>>> vm_fault_to_errno(rc, FOLL_HWPOISON), and only continue (retry) if the rc is 0 or >>>> -EFAULT, otherwise fail with the returned error. >>>> >>>> But I'd do that as a follow up, and also use it in break_ksm() in the same fashion. >>> >>> @Christian, do you agree with this suggestion? >> >> I would need to look into that more closely to give a proper answer. In general I am ok >> with this but I prefer to have more eyes on that. >>   From what I can tell we should cover all the normal cases with our CI as soon as it hits >> next. But maybe we should try to create/change a selftest to trigger these error cases? > > If we find a shared zeropage we expect the next unsharing fault to succeed except: > > (1) OOM, in which case we translate to -ENOMEM. > > (2) Some obscure race with MADV_DONTNEED paired with concurrent truncate(), in which case we get an error, but if we look again, we will find the shared zeropage no longer mapped. (this is what break_ksm() describes) > > (3) MCE while copying the page, which doesn't quite apply here. > > For the time being, we only get shared zeropages in (a) anon mappings (b) MAP_PRIVATE shmem mappings via UFFDIO_ZEROPAGE. So (2) is hard or even impossible to trigger. (1) is hard to test as well, and (3) ... > > No easy way to extend selftests that I can see. Yes, lets just go forward. > > If we repeatedly find a shared zeropage in a COW mapping and get an error from the unsharing fault, something else would be deeply flawed. So I'm not really worried about that, but I agree that having a more centralized check will make sense.