{"id":2223024,"url":"http://patchwork.ozlabs.org/api/patches/2223024/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/37b8bdb379a845beaba645c104fb0cc31aca57ac.1776150071.git.sayalip@linux.ibm.com/","project":{"id":2,"url":"http://patchwork.ozlabs.org/api/projects/2/?format=json","name":"Linux PPC development","link_name":"linuxppc-dev","list_id":"linuxppc-dev.lists.ozlabs.org","list_email":"linuxppc-dev@lists.ozlabs.org","web_url":"https://github.com/linuxppc/wiki/wiki","scm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git","webscm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/","list_archive_url":"https://lore.kernel.org/linuxppc-dev/","list_archive_url_format":"https://lore.kernel.org/linuxppc-dev/{}/","commit_url_format":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}"},"msgid":"<37b8bdb379a845beaba645c104fb0cc31aca57ac.1776150071.git.sayalip@linux.ibm.com>","list_archive_url":"https://lore.kernel.org/linuxppc-dev/37b8bdb379a845beaba645c104fb0cc31aca57ac.1776150071.git.sayalip@linux.ibm.com/","date":"2026-04-14T08:22:03","name":"[v5,09/14] selftest/mm: register existing mapping with userfaultfd in hugepage-mremap","commit_ref":null,"pull_url":null,"state":"handled-elsewhere","archived":false,"hash":"dc858f369600208a1d82a1ef3abf888c0d7b0265","submitter":{"id":92656,"url":"http://patchwork.ozlabs.org/api/people/92656/?format=json","name":"Sayali Patil","email":"sayalip@linux.ibm.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/37b8bdb379a845beaba645c104fb0cc31aca57ac.1776150071.git.sayalip@linux.ibm.com/mbox/","series":[{"id":499800,"url":"http://patchwork.ozlabs.org/api/series/499800/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=499800","date":"2026-04-14T08:21:54","name":"selftests/mm: fix failures and robustness improvements","version":5,"mbox":"http://patchwork.ozlabs.org/series/499800/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2223024/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2223024/checks/","tags":{},"related":[],"headers":{"Return-Path":"\n <linuxppc-dev+bounces-19736-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=M3q6BCcj;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-19736-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=none smtp.remote-ip=148.163.158.5","lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=linux.ibm.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=M3q6BCcj;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=linux.ibm.com\n (client-ip=148.163.158.5; helo=mx0b-001b2d01.pphosted.com;\n envelope-from=sayalip@linux.ibm.com; receiver=lists.ozlabs.org)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\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 4fvy3V1dDkz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 14 Apr 2026 18:23:50 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4fvy2x1JJXz2yvH;\n\tTue, 14 Apr 2026 18:23:21 +1000 (AEST)","from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com\n [148.163.158.5])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4fvy2w1nlnz2yvD\n\tfor <linuxppc-dev@lists.ozlabs.org>; Tue, 14 Apr 2026 18:23:20 +1000 (AEST)","from pps.filterd (m0353725.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63E3nCwF2487108;\n\tTue, 14 Apr 2026 08:23:06 GMT","from ppma11.dal12v.mail.ibm.com\n (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219])\n\tby mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4dh89m1ppj-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n\tTue, 14 Apr 2026 08:23:05 +0000 (GMT)","from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1])\n\tby ppma11.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id\n 63E6E6jt025803;\n\tTue, 14 Apr 2026 08:23:04 GMT","from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225])\n\tby ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4dg3b1gce7-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n\tTue, 14 Apr 2026 08:23:04 +0000","from smtpav04.fra02v.mail.ibm.com (smtpav04.fra02v.mail.ibm.com\n [10.20.54.103])\n\tby smtprelay05.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id\n 63E8N02A42992012\n\t(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);\n\tTue, 14 Apr 2026 08:23:00 GMT","from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id C6BE22004B;\n\tTue, 14 Apr 2026 08:22:59 +0000 (GMT)","from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id AD62F20043;\n\tTue, 14 Apr 2026 08:22:55 +0000 (GMT)","from li-3f69264c-2ce6-11b2-a85c-c3f414d24014.ibm.com.com (unknown\n [9.39.26.223])\n\tby smtpav04.fra02v.mail.ibm.com (Postfix) with ESMTP;\n\tTue, 14 Apr 2026 08:22:55 +0000 (GMT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1776155001;\n\tcv=none;\n b=d63Q0WlD2RKoNEzqYd+RPITjVuxOWAd6x4VMxBwY0+BlZ62DoMxTHIi4HVap0hNOayodGr7uokpuvzaovmdzZfZvG1BHYQCl/9eLh8cvWc2nhd+gkG3HUO8dYCib1yHDd1sPw4EAE84tT7SBC7zyvR0gJDxOMFEpezeLUrkE7r9auNoBbRSMglb30QkAyiwy6lZRX+W4O8JFeADuTL0reCvmYDCqCEr75dmp+xzyg8nmjmHocTq9CN+94Pyhm84kwE3oNlHCqLIihPF/bKKA0NpFfNPq4FCl5LmBDIVvR0If6ZcadV8PzTEbV4148L0+jC5VVtpadeowW/Y91OVSZw==","ARC-Message-Signature":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1776155001; c=relaxed/relaxed;\n\tbh=moIJIypDjtmZnGtHAK76laQuaSh8Y71cRRNVJavHh8k=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=Xe03pROfghEBZ2GlubNkj147L2AhR+A7xaEdG+La2D3KeIEI2LpT6AdgqwZmGkPgHjZDnwslrkFAaCSc4ek+psD3p19loxa6m44ARtGY71vsU4mVM2mpGp2/2mJbj05Ga7ioiK5GOEWTDoTHt7zcegFeg0G7VIbA9ameIFVAbW/3PTCeFrr6x3ZaO2M8g/9XFj63lhm5THiho9trxoLSSq+qrPD12HvHg5tqlezcIMT2py0Onu2FF77+LQnS5iYWI3Rqoi2oDImvr8qN1pBpzaHkpFSQ9HN3cXXGqyUuLyVBJMF55Lhrtes1mHY5gi2ynW66RG982GRJ4EmbPO0T0A==","ARC-Authentication-Results":"i=1; lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=linux.ibm.com;\n dkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=M3q6BCcj; dkim-atps=neutral;\n spf=pass (client-ip=148.163.158.5; helo=mx0b-001b2d01.pphosted.com;\n envelope-from=sayalip@linux.ibm.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=linux.ibm.com","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc\n\t:content-transfer-encoding:date:from:in-reply-to:message-id\n\t:mime-version:references:subject:to; s=pp1; bh=moIJIypDjtmZnGtHA\n\tK76laQuaSh8Y71cRRNVJavHh8k=; b=M3q6BCcjcAQU4EFVdESnk3nTncbxCZUlM\n\t1zb1t5qahYkaw33q8wJhAJOEXZviguMXWixw6/o7zlVwziqzq7oHzS0LP2FEVILf\n\tyOp32o1FgYwaCogMvPT+JV/csybaC1mYWMgwAAQDlwYg/MGFJtv9pjuqKthexe4S\n\t7v39FH4/upCBRBE4kc7b66DlrWvKCRW+DetzRy6Spdeh9TCOUu7TTUE21ZEq4h1C\n\tUGVuVUkQvJpzQQ0/1ziOhS3Kfn7sZzkpCV+RCuna7Iibw+BnBZAKlO3w9OpzVzah\n\tHk2m8wJH4GHymeY0dAo+XtQSo3nmkNvFWLs4bp1eKXiJyu8qfUEZA==","From":"Sayali Patil <sayalip@linux.ibm.com>","To":"Andrew Morton <akpm@linux-foundation.org>, Shuah Khan <shuah@kernel.org>,\n        linux-mm@kvack.org, linux-kernel@vger.kernel.org,\n        linux-kselftest@vger.kernel.org,\n        Ritesh Harjani <ritesh.list@gmail.com>","Cc":"David Hildenbrand <david@kernel.org>, Zi Yan <ziy@nvidia.com>,\n        Michal Hocko <mhocko@kernel.org>, Oscar Salvador <osalvador@suse.de>,\n        Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,\n        Dev Jain <dev.jain@arm.com>, Liam.Howlett@oracle.com,\n        linuxppc-dev@lists.ozlabs.org, Miaohe Lin <linmiaohe@huawei.com>,\n        Venkat Rao Bagalkote <venkat88@linux.ibm.com>,\n        Sayali Patil <sayalip@linux.ibm.com>","Subject":"[PATCH v5 09/14] selftest/mm: register existing mapping with\n userfaultfd in hugepage-mremap","Date":"Tue, 14 Apr 2026 13:52:03 +0530","Message-ID":"\n <37b8bdb379a845beaba645c104fb0cc31aca57ac.1776150071.git.sayalip@linux.ibm.com>","X-Mailer":"git-send-email 2.52.0","In-Reply-To":"<cover.1776150071.git.sayalip@linux.ibm.com>","References":"<cover.1776150071.git.sayalip@linux.ibm.com>","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-TM-AS-GCONF":"00","X-Proofpoint-Reinject":"loops=2 maxloops=12","X-Authority-Analysis":"v=2.4 cv=I/dVgtgg c=1 sm=1 tr=0 ts=69ddf969 cx=c_pps\n a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17\n a=A5OVakUREuEA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22\n a=V8glGbnc2Ofi9Qvn3v5h:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8\n a=gVE5Qc0x_BWLnb-D2gsA:9","X-Proofpoint-GUID":"TfL428gbz9wY0OGEa0YNiF696CJtIz0I","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDE0MDA3NyBTYWx0ZWRfX0IHV8b100D7a\n BPxPYmJFDKnRm2Brk98k8pxEgIkMSssYwMzoexj05OtaYCHQTzCGiBinQfX54BjvfO1MD8FvJSu\n HAaxNnRBRB61TwCab3HxBR/pJbzPs1aAGBPSEDq35Rdf4YsBOwirUIw0N65qf5z4h+d0p0qtPIR\n FXmbBO1maiIwmzAHF4UsUlfGA9CUlMsYtJq75SlT5548tGdcmlUvh9xycrk9MFwxs04x8/MSYuP\n 5hwe1J/C0/sPzal1vBJ/n3BW8aNYN8UVW1opXBFdM67fQM4xysAcF/LcFakaink06PwfGmKPRyg\n cu63y1vdRwrcmYE4S9KCV/9E2spkp+QRZEiRE/Ct1q14nu4cSbzHpxfGa/+PpSuI0WwvMkWjCuc\n PxubKnzfj2o8m5kmMKNNTFBmWyNFU4Ocaq7xjsnyiQSr8FSH+YwVfUTcMLBcJYF/9h2NmDS7FYB\n rso24PSTam64o4brI3A==","X-Proofpoint-ORIG-GUID":"qMABBfHeIhCOuLcikZRA_GA1scV5rCuK","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-14_02,2026-04-13_04,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n malwarescore=0 bulkscore=0 clxscore=1015 adultscore=0 lowpriorityscore=0\n suspectscore=0 impostorscore=0 phishscore=0 spamscore=0 priorityscore=1501\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2604070000 definitions=main-2604140077","X-Spam-Status":"No, score=-0.7 required=3.0 tests=DKIM_SIGNED,DKIM_VALID,\n\tRCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,\n\tSPF_PASS autolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"},"content":"Previously, register_region_with_uffd() created a new anonymous\nmapping and overwrote the address supplied by the caller before\nregistering the range with userfaultfd.\n\nAs a result, userfaultfd was applied to an unrelated anonymous mapping\ninstead of the hugetlb region used by the test.\n\nRemove the extra mmap() and register the caller-provided address range\ndirectly using UFFDIO_REGISTER_MODE_MISSING, so that faults are\ngenerated for the hugetlb mapping used by the test.\n\nThis ensures userfaultfd operates on the actual hugetlb test region and\nvalidates the expected fault handling.\n\nBefore patch:\n running ./hugepage-mremap\n -------------------------\n TAP version 13\n 1..1\n  Map haddr: Returned address is 0x7eaa40000000\n  Map daddr: Returned address is 0x7daa40000000\n  Map vaddr: Returned address is 0x7faa40000000\n  Address returned by mmap() = 0x7fff9d000000\n  Mremap: Returned address is 0x7faa40000000\n  First hex is 0\n  First hex is 3020100\n ok 1 Read same data\n Totals: pass:1 fail:0 xfail:0 xpass:0 skip:0 error:0\n [PASS]\n ok 1 hugepage-mremap\n\nAfter patch:\n running ./hugepage-mremap\n -------------------------\n TAP version 13\n 1..1\n  Map haddr: Returned address is 0x7eaa40000000\n  Map daddr: Returned address is 0x7daa40000000\n  Map vaddr: Returned address is 0x7faa40000000\n  Registered memory at address 0x7eaa40000000 with userfaultfd\n  Mremap: Returned address is 0x7faa40000000\n  First hex is 0\n  First hex is 3020100\n ok 1 Read same data\n Totals: pass:1 fail:0 xfail:0 xpass:0 skip:0 error:0\n [PASS]\n ok 1 hugepage-mremap\n\nFixes: 12b613206474 (\"mm, hugepages: add hugetlb vma mremap() test\")\nAcked-by: David Hildenbrand (Arm) <david@kernel.org>\nTested-by: Venkat Rao Bagalkote <venkat88@linux.ibm.com>\nSigned-off-by: Sayali Patil <sayalip@linux.ibm.com>\n---\n tools/testing/selftests/mm/hugepage-mremap.c | 21 +++++---------------\n 1 file changed, 5 insertions(+), 16 deletions(-)","diff":"diff --git a/tools/testing/selftests/mm/hugepage-mremap.c b/tools/testing/selftests/mm/hugepage-mremap.c\nindex f66e4d806477..68c35d1d8a5f 100644\n--- a/tools/testing/selftests/mm/hugepage-mremap.c\n+++ b/tools/testing/selftests/mm/hugepage-mremap.c\n@@ -86,25 +86,14 @@ static void register_region_with_uffd(char *addr, size_t len)\n \tif (ioctl(uffd, UFFDIO_API, &uffdio_api) == -1)\n \t\tksft_exit_fail_msg(\"ioctl-UFFDIO_API: %s\\n\", strerror(errno));\n \n-\t/* Create a private anonymous mapping. The memory will be\n-\t * demand-zero paged--that is, not yet allocated. When we\n-\t * actually touch the memory, it will be allocated via\n-\t * the userfaultfd.\n-\t */\n-\n-\taddr = mmap(NULL, len, PROT_READ | PROT_WRITE,\n-\t\t    MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);\n-\tif (addr == MAP_FAILED)\n-\t\tksft_exit_fail_msg(\"mmap: %s\\n\", strerror(errno));\n-\n-\tksft_print_msg(\"Address returned by mmap() = %p\\n\", addr);\n-\n-\t/* Register the memory range of the mapping we just created for\n-\t * handling by the userfaultfd object. In mode, we request to track\n-\t * missing pages (i.e., pages that have not yet been faulted in).\n+\t/* Register the passed memory range for handling by the userfaultfd object.\n+\t * In mode, we request to track missing pages\n+\t * (i.e., pages that have not yet been faulted in).\n \t */\n \tif (uffd_register(uffd, addr, len, true, false, false))\n \t\tksft_exit_fail_msg(\"ioctl-UFFDIO_REGISTER: %s\\n\", strerror(errno));\n+\n+\tksft_print_msg(\"Registered memory at address %p with userfaultfd\\n\", addr);\n }\n \n int main(int argc, char *argv[])\n","prefixes":["v5","09/14"]}