From nobody Sun Oct 5 21:57:21 2025 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 205D922D7A5; Tue, 29 Jul 2025 05:34:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.158.5 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767282; cv=none; b=i2eC66Gu6JnF7lIy53YhDuDxIc18hgCt8YvS1qrzhrC1Ls/+Jqm/pAjVah/zIc02/sSThMagZIrP4g1H+zTMBAPPwufhqm0zWr40Uh7RLEd2kToo1bv/9B2OUQKIlh+beUS7iaimY6bBsX9BpN/cmm6Gh8dt2g5JJNcm4DfiV+o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767282; c=relaxed/simple; bh=Uivxq4CcyJ6EjkoIeZ8RQfVHF9NuxUvEDacDvIXaI34=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NTP6C7YGcfl3Xi7lIKcb3pt+jhEuCycxxRfF59rKs1dVYRuRQXGX4UlO+BW+egKGdLwKI6LLEaKZFqcTNbVmxELz4soKbZkR8FSaE5eJ2b1xqSrUkHtoan5a/oVv7R+z6bM+h1aqmHn9PpLAY8josRUdPIL76sJ5z0e8/vbYeaA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=FJmQlAu6; arc=none smtp.client-ip=148.163.158.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="FJmQlAu6" Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4ZEiL017211; Tue, 29 Jul 2025 05:34:22 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=tVp2jxW3gsshZpoJa cr5kNhvPrUc1+lm5rLjVwVsfB8=; b=FJmQlAu6bbxvmVB5JXkkTM/fhY6xCoVj7 1sb4fB2eHFT0Adv5ltczADkQEEjQK8UETghMA9LEhN+OCG/HF464xZiJJKblmFzo fBlrH9pY68BexxfxGRGu8SxEh9RR/WyfJAxEA+3822+GiKavFutARlmxn0fujP5t NAA9ETXG+LU8yNsssdnaIlvfJB45851dEAp1db7Hb9BGqt31m9zaebelctM5hCbW 3v9L2SV80pF9js/jaAki79gjHuridgoDZ6o+KCpcp9Zes5RJ6Xr1cOx8iZ+8U8Ly 0EdWqV9Qn8yJ+NVl1RX+Pgm2U6yCwKxzUOp54NHNJ7RRc3uC1OC8w== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4864k7n8hq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:21 +0000 (GMT) Received: from m0360072.ppops.net (m0360072.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 56T5YLRk004087; Tue, 29 Jul 2025 05:34:21 GMT Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4864k7n8hd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:21 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 56T0osw4028728; Tue, 29 Jul 2025 05:34:20 GMT Received: from smtprelay07.fra02v.mail.ibm.com ([9.218.2.229]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 485c22gq9a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:20 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay07.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 56T5YGpe40960468 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 29 Jul 2025 05:34:16 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 523FA2004D; Tue, 29 Jul 2025 05:34:16 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B7EB120040; Tue, 29 Jul 2025 05:34:10 +0000 (GMT) Received: from aboo.ibm.com.com (unknown [9.150.11.63]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 29 Jul 2025 05:34:10 +0000 (GMT) From: Aboorva Devarajan To: akpm@linux-foundation.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, shuah@kernel.org, pfalcato@suse.de, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, donettom@linux.ibm.com, ritesh.list@gmail.com, aboorvad@linux.ibm.com Subject: [PATCH v3 1/7] mm/selftests: Fix incorrect pointer being passed to mark_range() Date: Tue, 29 Jul 2025 11:03:57 +0530 Message-ID: <20250729053403.1071807-2-aboorvad@linux.ibm.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250729053403.1071807-1-aboorvad@linux.ibm.com> References: <20250729053403.1071807-1-aboorvad@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: D__wZ5AViJXGYz87T-6nXF7ExHIzFUtF X-Proofpoint-GUID: dKgDLYsOgFphMGf_RokuWg65kcFQFwD9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzI5MDAzOCBTYWx0ZWRfX/+W//Ctohoc8 p5knvb8YutA96ws9OSpQt301EIQV2mBZ8B+dP+8pKjfv4cqXC+JU1ROrUut+CSwmsD0fThjoJDU pz5BqPbr/mYHRkTOzr1ObC1C+XtBf9ReI4PScF4LaPKB7Wdipz8jHEJJ2uF9TZ6Tjh0zugUWYeM K5HwLX9izDqZlILCQHb4epLgljjblTUc56Apc0ftMMLmU3iLtzy2ToXFcfy265fOSLXix0xayE/ R2Cki7tXa/rs29kjEGlYEFlceZOHK4JA1spBiVAa+0NFZxvK43Tn7lzq3i8HRJD+1I8QQ4WwEii Wq5FkxOsfnKaA3WOdxC5HuP43E4R/yWv9at8kUhFStt4UzdRkBrsm+J3RAv1O+zKN1dRcPPIdX9 N+LdRGYsI1vhQx6BPnWKFToQ+oOH7kgAgYERCdrJgTG3OzfAS5S4FCelKiQ+oUy64MPuSUx+ X-Authority-Analysis: v=2.4 cv=ZoDtK87G c=1 sm=1 tr=0 ts=68885d5d cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=Wb1JkmetP80A:10 a=VnNF1IyMAAAA:8 a=7CQSdrXTAAAA:8 a=20KFwNOVAAAA:8 a=Ikd4Dj_1AAAA:8 a=UadLiVKD9PNbdUwwWnMA:9 a=a-qgeE7W1pNrGK8U0ZQC:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-29_01,2025-07-28_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 priorityscore=1501 lowpriorityscore=0 mlxscore=0 clxscore=1015 adultscore=0 impostorscore=0 mlxlogscore=999 bulkscore=0 phishscore=0 suspectscore=0 malwarescore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507290038 Content-Type: text/plain; charset="utf-8" From: Donet Tom In main(), the high address is stored in hptr, but for mark_range(), the address passed is ptr, not hptr. Fixed this by changing ptr[i] to hptr[i] in mark_range() function call. Fixes: b2a79f62133a ("selftests/mm: virtual_address_range: unmap chunks aft= er validation") Reviewed-by: Dev Jain Acked-by: David Hildenbrand Reviewed-by: Zi Yan Co-developed-by: Aboorva Devarajan Signed-off-by: Aboorva Devarajan Signed-off-by: Donet Tom --- tools/testing/selftests/mm/virtual_address_range.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/virtual_address_range.c b/tools/tes= ting/selftests/mm/virtual_address_range.c index 169dbd692bf5..e24c36a39f22 100644 --- a/tools/testing/selftests/mm/virtual_address_range.c +++ b/tools/testing/selftests/mm/virtual_address_range.c @@ -227,7 +227,7 @@ int main(int argc, char *argv[]) if (hptr[i] =3D=3D MAP_FAILED) break; =20 - mark_range(ptr[i], MAP_CHUNK_SIZE); + mark_range(hptr[i], MAP_CHUNK_SIZE); validate_addr(hptr[i], 1); } hchunks =3D i; --=20 2.47.1 From nobody Sun Oct 5 21:57:21 2025 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 92CF32367DC; Tue, 29 Jul 2025 05:34:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767289; cv=none; b=aZsIkgmOT9NIs408hl9+dQItBRNohdsPop6gJn+D2mTEF800Hem3jn7ls0j1VZ+arqQxwkiGPZCygQ1Wygzgy7d+Wl7cD1T5cNKLUJq/ggGBwNZ1ZhGTS1UlE0KATdSvJY0K/DX3stLR3AETsJvMF1BAkgXiafiefEZ+md5duGA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767289; c=relaxed/simple; bh=tY1DxbaB2AqeY/U4umNsrUKXHAdJe8DWpIN/Q4tfUeo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=AVlrM29hWDDR6QCT0Pup4BdevSaejtrslDocc8+XuAftsito+gA9eiZhCkvnqYFcSgUywdSk5xvaMZA6vZFBwweVrvybFcJnybWjvt8H8vIcGtY+TiBKqAOF8nrrA7rYM/wZ3u3F85LSqtEJBuXUhKlLZkvnrQnpirndWlQ2L+4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=cajxoetV; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="cajxoetV" Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4YuHm001913; Tue, 29 Jul 2025 05:34:29 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=G8oS+v+giLcHjDbSr lGsstMtFDLI0TyfcjEk/ae6+cY=; b=cajxoetVp+siWZ/uyFUbb4sHT6F+8AXYW u4UqNMEtAxpgooqkaLNSXft3rTVykH8dv3nuFnNiKV6cKQ0bDYz7r5M5nvRzkvWT nwx0jsiUEOQW5bwIpGiTVe4fvofvCj8usN9fL59yepFRWlCTvGfyA5yOdo9ITEK2 UL3Gza99Y/OnimU2O/ab7DYzD5TJCEHTwyDhV/G1ET5GukEcZW4ap1sApJ4+cAep AWR45cXAgAfnRJQHJPMDGU0NcGuMuKfJ4KuROCR1uMo6VAFSawrDM1P7N3cwLv5x E7peYN4PVqhDBmG1pD0AQbIXaUtoMdKlX9ThZJd8QZWZyF6COmiBw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 486c6hjte0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:28 +0000 (GMT) Received: from m0356517.ppops.net (m0356517.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 56T5YSi4021026; Tue, 29 Jul 2025 05:34:28 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 486c6hjtdn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:28 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4VHL1018275; Tue, 29 Jul 2025 05:34:27 GMT Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 485abp113r-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:26 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 56T5YMwh20840932 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 29 Jul 2025 05:34:23 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D97192004D; Tue, 29 Jul 2025 05:34:22 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5733C20040; Tue, 29 Jul 2025 05:34:17 +0000 (GMT) Received: from aboo.ibm.com.com (unknown [9.150.11.63]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 29 Jul 2025 05:34:17 +0000 (GMT) From: Aboorva Devarajan To: akpm@linux-foundation.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, shuah@kernel.org, pfalcato@suse.de, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, donettom@linux.ibm.com, ritesh.list@gmail.com, aboorvad@linux.ibm.com Subject: [PATCH v3 2/7] selftests/mm: Add support to test 4PB VA on PPC64 Date: Tue, 29 Jul 2025 11:03:58 +0530 Message-ID: <20250729053403.1071807-3-aboorvad@linux.ibm.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250729053403.1071807-1-aboorvad@linux.ibm.com> References: <20250729053403.1071807-1-aboorvad@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-GUID: oaw_REjoX37XzBgjW1cvFZzgafNzvIa5 X-Authority-Analysis: v=2.4 cv=Mbtsu4/f c=1 sm=1 tr=0 ts=68885d64 cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=Wb1JkmetP80A:10 a=VnNF1IyMAAAA:8 a=7CQSdrXTAAAA:8 a=20KFwNOVAAAA:8 a=Ikd4Dj_1AAAA:8 a=Bqi_dthY5MMbQG-DhooA:9 a=a-qgeE7W1pNrGK8U0ZQC:22 X-Proofpoint-ORIG-GUID: GzwiVAJad7mSRRBHQELlV_wh9Yabou-n X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzI5MDAzOCBTYWx0ZWRfXyUBMSh0aQ5NV I45ZiF3m9DMeKyZGo/XrJ/fmIBc67U7IS32oedfmYwFXUTy26JXM+vb40XC51Zvcs7H16gBEfsd u9I6tiPTKuqyCXj9vtx+NV0+XomlrBg+Em5mNuBSvr3LgyVFYAD0B0lpAyPRzjPHSZxo7AP+d78 AFC7vOoHQgoFN+UYPIxvod1lAM5uewvP6Qlo7CGFnnBEENcGw/8fq5yDKkbedt/T6j4Uxz4Sw5e 5qz2lmBYvN3a/WJvfQjYAj95DIoCLjMAt3sIRY+NBemOV2j/6kzUHhlfeuIut0+UqN4thJLgbAu YiZU4XKKjNl4PxrjAgKIQRrm95/UkcpmTGGc6t0hNTdp/K/sPnDCdPEwipuuj8gViDDTV822HB6 HI0uj50ZI6XTqzIZPZYRGxIThqANT+PxIDlgj1bU2Lt51ZGbdtmWTGG4qkz3cpIDT+QkXFR0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-29_01,2025-07-28_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 adultscore=0 bulkscore=0 suspectscore=0 priorityscore=1501 spamscore=0 mlxscore=0 impostorscore=0 phishscore=0 mlxlogscore=959 lowpriorityscore=0 malwarescore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507290038 Content-Type: text/plain; charset="utf-8" From: Donet Tom PowerPC64 supports a 4PB virtual address space, but this test was previously limited to 512TB. This patch extends the coverage up to the full 4PB VA range on PowerPC64. Memory from 0 to 128TB is allocated without an address hint, while allocations from 128TB to 4PB use a hint address. Reviewed-by: Dev Jain Acked-by: David Hildenbrand Reviewed-by: Zi Yan Co-developed-by: Aboorva Devarajan Signed-off-by: Aboorva Devarajan Signed-off-by: Donet Tom --- tools/testing/selftests/mm/virtual_address_range.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tools/testing/selftests/mm/virtual_address_range.c b/tools/tes= ting/selftests/mm/virtual_address_range.c index e24c36a39f22..81b33d8f78f4 100644 --- a/tools/testing/selftests/mm/virtual_address_range.c +++ b/tools/testing/selftests/mm/virtual_address_range.c @@ -44,12 +44,18 @@ * On Arm64 the address space is 256TB and support for * high mappings up to 4PB virtual address space has * been added. + * + * On PowerPC64, the address space up to 128TB can be + * mapped without a hint. Addresses beyond 128TB, up to + * 4PB, can be mapped with a hint. + * */ =20 #define NR_CHUNKS_128TB ((128 * SZ_1TB) / MAP_CHUNK_SIZE) /* Number of c= hunks for 128TB */ #define NR_CHUNKS_256TB (NR_CHUNKS_128TB * 2UL) #define NR_CHUNKS_384TB (NR_CHUNKS_128TB * 3UL) #define NR_CHUNKS_3840TB (NR_CHUNKS_128TB * 30UL) +#define NR_CHUNKS_3968TB (NR_CHUNKS_128TB * 31UL) =20 #define ADDR_MARK_128TB (1UL << 47) /* First address beyond 128TB */ #define ADDR_MARK_256TB (1UL << 48) /* First address beyond 256TB */ @@ -59,6 +65,11 @@ #define HIGH_ADDR_SHIFT 49 #define NR_CHUNKS_LOW NR_CHUNKS_256TB #define NR_CHUNKS_HIGH NR_CHUNKS_3840TB +#elif defined(__PPC64__) +#define HIGH_ADDR_MARK ADDR_MARK_128TB +#define HIGH_ADDR_SHIFT 48 +#define NR_CHUNKS_LOW NR_CHUNKS_128TB +#define NR_CHUNKS_HIGH NR_CHUNKS_3968TB #else #define HIGH_ADDR_MARK ADDR_MARK_128TB #define HIGH_ADDR_SHIFT 48 --=20 2.47.1 From nobody Sun Oct 5 21:57:21 2025 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1A764239E7A; Tue, 29 Jul 2025 05:34:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767291; cv=none; b=qxrJ0GePLq7eBOY3NYkAurLGTgQOz+BVsty1jwSPRD6XxvBF80a5addgFy5/hPZKh0N/uVN/UbwM1CuI10xlTg7AoGzar3ZgWC1BHycPi0ihPyV2jchPAXlVlez2Six0F/Zboks7gbr2kkiMjomIldrcpsX1HP3cVDuC8p2KJdc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767291; c=relaxed/simple; bh=VCtfHOKtSIRreCzxYZiwIQIEBffyPQdWdSpB3O7Tzgg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Ou0gzf7mQY4cElY9PQglAbgmCpkrF27z7IG/aD0rGIw2eZkMtWVppnDXvYoPyyjUOX/t1MG8/BTflWD1a0FGWAWpfbJIY+jsQbi9hYvobj34mfUQIE8pVehwHY06x75baylwsVMGy2egU4+50cpU6jb6B791TgfLFMnnnjnQOvE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=Q68OZh1w; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="Q68OZh1w" Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4YtD2015088; Tue, 29 Jul 2025 05:34:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=m/9NlFppnJk2tWCD6 FCj3HKItXmcD1EstRYDoEPYzi0=; b=Q68OZh1wC33E9a38wgn99yqSskAitgjh5 +BBYyIAREXCuqc2hSEEV51oV/6zGsrRS2Wk4dAmk0Ri73EVBVupyHr88mAT1IHDN +U/GfVNXji3NnMloxMqVMCvCIAwcO/s4kp4weBww+T5iY17O5Q4UFayQLcu9iWL9 jPzAAZfCNs+4qDMcQb2sySF3cqJYJqGN3bFDacLfybiX+DcHucKHdZ6F2iWt86B9 DLELSWhisJwwhPI6/hDcZXierCAVjxtmDUrticn8kYqZBQEXVO1QfyKOTlyXikvx Ru4DP3VCDPOnoat+O8F6puLbmVqPQu5WWa0zTt67/EG2D9+yx2vIA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqax-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:34 +0000 (GMT) Received: from m0353729.ppops.net (m0353729.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 56T5PRxo014173; Tue, 29 Jul 2025 05:34:33 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqan-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:33 +0000 (GMT) Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 56T3A7uI017969; Tue, 29 Jul 2025 05:34:32 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 4859bth6bd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:32 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay05.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 56T5YScm42991964 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 29 Jul 2025 05:34:28 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9D74320043; Tue, 29 Jul 2025 05:34:28 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7A9C520040; Tue, 29 Jul 2025 05:34:23 +0000 (GMT) Received: from aboo.ibm.com.com (unknown [9.150.11.63]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 29 Jul 2025 05:34:23 +0000 (GMT) From: Aboorva Devarajan To: akpm@linux-foundation.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, shuah@kernel.org, pfalcato@suse.de, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, donettom@linux.ibm.com, ritesh.list@gmail.com, aboorvad@linux.ibm.com Subject: [PATCH v3 3/7] selftest/mm: Fix ksm_funtional_test failures Date: Tue, 29 Jul 2025 11:03:59 +0530 Message-ID: <20250729053403.1071807-4-aboorvad@linux.ibm.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250729053403.1071807-1-aboorvad@linux.ibm.com> References: <20250729053403.1071807-1-aboorvad@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzI5MDAzOCBTYWx0ZWRfX+eP0V8wOhiu9 C2imVp9UuAmGYTMlNnrjaYv6OOk7L8cUXY7cX81F+YbBwnPAZZVhWofnerO5LciDZO2/mGPAqS6 Y0VDZijUJwLHiJ50ETGFbXiyl9uqU0dibDIDpT/T2ufSKIgwAVPmoOZDM2oWcLxUacn6dUFc7kj uFjCVvEwpOwl7DsEDqGqMDdKRCUlGMUCATscilxSYaviLSkM/QLoJg+5x5luDuPliG1L41zDiVq ApyCPAutQxHDQ+aDYAEa3svRsJ/DxlNHdwLdYDIyiqCVdneoPvf4T4AZKCNa+NivLiXOtKMLxej A2ulfvsLhZdq59eH6UEPxk2cY+kE6bKNsTv15Yjv5xpKbQPUM+HE+6mG0aMXwBXXD2aVNph/ihN 36Iqvxe5V4BwilRWvXifMtY7Qt/sNms9ptgVxp6TTyjS/5wqWWqytd2u7EirkJNG3snsmIDJ X-Authority-Analysis: v=2.4 cv=Je28rVKV c=1 sm=1 tr=0 ts=68885d6a cx=c_pps a=bLidbwmWQ0KltjZqbj+ezA==:117 a=bLidbwmWQ0KltjZqbj+ezA==:17 a=Wb1JkmetP80A:10 a=VnNF1IyMAAAA:8 a=yVrA2fujCtLeWmk1P3cA:9 X-Proofpoint-GUID: UlgNgExj7kwVKrdBWYwQ9zAe9iZ_73nb X-Proofpoint-ORIG-GUID: Dk8DjZlnOnRS8AQEl4JAYMObPGNLId59 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-29_01,2025-07-28_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=999 clxscore=1015 lowpriorityscore=0 spamscore=0 adultscore=0 suspectscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 phishscore=0 mlxscore=0 impostorscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507290038 Content-Type: text/plain; charset="utf-8" From: Donet Tom This patch fixed 2 issues. 1) After fork() in test_prctl_fork, the child process uses the file descriptors from the parent process to read ksm_stat and ksm_merging_pages. This results in incorrect values being read (parent process ksm_stat and ksm_merging_pages will be read in child), causing the test to fail. This patch calls init_global_file_handles() in the child process to ensure that the current process's file descriptors are used to read ksm_stat and ksm_merging_pages. 2) All tests currently call ksm_merge to trigger page merging. To ensure the system remains in a consistent state for subsequent tests, it is better to call ksm_unmerge during the test cleanup phase. In the test_prctl_fork test, after a fork(), reading ksm_merging_pages in the child process returns a non-zero value because a previous test performed a merge, and the child's memory state is inherited from the parent. Although the child process calls ksm_unmerge, the ksm_merging_pages counter in the parent is reset to zero, while the child's counter remains unchanged. This discrepancy causes the test to fail. To avoid this issue, each test should call ksm_unmerge during cleanup to ensure the counter is reset and the system is in a clean state for subsequent tests. execv argument is an array of pointers to null-terminated strings. In this patch we also added NULL in the execv argument. Fixes: 6c47de3be3a0 ("selftest/mm: ksm_functional_tests: extend test case f= or ksm fork/exec") Co-developed-by: Aboorva Devarajan Signed-off-by: Aboorva Devarajan Signed-off-by: Donet Tom --- tools/testing/selftests/mm/ksm_functional_tests.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/ksm_functional_tests.c b/tools/test= ing/selftests/mm/ksm_functional_tests.c index d8bd1911dfc0..996dc6645570 100644 --- a/tools/testing/selftests/mm/ksm_functional_tests.c +++ b/tools/testing/selftests/mm/ksm_functional_tests.c @@ -46,6 +46,8 @@ static int ksm_use_zero_pages_fd; static int pagemap_fd; static size_t pagesize; =20 +static void init_global_file_handles(void); + static bool range_maps_duplicates(char *addr, unsigned long size) { unsigned long offs_a, offs_b, pfn_a, pfn_b; @@ -274,6 +276,7 @@ static void test_unmerge(void) ksft_test_result(!range_maps_duplicates(map, size), "Pages were unmerged\n"); unmap: + ksm_unmerge(); munmap(map, size); } =20 @@ -338,6 +341,7 @@ static void test_unmerge_zero_pages(void) ksft_test_result(!range_maps_duplicates(map, size), "KSM zero pages were unmerged\n"); unmap: + ksm_unmerge(); munmap(map, size); } =20 @@ -366,6 +370,7 @@ static void test_unmerge_discarded(void) ksft_test_result(!range_maps_duplicates(map, size), "Pages were unmerged\n"); unmap: + ksm_unmerge(); munmap(map, size); } =20 @@ -452,6 +457,7 @@ static void test_unmerge_uffd_wp(void) close_uffd: close(uffd); unmap: + ksm_unmerge(); munmap(map, size); } #endif @@ -515,6 +521,7 @@ static int test_child_ksm(void) else if (map =3D=3D MAP_MERGE_SKIP) return -3; =20 + ksm_unmerge(); munmap(map, size); return 0; } @@ -548,6 +555,7 @@ static void test_prctl_fork(void) =20 child_pid =3D fork(); if (!child_pid) { + init_global_file_handles(); exit(test_child_ksm()); } else if (child_pid < 0) { ksft_test_result_fail("fork() failed\n"); @@ -595,7 +603,7 @@ static void test_prctl_fork_exec(void) return; } else if (child_pid =3D=3D 0) { char *prg_name =3D "./ksm_functional_tests"; - char *argv_for_program[] =3D { prg_name, FORK_EXEC_CHILD_PRG_NAME }; + char *argv_for_program[] =3D { prg_name, FORK_EXEC_CHILD_PRG_NAME, NULL = }; =20 execv(prg_name, argv_for_program); return; @@ -644,6 +652,7 @@ static void test_prctl_unmerge(void) ksft_test_result(!range_maps_duplicates(map, size), "Pages were unmerged\n"); unmap: + ksm_unmerge(); munmap(map, size); } =20 @@ -677,6 +686,7 @@ static void test_prot_none(void) ksft_test_result(!range_maps_duplicates(map, size), "Pages were unmerged\n"); unmap: + ksm_unmerge(); munmap(map, size); } =20 --=20 2.47.1 From nobody Sun Oct 5 21:57:21 2025 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7D490238C03; Tue, 29 Jul 2025 05:34:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767299; cv=none; b=RYfz3TUkG4drT4nlKw9lY5AY+K+iirdbn71VW3TGyvbhOLFwwJ3aWMq0xyRbtE5wZb8QakHPwtPsUjx1m3m/ISxtKXTBYlVm4/1G94FlPu8zCcIc0kjGBpTkFklluXxCDT5slG2ytqoc7GgY+dAwAB/GgsDIdxPY/02tp5BpODs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767299; c=relaxed/simple; bh=AC1UHEw7emc6yBJaz7owQGrbbZFPRP5+rXFWKOuy92s=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tibKvRJiJk8vIIUMscRlL3Uy36BCoPczVuzg0/mHJn7tYvZuq1B482od2/zRwPJW/7PLOltvyxj3WEjBXcQS/Ep5d0KD4pVgrUi6yH/KDFFOmWI9uIv2N5D+Ok+Qt20/P5aIj7XFBOsdnjMoUd/pi4QYjduym8Se9NXqRTGvh5M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=qVoTHgmh; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="qVoTHgmh" Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4Yu13015119; Tue, 29 Jul 2025 05:34:40 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=bKyTR1Ot8Jfwt64IZ +xNyXdgQMQnjFx/c4VyQqIovVU=; b=qVoTHgmhCn23HihT5A/LE26/xHgSQ0LjT 34FsssChvQh+gvSIrwLaxgoguRtNnSFhVp7pcytxBd/lyGLrAg7aU8+Ko83UzWlb B2KRKtS3LUObWqlevA5+Pn5RCm24hzKRigfzOawrsubvUFdTVjus/w7r6Ptb7Tk6 QmgXWembKDw/rqt0tdcti4iKZZjRk43YPV2nbkq4Mb1TKX4deHo7UIWpviXEqgHR Cg7w0OYVxsHSeQgWgqa1SggNEmn/aV8P66SnAYStWeypPVoJ0MaPiHVzBF9KD0nU NTDGGexg7tmcvWQZcExJF6ZpRRwXJhyRVLLcsgSpKkfUTiN6I0HIQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqbq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:40 +0000 (GMT) Received: from m0353729.ppops.net (m0353729.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 56T5Vbnl028107; Tue, 29 Jul 2025 05:34:39 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqbk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:39 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 56T0njE8006209; Tue, 29 Jul 2025 05:34:38 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 485bjm0tvy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:38 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay05.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 56T5YZ7U28836224 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 29 Jul 2025 05:34:35 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id EE03B20043; Tue, 29 Jul 2025 05:34:34 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3BDD320040; Tue, 29 Jul 2025 05:34:29 +0000 (GMT) Received: from aboo.ibm.com.com (unknown [9.150.11.63]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 29 Jul 2025 05:34:28 +0000 (GMT) From: Aboorva Devarajan To: akpm@linux-foundation.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, shuah@kernel.org, pfalcato@suse.de, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, donettom@linux.ibm.com, ritesh.list@gmail.com, aboorvad@linux.ibm.com Subject: [PATCH v3 4/7] mm/selftests: Fix split_huge_page_test failure on systems with 64KB page size Date: Tue, 29 Jul 2025 11:04:00 +0530 Message-ID: <20250729053403.1071807-5-aboorvad@linux.ibm.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250729053403.1071807-1-aboorvad@linux.ibm.com> References: <20250729053403.1071807-1-aboorvad@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzI5MDAzOCBTYWx0ZWRfX637bIYXNeM05 pAG9qIgL8I5hR2z9PYYuxX9uON9jcIy9j81sV7Hw1bBKiZyl7i85Y8krj+VDNtkPA7lLihp7Lli nMosgvuBiLTxnxPXyE5REA1s5pOE736j/2SP5GZufr5x2sWK/EEBSzWh1l2oPjSTO8fTpxMPi3P +Ea/P7o4CfWiKnDyJv8ooDNRMqRa5ILUkbuCTvsC36nT5Rv55v4bsSkm2/4KHc93tJGTVYJAjJ+ pL6UQt3hx7e+7R2XTBkLTDRR4VBM/arsmZ4z7JTStSGInf2UA0ie6Yy0oxLdzqUlS5viQkAWtGt kKM69Mspx7vkJ3LA/FZOV0fqmTyobvo7YyAT+kiOAt9nCXhEtXX9QAz9mG5TJzi35kV78O+47K/ uZzl1+cjEWLGTTsm4j0BBflASGICRGVP/zrJsxWsNNcWqf1ilauOMLya6a9PA0S7httcPzZ8 X-Authority-Analysis: v=2.4 cv=Je28rVKV c=1 sm=1 tr=0 ts=68885d70 cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=Wb1JkmetP80A:10 a=VnNF1IyMAAAA:8 a=7CQSdrXTAAAA:8 a=Ikd4Dj_1AAAA:8 a=Ru4QYyaz7G1s0NU_3jQA:9 a=a-qgeE7W1pNrGK8U0ZQC:22 X-Proofpoint-GUID: NjWfK-2Nnucekirter-ZB5ogg10fyL8I X-Proofpoint-ORIG-GUID: 1u_ZU51q9Vw5TIEhIXZSaKBNfmrphp30 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-29_01,2025-07-28_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=999 clxscore=1015 lowpriorityscore=0 spamscore=0 adultscore=0 suspectscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 phishscore=0 mlxscore=0 impostorscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507290038 Content-Type: text/plain; charset="utf-8" From: Donet Tom The split_huge_page_test fails on systems with a 64KB base page size. This is because the order of a 2MB huge page is different: On 64KB systems, the order is 5. On 4KB systems, it's 9. The test currently assumes a maximum huge page order of 9, which is only valid for 4KB base page systems. On systems with 64KB pages, attempting to split huge pages beyond their actual order (5) causes the test to fail. In this patch, we calculate the huge page order based on the system's base page size. With this change, the tests now run successfully on both 64KB and 4KB page size systems. Fixes: fa6c02315f745 ("mm: huge_memory: a new debugfs interface for splitti= ng THP tests") Reviewed-by: Dev Jain Reviewed-by: Zi Yan Co-developed-by: Aboorva Devarajan Signed-off-by: Aboorva Devarajan Signed-off-by: Donet Tom --- .../selftests/mm/split_huge_page_test.c | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/tools/testing/selftests/mm/split_huge_page_test.c b/tools/test= ing/selftests/mm/split_huge_page_test.c index 05de1fc0005b..718daceb5282 100644 --- a/tools/testing/selftests/mm/split_huge_page_test.c +++ b/tools/testing/selftests/mm/split_huge_page_test.c @@ -36,6 +36,7 @@ uint64_t pmd_pagesize; =20 #define PFN_MASK ((1UL<<55)-1) #define KPF_THP (1UL<<22) +#define GET_ORDER(nr_pages) (31 - __builtin_clz(nr_pages)) =20 int is_backed_by_thp(char *vaddr, int pagemap_file, int kpageflags_file) { @@ -522,6 +523,9 @@ int main(int argc, char **argv) const char *fs_loc; bool created_tmp; int offset; + unsigned int max_order; + unsigned int nr_pages; + unsigned int tests; =20 ksft_print_header(); =20 @@ -533,35 +537,38 @@ int main(int argc, char **argv) if (argc > 1) optional_xfs_path =3D argv[1]; =20 - ksft_set_plan(1+8+1+9+9+8*4+2); - pagesize =3D getpagesize(); pageshift =3D ffs(pagesize) - 1; pmd_pagesize =3D read_pmd_pagesize(); if (!pmd_pagesize) ksft_exit_fail_msg("Reading PMD pagesize failed\n"); =20 + nr_pages =3D pmd_pagesize / pagesize; + max_order =3D GET_ORDER(nr_pages); + tests =3D 2 + (max_order - 1) + (2 * max_order) + (max_order - 1) * 4 + 2; + ksft_set_plan(tests); + fd_size =3D 2 * pmd_pagesize; =20 split_pmd_zero_pages(); =20 - for (i =3D 0; i < 9; i++) + for (i =3D 0; i < max_order; i++) if (i !=3D 1) split_pmd_thp_to_order(i); =20 split_pte_mapped_thp(); - for (i =3D 0; i < 9; i++) + for (i =3D 0; i < max_order; i++) split_file_backed_thp(i); =20 created_tmp =3D prepare_thp_fs(optional_xfs_path, fs_loc_template, &fs_loc); - for (i =3D 8; i >=3D 0; i--) + for (i =3D max_order - 1; i >=3D 0; i--) split_thp_in_pagecache_to_order_at(fd_size, fs_loc, i, -1); =20 - for (i =3D 0; i < 9; i++) + for (i =3D 0; i < max_order; i++) for (offset =3D 0; - offset < pmd_pagesize / pagesize; - offset +=3D MAX(pmd_pagesize / pagesize / 4, 1 << i)) + offset < nr_pages; + offset +=3D MAX(nr_pages / 4, 1 << i)) split_thp_in_pagecache_to_order_at(fd_size, fs_loc, i, offset); cleanup_thp_fs(fs_loc, created_tmp); =20 --=20 2.47.1 From nobody Sun Oct 5 21:57:21 2025 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 70C41238C03; Tue, 29 Jul 2025 05:35:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767305; cv=none; b=Wm6cxe/BEhA6oTP3aXJDU/9gVY4J5FO33pdx6LiGCX1gHbWA/o9kki1c3KViTttFIdQyxv4WgV7a0R3qlvLAyET7gj9HddeX5u0yQzofAkq4Dx8YdPdxQWMbGaaPWWWbpU66vPYUupMB+dshkk8+xvK8M3wt7OVU09VqjGDwVMY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767305; c=relaxed/simple; bh=u1SARqDeceienih2G7RFRfMHkzL5vvE4xypUmQn9YUo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=H4WMGle0MVBrjBCOOf6bajPhTk9GXJDtSzXgIJSSLolX0K5dWDleLH2cK47XiUIDk3gJHaHuSdGw6ovprh1x24BFrdPPtmwqI+RMYCrcauOToI7fZmxyNarGtMJ6JNAo1QceCeK0CRpkNVHFfpm8TgGYohHXu5YWQL6yCGxprd8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=WxMPC0bO; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="WxMPC0bO" Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4Yu14015119; Tue, 29 Jul 2025 05:34:47 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=3yFkLfqgrcBFNMFUB 9G/stlH32cp6n7wPoj7eA1zvgo=; b=WxMPC0bOTHVD3BTqHC9hrOtortH0sdi6y Ir8QLqRUCQVtNsqOwRgBZ/DQ9JfmnBiXwbccmRd6lhTvmmU/D87+JfdpJntxIfpA Nyv77S4+NQnY4Dt1ZqlpJkMZVqnBid1JmsaGB1rSKRbm2V73MB3qZ4fL/ZLLdYBN Ckid5yA6FBohkuHpGtv5PblvLwO/m9Ux3pDNniuAapc311UlUzCjX+fonCH7TKYx XPraZI/wung4KYXMrsHZwXLpO35nLUGN/sjE/EmQOGPKUgppd4KhoJ3cG5hXtq2K 3JO5v3deTyaET5yfpvNzKjTq1Q+eX1IVad6ATC004WoowGhW173Kw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqc3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:46 +0000 (GMT) Received: from m0353729.ppops.net (m0353729.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 56T5PRxq014173; Tue, 29 Jul 2025 05:34:46 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqc1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:46 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4CDsG018312; Tue, 29 Jul 2025 05:34:44 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 485abp1161-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:44 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 56T5Yf0549086910 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 29 Jul 2025 05:34:41 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id DEE1220043; Tue, 29 Jul 2025 05:34:40 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8F29D20040; Tue, 29 Jul 2025 05:34:35 +0000 (GMT) Received: from aboo.ibm.com.com (unknown [9.150.11.63]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 29 Jul 2025 05:34:35 +0000 (GMT) From: Aboorva Devarajan To: akpm@linux-foundation.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, shuah@kernel.org, pfalcato@suse.de, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, donettom@linux.ibm.com, ritesh.list@gmail.com, aboorvad@linux.ibm.com Subject: [PATCH v3 5/7] selftests/mm: Fix child process exit codes in ksm_functional_tests Date: Tue, 29 Jul 2025 11:04:01 +0530 Message-ID: <20250729053403.1071807-6-aboorvad@linux.ibm.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250729053403.1071807-1-aboorvad@linux.ibm.com> References: <20250729053403.1071807-1-aboorvad@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzI5MDAzOCBTYWx0ZWRfXwtHsrPX0ZlnV vRDMd7q+XRCHF7r6JFqYgtZO9I20t5GiZColslgjn4/kXFPkBF7LA6cupJBTxlEQ/4aV5ASvCmD 0o55URyGD+mm/TOUIj9qhb3KO7wBBoKS51W7Ujl8i1/s1a4CXV3TiDgpi4kNFQrMNLBElP/iYCA +BJqDoBU3Q2JECIRFXeAaAv93zAfehQz5iDowMdY29ybffV8myd2h8QGa6rezG3ttM2k9ekVdu+ tIIHXO0p9aA/KjBs7nea/dxUIPXVsirFMNOP7vd7BiuJ81RrjGmL11ZWno32OnLBrclhcCufWG0 OgpJrUstaLkjAq8hgdQ9oQT3BwrU18mioL6sB9v43u+roROEeTRTEDG4Z085PhE5Pg42Yzz50eY u0TwuTI7aTWMlrnzcPNAsjMoeiRAhv6jBKLYHjm/0jOHbOKNqYusVVB9UbZ/EciNLjF0/kuM X-Authority-Analysis: v=2.4 cv=Je28rVKV c=1 sm=1 tr=0 ts=68885d76 cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=Wb1JkmetP80A:10 a=20KFwNOVAAAA:8 a=VnNF1IyMAAAA:8 a=1sOJkUf8yoZECTHbNm8A:9 X-Proofpoint-GUID: XAjm13B9EvkL-PDJgVkodk-s46CQDaIv X-Proofpoint-ORIG-GUID: jLhF2rdmaYKlif9AHFjNC0WJm1TiEGk- X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-29_01,2025-07-28_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=999 clxscore=1015 lowpriorityscore=0 spamscore=0 adultscore=0 suspectscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 phishscore=0 mlxscore=0 impostorscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507290038 Content-Type: text/plain; charset="utf-8" In ksm_functional_tests, test_child_ksm() returned negative values to indicate errors. However, when passed to exit(), these were interpreted as large unsigned values (e.g, -2 became 254), leading to incorrect handling in the parent process. As a result, some tests appeared to be skipped or silently failed. This patch changes test_child_ksm() to return positive error codes (1, 2, 3) and updates test_child_ksm_err() to interpret them correctly. Additionally, test_prctl_fork_exec() now uses exit(4) after a failed execv() to clearly signal exec failures. This ensures the parent accurately detects and reports child process failures. Acked-by: David Hildenbrand -------------- Before patch: -------------- - [RUN] test_unmerge ok 1 Pages were unmerged ... - [RUN] test_prctl_fork - No pages got merged - [RUN] test_prctl_fork_exec ok 7 PR_SET_MEMORY_MERGE value is inherited ... Bail out! 1 out of 8 tests failed - Planned tests !=3D run tests (9 !=3D 8) - Totals: pass:7 fail:1 xfail:0 xpass:0 skip:0 error:0 -------------- After patch: -------------- - [RUN] test_unmerge ok 1 Pages were unmerged ... - [RUN] test_prctl_fork - No pages got merged not ok 7 Merge in child failed - [RUN] test_prctl_fork_exec ok 8 PR_SET_MEMORY_MERGE value is inherited ... Bail out! 2 out of 9 tests failed - Totals: pass:7 fail:2 xfail:0 xpass:0 skip:0 error:0 Fixes: 6c47de3be3a0 ("selftest/mm: ksm_functional_tests: extend test case f= or ksm fork/exec") Acked-by: David Hildenbrand Co-developed-by: Donet Tom Signed-off-by: Donet Tom Signed-off-by: Aboorva Devarajan --- .../testing/selftests/mm/ksm_functional_tests.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/tools/testing/selftests/mm/ksm_functional_tests.c b/tools/test= ing/selftests/mm/ksm_functional_tests.c index 996dc6645570..534aa405cac7 100644 --- a/tools/testing/selftests/mm/ksm_functional_tests.c +++ b/tools/testing/selftests/mm/ksm_functional_tests.c @@ -512,14 +512,14 @@ static int test_child_ksm(void) =20 /* Test if KSM is enabled for the process. */ if (prctl(PR_GET_MEMORY_MERGE, 0, 0, 0, 0) !=3D 1) - return -1; + return 1; =20 /* Test if merge could really happen. */ map =3D __mmap_and_merge_range(0xcf, size, PROT_READ | PROT_WRITE, KSM_ME= RGE_NONE); if (map =3D=3D MAP_MERGE_FAIL) - return -2; + return 2; else if (map =3D=3D MAP_MERGE_SKIP) - return -3; + return 3; =20 ksm_unmerge(); munmap(map, size); @@ -528,12 +528,14 @@ static int test_child_ksm(void) =20 static void test_child_ksm_err(int status) { - if (status =3D=3D -1) + if (status =3D=3D 1) ksft_test_result_fail("unexpected PR_GET_MEMORY_MERGE result in child\n"= ); - else if (status =3D=3D -2) + else if (status =3D=3D 2) ksft_test_result_fail("Merge in child failed\n"); - else if (status =3D=3D -3) + else if (status =3D=3D 3) ksft_test_result_skip("Merge in child skipped\n"); + else if (status =3D=3D 4) + ksft_test_result_fail("Binary not found\n"); } =20 /* Verify that prctl ksm flag is inherited. */ @@ -606,7 +608,7 @@ static void test_prctl_fork_exec(void) char *argv_for_program[] =3D { prg_name, FORK_EXEC_CHILD_PRG_NAME, NULL = }; =20 execv(prg_name, argv_for_program); - return; + exit(4); } =20 if (waitpid(child_pid, &status, 0) > 0) { --=20 2.47.1 From nobody Sun Oct 5 21:57:21 2025 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3B1F723F439; Tue, 29 Jul 2025 05:35:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.158.5 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767309; cv=none; b=Yy1dDhHxkxqW5rRUtAJk1yVQ6odE9dMtLRPTUKzMuBwX7pQ301NjiySskOVZiaVAz06sBI+PTwmhcbL5/TAAViWV0FpuewdkbwIir+srKl6hml3b3XixhgdzGrnKnH+Edhe30xEDkWPe3+gabm09NnGJI47ndALhepm5Rj8+me4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767309; c=relaxed/simple; bh=IfyPx1mzQsb3uICDZEVfxL5ucd++j33JG5nx122uCII=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ghYMqBt1mo9FkkvglGpwPzzbSzn0NV7JCwY8TwQILvW5XnbFpFw8p1YokHi4mC1MMBw/Pfb/Gs9cSJI3fROoB6ySxaOc/r+1Obr7ry+paTMejAL1Y3QLm3q11+I2eJc3ytLIZFzPPiEdnFGQKTKBiCxJhFVYQ292nQp4nnHUxX8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=YG5jNBD+; arc=none smtp.client-ip=148.163.158.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="YG5jNBD+" Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4Z2fg023071; Tue, 29 Jul 2025 05:34:52 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=puctAwqoH4VWxfpXZ N+AbLrRyBve2Bkehva2Jfypeiw=; b=YG5jNBD+qAllCCb9ayUlxc9LP/SZamInU 7sa9U72Mpf1s+8LCFACuBULPh0fWRa6uZ5ByPJwPivg5sTyJfLpwLdOnyiG/H7U1 csLcaWZ3kNjHIOBIahfSF8vy+HVNgCu27qs/7zInSVBAwVpermge71YJ4CqFWZn5 duTrrBhJJWv+pT3o1ZSbdKMIEZVKQLQgR80YVsgICTc38IY98PV0+5wLcBm7prQ0 Wm5kcc7fkLSKiW+DiGZQxVox8r72Wj6hrv0HQ4jdIAXRuw5tvvMXwYISgXxpT5ZA yi3oKM7kPZTlfbDOuWAbd/mM+GnNGq2PVYp6Y5+0WBjRwLvfoIpOw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qd5csvy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:52 +0000 (GMT) Received: from m0353725.ppops.net (m0353725.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 56T5NwGV019251; Tue, 29 Jul 2025 05:34:51 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qd5csvt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:51 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 56T0kdY0006242; Tue, 29 Jul 2025 05:34:50 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 485bjm0twr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:50 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 56T5YlgL20382006 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 29 Jul 2025 05:34:47 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2782D20043; Tue, 29 Jul 2025 05:34:47 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 674F120040; Tue, 29 Jul 2025 05:34:41 +0000 (GMT) Received: from aboo.ibm.com.com (unknown [9.150.11.63]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 29 Jul 2025 05:34:41 +0000 (GMT) From: Aboorva Devarajan To: akpm@linux-foundation.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, shuah@kernel.org, pfalcato@suse.de, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, donettom@linux.ibm.com, ritesh.list@gmail.com, aboorvad@linux.ibm.com Subject: [PATCH v3 6/7] selftests/mm: Skip thuge-gen test if system is not setup properly Date: Tue, 29 Jul 2025 11:04:02 +0530 Message-ID: <20250729053403.1071807-7-aboorvad@linux.ibm.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250729053403.1071807-1-aboorvad@linux.ibm.com> References: <20250729053403.1071807-1-aboorvad@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzI5MDAzOCBTYWx0ZWRfX9353wI5WPT9p 0HxgOgUzYLCsRfxNTQ0W04rrUBX8J+IdV+w+scY0HnAUIHbF6CjeI/cTgJaOdXCVuZ43jePd3/U nUrriP3j6BKuPwQWS263LxoOSVQRS1+sllaHUmL5GdOKjOLkbDqlr3bBtf1ggcjuDAX898VX+8J t3QXKRm8zxp0jsrSgGGUR/njFOBr+DRaSTnW277Jej1oBYpERmcmxaK9vgbwuvKVUymgbZedkI1 zKRQoLQ/jxfkJZfm6A8RDnLPO/O2PMyYj1VP1iS/zruYAjQgKbwg3aY0kFvMPBAGlMiPwvZKHIk 2Eg75XtXbsKSU/vHjk4JYr8KoxXggySu24aQUVgrmeMyomakHzlSXHvGUa0mLj/U2BEp3ZDJAbX NrDGsBjRStuXP3E2h6hKBNaqoEJtWEDoxZw05RwFm5LifbMUITDfAiDi9cJqD/rwWFXcXBLK X-Proofpoint-ORIG-GUID: owjdkx3vLbfUBCKN3LeoYoInS9y9NNdw X-Authority-Analysis: v=2.4 cv=B9q50PtM c=1 sm=1 tr=0 ts=68885d7c cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=Wb1JkmetP80A:10 a=7CQSdrXTAAAA:8 a=20KFwNOVAAAA:8 a=Ikd4Dj_1AAAA:8 a=VnNF1IyMAAAA:8 a=6zTM3Imc7A7I5ri1M5IA:9 a=a-qgeE7W1pNrGK8U0ZQC:22 X-Proofpoint-GUID: uoTHmPnNFgwRGLOFVMlrBynDbJ7dL9bO X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-29_01,2025-07-28_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 mlxscore=0 spamscore=0 mlxlogscore=999 suspectscore=0 clxscore=1015 impostorscore=0 bulkscore=0 lowpriorityscore=0 malwarescore=0 adultscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507290038 Content-Type: text/plain; charset="utf-8" Make thuge-gen skip instead of fail when it can't run due to system settings. If shmmax is too small or no 1G huge pages are available, the test now prints a warning and is marked as skipped. Acked-by: David Hildenbrand Reviewed-by: Dev Jain Reviewed-by: Zi Yan ------------------- Before Patch: ------------------- ~ running ./thuge-gen ~ Bail out! Please do echo 262144 > /proc/sys/kernel/shmmax ~ Totals: pass:0 fail:0 xfail:0 xpass:0 skip:0 error:0 ~ [FAIL] not ok 28 thuge-gen ~ exit=3D1 ------------------- After Patch: ------------------- ~ running ./thuge-gen ~ ~ WARNING: shmmax is too small to run this test. ~ ~ Please run the following command to increase shmmax: ~ ~ echo 262144 > /proc/sys/kernel/shmmax ~ 1..0 ~ SKIP Test skipped due to insufficient shmmax value. ~ [SKIP] ok 29 thuge-gen ~ SKIP Reviewed-by: Dev Jain Acked-by: David Hildenbrand Reviewed-by: Zi Yan Co-developed-by: Donet Tom Signed-off-by: Donet Tom Signed-off-by: Aboorva Devarajan --- tools/testing/selftests/mm/thuge-gen.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/mm/thuge-gen.c b/tools/testing/selftes= ts/mm/thuge-gen.c index 8e2b08dc5762..4f5e290ff1a6 100644 --- a/tools/testing/selftests/mm/thuge-gen.c +++ b/tools/testing/selftests/mm/thuge-gen.c @@ -177,13 +177,16 @@ void find_pagesizes(void) globfree(&g); =20 read_sysfs("/proc/sys/kernel/shmmax", &shmmax_val); - if (shmmax_val < NUM_PAGES * largest) - ksft_exit_fail_msg("Please do echo %lu > /proc/sys/kernel/shmmax", - largest * NUM_PAGES); + if (shmmax_val < NUM_PAGES * largest) { + ksft_print_msg("WARNING: shmmax is too small to run this test.\n"); + ksft_print_msg("Please run the following command to increase shmmax:\n"); + ksft_print_msg("echo %lu > /proc/sys/kernel/shmmax\n", largest * NUM_PAG= ES); + ksft_exit_skip("Test skipped due to insufficient shmmax value.\n"); + } =20 #if defined(__x86_64__) if (largest !=3D 1U<<30) { - ksft_exit_fail_msg("No GB pages available on x86-64\n" + ksft_exit_skip("No GB pages available on x86-64\n" "Please boot with hugepagesz=3D1G hugepages=3D%d\n", NUM_PAGES); } #endif --=20 2.47.1 From nobody Sun Oct 5 21:57:21 2025 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CA732245000; Tue, 29 Jul 2025 05:35:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767316; cv=none; b=NHAd1/dD5Nffj24BWHMM7J3yDPJHfeyra+08T/zzwjqJqqRU8PkdUzYn7cDf7U/FbCjY/h/yv8R7fnT2S4UgsZQq97kgHB33XiMOcLdvIMh5W2yNuPJz/gbAN8+4zfwH1Q93sA8PcO9wK/2LHPSqAj+3KFfQOUEhdUA0cDWgVVI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753767316; c=relaxed/simple; bh=L8yk0I8eEqtNR5+doknF2jsN0wuOs9YnrJPchV+zR4A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qzQYu1MRV+Xj6AQbZiMEOOPLGVtv8XmswCQ6xtu6oo1Sxxn4c2CcO7A5+cOGjPzIZsZ63dfOSCJb+1HEaGLFhC5mXs7NUf34a1yJWc0EfEhfzsgwD1y9ARcnESJRA70k9JlpeMqcyFVl+6xFDePEgDiaimYCCIkjeEEdwYbquuI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=La1wxWKb; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="La1wxWKb" Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56T4YwTZ015155; Tue, 29 Jul 2025 05:34:59 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=I3fCHcP374PKE/USG 24onJKIBeFDzBfdCxFluw7C2aw=; b=La1wxWKbb6DEVxSeuACr0M4PINjLb9pB+ gqLbg7u5WqM0nf6JfklDjs89pbmMO5G4BLFVKxrfhj0dXK/3xBkfbKvf4aYxIF2b IgliZ2Prf/nMOcWEUwzprfPXrm2jDXsNswJDRnRgfWqN+NRl2SQerQYSbPigevgq b+af85lcLUFoBEWjTJ/p+TAAjZV5wqEpEPwiKhSn1cr5pH0MCVz+0mY8AmoYKM+b eGZCFtkNzAEORJKGqtesnEg5Fz9gtWXosvnTJB1PDfte0MPXHKl9hHgM4aF5rrlJ EfXSPzbU87FOfdxIUGu4Er+gOV7a/+a/hOQQtRGMm8CAe7eyh4tZQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqcg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:58 +0000 (GMT) Received: from m0353729.ppops.net (m0353729.ppops.net [127.0.0.1]) by pps.reinject (8.18.1.12/8.18.0.8) with ESMTP id 56T5YwVL002054; Tue, 29 Jul 2025 05:34:58 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 484qfqmqcd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:58 +0000 (GMT) Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 56T3A7uR017969; Tue, 29 Jul 2025 05:34:57 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 4859bth6dc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 29 Jul 2025 05:34:56 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 56T5YrWu44826976 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 29 Jul 2025 05:34:53 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4AEF12004B; Tue, 29 Jul 2025 05:34:53 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A397E20040; Tue, 29 Jul 2025 05:34:47 +0000 (GMT) Received: from aboo.ibm.com.com (unknown [9.150.11.63]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 29 Jul 2025 05:34:47 +0000 (GMT) From: Aboorva Devarajan To: akpm@linux-foundation.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, shuah@kernel.org, pfalcato@suse.de, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, donettom@linux.ibm.com, ritesh.list@gmail.com, aboorvad@linux.ibm.com Subject: [PATCH v3 7/7] selftests/mm: Skip hugepage-mremap test if userfaultfd unavailable Date: Tue, 29 Jul 2025 11:04:03 +0530 Message-ID: <20250729053403.1071807-8-aboorvad@linux.ibm.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250729053403.1071807-1-aboorvad@linux.ibm.com> References: <20250729053403.1071807-1-aboorvad@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzI5MDAzOCBTYWx0ZWRfX5HDTFZBViXsj sQriN2PAF/TEQNGcwLEZm7IqyrmlXzJcxAdOixgG6zO2r1Zi+L2F9o2WjlqttnWF++K4/O9JASx L5jGUOYYPbNjJ9kVgc9mX6FsdiRpoR2VtaddaptwyxzlMGuh3YbnhkEBHCTswdm5s8YdUIGU/Zt 0lKVdKwQCaxtGxEdhyM/OasYMOPZ+GjakFJoHW9o21+/HQWuLqa1qiGu32dgzq5KiouD9aCYjy1 6wJBCsfUTTCZBjgjAVeEsxOy8Ha9It4f7DHkwUCj5FmBkeIBOjTXJVp1fSW2GNacbm3RtFl+OBB PX50BRebn6jYFbkLK+SA/0Wkh8vTML0VoCeY1m8wUbIHGlqbecKXnsxkPY7jL5ldytqwQVpOfNK Q78woXIYbNWizMmBPvJuN2ZOeW0Vc4czGsUwO0WD0YfXd/H929d4WqHkTBh5bkt27zt3a+0y X-Authority-Analysis: v=2.4 cv=Je28rVKV c=1 sm=1 tr=0 ts=68885d82 cx=c_pps a=bLidbwmWQ0KltjZqbj+ezA==:117 a=bLidbwmWQ0KltjZqbj+ezA==:17 a=Wb1JkmetP80A:10 a=20KFwNOVAAAA:8 a=Ikd4Dj_1AAAA:8 a=VnNF1IyMAAAA:8 a=6zTM3Imc7A7I5ri1M5IA:9 X-Proofpoint-GUID: PKKiQI5cwGNe6XvMWxlnWgNZrfba5Dml X-Proofpoint-ORIG-GUID: -qUcTG5LhWDqQW1_-b_YoFOsW4noWCr9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-29_01,2025-07-28_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=999 clxscore=1015 lowpriorityscore=0 spamscore=0 adultscore=0 suspectscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 phishscore=0 mlxscore=0 impostorscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507290038 Content-Type: text/plain; charset="utf-8" Gracefully skip test if userfaultfd is not supported (ENOSYS) or not permitted (EPERM), instead of failing. This avoids misleading failures with clear skip messages. Acked-by: David Hildenbrand Reviewed-by: Zi Yan -------------- Before Patch -------------- ~ running ./hugepage-mremap ... ~ Bail out! userfaultfd: Function not implemented ~ Planned tests !=3D run tests (1 !=3D 0) ~ Totals: pass:0 fail:0 xfail:0 xpass:0 skip:0 error:0 ~ [FAIL] not ok 4 hugepage-mremap # exit=3D1 -------------- After Patch -------------- ~ running ./hugepage-mremap ... ~ ok 2 # SKIP userfaultfd is not supported/not enabled. ~ 1 skipped test(s) detected. ~ Totals: pass:0 fail:0 xfail:0 xpass:0 skip:1 error:0 ~ [SKIP] ok 4 hugepage-mremap # SKIP Acked-by: David Hildenbrand Reviewed-by: Zi Yan Co-developed-by: Donet Tom Signed-off-by: Donet Tom Signed-off-by: Aboorva Devarajan --- tools/testing/selftests/mm/hugepage-mremap.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/mm/hugepage-mremap.c b/tools/testing/s= elftests/mm/hugepage-mremap.c index c463d1c09c9b..2bd1dac75c3f 100644 --- a/tools/testing/selftests/mm/hugepage-mremap.c +++ b/tools/testing/selftests/mm/hugepage-mremap.c @@ -65,10 +65,20 @@ static void register_region_with_uffd(char *addr, size_= t len) struct uffdio_api uffdio_api; =20 /* Create and enable userfaultfd object. */ - uffd =3D syscall(__NR_userfaultfd, O_CLOEXEC | O_NONBLOCK); - if (uffd =3D=3D -1) - ksft_exit_fail_msg("userfaultfd: %s\n", strerror(errno)); + if (uffd =3D=3D -1) { + switch (errno) { + case EPERM: + ksft_exit_skip("Insufficient permissions, try running as root.\n"); + break; + case ENOSYS: + ksft_exit_skip("userfaultfd is not supported/not enabled.\n"); + break; + default: + ksft_exit_fail_msg("userfaultfd failed with %s\n", strerror(errno)); + break; + } + } =20 uffdio_api.api =3D UFFD_API; uffdio_api.features =3D 0; --=20 2.47.1