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 05A0BC83029 for ; Mon, 30 Jun 2025 14:31:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6B0376B00D1; Mon, 30 Jun 2025 10:31:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 660296B00D2; Mon, 30 Jun 2025 10:31:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4D9C16B00D3; Mon, 30 Jun 2025 10:31:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 36EB46B00D1 for ; Mon, 30 Jun 2025 10:31:36 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id AC0B8BA347 for ; Mon, 30 Jun 2025 14:31:35 +0000 (UTC) X-FDA: 83612305350.27.14239F0 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11012029.outbound.protection.outlook.com [52.101.66.29]) by imf14.hostedemail.com (Postfix) with ESMTP id DA9FA100016 for ; Mon, 30 Jun 2025 14:31:31 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=arm.com header.s=selector1 header.b=l61mvQzj; dkim=pass header.d=arm.com header.s=selector1 header.b=l61mvQzj; spf=pass (imf14.hostedemail.com: domain of Dev.Jain@arm.com designates 52.101.66.29 as permitted sender) smtp.mailfrom=Dev.Jain@arm.com; arc=pass ("microsoft.com:s=arcselector10001:i=2"); dmarc=pass (policy=none) header.from=arm.com ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751293892; 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=GCcUTPnPJG+iIjBrwWsJA0FQnvHoRrr3yJFo6jZ9foU=; b=dwoppedjIJoW9fRx+COo0su4GAS35QIXVoHR5Y3QBIzKpPAUyRGnfpxzpeNnrL7MH6/+1u MpTXA1gFLrF251Fq+1bpdpRx7vgXJjr9BaPcKCrqpWwEnJZwkBmDcIr7OWnvRZGQqXM0Sj Tu7nURpN3phKkkeDp3j8Gv+g7rp99h8= ARC-Seal: i=3; s=arc-20220608; d=hostedemail.com; t=1751293892; a=rsa-sha256; cv=pass; b=XhSwttncSr1gITASjR3eyS/A+9Koou1YqBlsT4eixh4nqxLdqgdEdjTALiMCOawT3EUmIQ VrKIok+KIhs2urL/8JbjGJpgiSCKyKMPT4yz2sCAx4TEARiEU+TUBDfOtTXpwW0IiLIrNO YlpUjZS42wSrLrwEeowp89YdycxNIns= ARC-Authentication-Results: i=3; imf14.hostedemail.com; dkim=pass header.d=arm.com header.s=selector1 header.b=l61mvQzj; dkim=pass header.d=arm.com header.s=selector1 header.b=l61mvQzj; spf=pass (imf14.hostedemail.com: domain of Dev.Jain@arm.com designates 52.101.66.29 as permitted sender) smtp.mailfrom=Dev.Jain@arm.com; arc=pass ("microsoft.com:s=arcselector10001:i=2"); dmarc=pass (policy=none) header.from=arm.com ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=LhOzd5REhILmYzp7NxigpD38X7sBIAj5I4H3zDDeLz8+FUujJSq60XQ9xNT47JeCeY72kde6crv/uuMqxR2jnE12oPL6LUl9hdyo488dP345iFMeXP5it8HvNOpJQtABKCvacxpKhwXZa2WPJgU3aPrDwlmZG21Rt3y+xt8iEbrcrQ5x4yq8HBthLp/t+v+OZlOlfVp2xmz/9/wiBYmGkafCmQnoeIS4Uk/VGRGHVHGIzsVKcBXo/UhG8+ZCeJth1MxSf1+v9hFJcsnPnlALJaycYsCnd0ka8iLgjevau1Fb0c2fOqYakC2AvZJuqNTSwNNlKRdboR8FX3tGNheGgA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=GCcUTPnPJG+iIjBrwWsJA0FQnvHoRrr3yJFo6jZ9foU=; b=BohdlJsPHjuLObuV7LiuE7NWz83tXuyj7tr9N/S9Bf3aCBgwX552ZPivUMarm7TkuCfoyyeUL1AQVJy5PvY8e2lZsV6qVK62SOK6nYwPKpF1sC2f4hoH830Aqj9tbXRXz2elYFQr5RtM1BT+kF1tpSO7TOBMagB2O5vYzQREtfT/chKfun7OWrvgTCNA1zsZ8Hip9rfKsXBur1U8O+NBaAnTsZ6bJccPnSXlbF5dmH9e4xDAjbu+1Rl/kPw06S+ht5RpsVSgQSQA6Fj+f/ONDLxMUW3k6HR6lcDoDKhv08KjK2xRoNg60wRkRV5LEtUpmJvlELZU6gyaPOI4EpzZIA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=oracle.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GCcUTPnPJG+iIjBrwWsJA0FQnvHoRrr3yJFo6jZ9foU=; b=l61mvQzjVdP/yrHfYe4gpK+Gc0BlsosRPzqwVy3h9grg6dvd1vZJpyrvh8N57YblshEvTLBDUL6nbQ7UIb0xV3VTmGxmJU8+V/iO7qd9BjBU+z4lMSF1+c+8gBVni8OOzxkw3CDrn5JcEES9Y+jXTc4yAvid2n+U4BagN19k8Pk= Received: from AM0PR10CA0012.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:17c::22) by DU4PR08MB10983.eurprd08.prod.outlook.com (2603:10a6:10:570::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8880.25; Mon, 30 Jun 2025 14:31:29 +0000 Received: from AM2PEPF0001C712.eurprd05.prod.outlook.com (2603:10a6:208:17c:cafe::36) by AM0PR10CA0012.outlook.office365.com (2603:10a6:208:17c::22) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.32 via Frontend Transport; Mon, 30 Jun 2025 14:31:28 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AM2PEPF0001C712.mail.protection.outlook.com (10.167.16.182) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8901.15 via Frontend Transport; Mon, 30 Jun 2025 14:31:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yrW73jEliCRntjulglVGrfAmpvEwoWbHUQFUgfYzKmO54sXUbDpw4sREInvdwNRf6xQjMqA5z/WF0gEfSva9McrM81jHkuF2fcA1ueMW/q3Ldaz98tEmbm5n04YZFMIGmXrKm4U7E3SeOCIpZaxg+aMnOTLzjK4TCXQlgPqzOs6N1M7Q9adNhvnMzwtKiGliYTJ3vun4LnYESIBkKkpYRkyua4U9c1Jcoda5H1SSkps22Pd7GWjZBj07KzDTQzs/AUqS8/dOXsx2cFktvA/jggETKv9i0h6uVtMj6EBNKt3A5EnJsspNfxHC9ZaHvE9VP6IKg4qKY/ZVtdFdV8vtJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=GCcUTPnPJG+iIjBrwWsJA0FQnvHoRrr3yJFo6jZ9foU=; b=Q8j5oUfWeGFYPhkQN0pA2s28rdMgIaamnyG0Bg8q2O0GxEsph8MQPM8PLFlvjIiT3+seuwXyVfjgOZellLB2qb1rqdOArmZ+QA5fzkZuBD76Ey1GXL1KUDpud6e1dGcwWXNraEk9B0wF7UN3zotYRy5vy35C689V67QL8tMluBS4qG0fs4yqnITtlJ/x265M7hOFaaXwz6uwZvTbpLBUDHOPzVyVRFoEfdu9cDbNb6ajoxqWOu4+xF0qER8T//4Iysng6/aBvTLbVzV2CVUzlNbUUp5RT8XLptiAC3DT61NRGRq8twAXztDffPtlj1EJ8D3GHr5cPp8BFOJ6rEE7Yg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GCcUTPnPJG+iIjBrwWsJA0FQnvHoRrr3yJFo6jZ9foU=; b=l61mvQzjVdP/yrHfYe4gpK+Gc0BlsosRPzqwVy3h9grg6dvd1vZJpyrvh8N57YblshEvTLBDUL6nbQ7UIb0xV3VTmGxmJU8+V/iO7qd9BjBU+z4lMSF1+c+8gBVni8OOzxkw3CDrn5JcEES9Y+jXTc4yAvid2n+U4BagN19k8Pk= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from AM9PR08MB7120.eurprd08.prod.outlook.com (2603:10a6:20b:3dc::22) by DB9PR08MB8627.eurprd08.prod.outlook.com (2603:10a6:10:3d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8880.23; Mon, 30 Jun 2025 14:30:55 +0000 Received: from AM9PR08MB7120.eurprd08.prod.outlook.com ([fe80::2933:29aa:2693:d12e]) by AM9PR08MB7120.eurprd08.prod.outlook.com ([fe80::2933:29aa:2693:d12e%3]) with mapi id 15.20.8880.027; Mon, 30 Jun 2025 14:30:54 +0000 Message-ID: <4e2ea3d3-d519-43cb-8026-d448e1d8df98@arm.com> Date: Mon, 30 Jun 2025 20:00:49 +0530 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] khugepaged: Reduce race probability between migration and khugepaged To: Lorenzo Stoakes Cc: akpm@linux-foundation.org, david@redhat.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, Liam.Howlett@oracle.com, npache@redhat.com, ryan.roberts@arm.com, baohua@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20250630044837.4675-1-dev.jain@arm.com> Content-Language: en-US From: Dev Jain In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: MA0P287CA0010.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:d9::15) To AM9PR08MB7120.eurprd08.prod.outlook.com (2603:10a6:20b:3dc::22) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: AM9PR08MB7120:EE_|DB9PR08MB8627:EE_|AM2PEPF0001C712:EE_|DU4PR08MB10983:EE_ X-MS-Office365-Filtering-Correlation-Id: dd1ff889-f429-4ad8-6199-08ddb7e2ccb8 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|366016|376014|7416014|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?utf-8?B?YVdQZnAxU1RFOXhISDJ6VWQxcUhUK2Vzb1QxRmhaM3Zhc3dnamlrTmxhNWVC?= =?utf-8?B?S21IelRNRTVPSE9ZcmQ2eWc3MXJyblRLWFR3VmhEREtLbkhvSHNYRkFGTUF2?= =?utf-8?B?MFBJQ1RlbmZ3UVIwVmVETHpTdzZWN0FPQk4xMHZ3aDlUbTNTZmpIakdsTm1l?= =?utf-8?B?VHU1b0ZZTFloaC9aWHh3WFAzU3VhZ2RFT0RNY0U5UUFrNUxINTVQUUZacjRx?= =?utf-8?B?cTdzbnZUek5ybndvUnJRY3BaMXh5OTBZd1kwL0F3ZEZiTThMWTlUS3JyS1ZX?= =?utf-8?B?UzZmbWlOcC82TWxTb2JCNGpyaXJYL0dyUkY4UDdCNzh1elVmTzlqeWU2TjJy?= =?utf-8?B?Q2ZPRm42d1N2YjEyaStYQVE2VGxQSGxxSEFvUlRNNkJYdExyVFh6bVM1NW9n?= =?utf-8?B?MUhwQjVhZzhoMjJJZFBVRXh3TjRQKzE1TXlkeVpvV01jR3kyN2c4NXc5dno2?= =?utf-8?B?YmY5YWxaOUpPS3Q5N1BmUnAxQ3JxSnlFZE5pR040TU1ieTAzTTlINGtmNUxZ?= =?utf-8?B?anZBS2ZjZVNsZGdkOUtYUkJ2SXQzdEVYUFkycjJZZEhYM093QUpCUmJhUUFW?= =?utf-8?B?bDdUVXppeEdxc2lQcEtRTkN4NjFkd01lNkhXS0F4QWZvNldwTjdaVXpJWUVr?= =?utf-8?B?dUpIUzJtY0QwQlM5bytRTnNzSnd4UkE5akZsbEZVSEwvVmk4TjdwTnJReVdl?= =?utf-8?B?dDBIN0NWZnphcjEwVjNZZFRKd3lIZGM2TXFFNnV4M2loQm5RUk9kU1c3c0oz?= =?utf-8?B?d3QxeU5wS241ZW0wNEkvdFNWczREd2J6N1V2ZTNESG1LVnRSc0hSMldHSVNz?= =?utf-8?B?KzQ2RFR1TjN0VWxqZkJYY0gvRjBWVXZKVDBuemlscjVXZTRzRlQveGlWWUZZ?= =?utf-8?B?Ky9iMFdwUEpQNkNadTJwNlF5ZVVqN29wc0N1SGplQlNTMGtJaXF6Nnpldm5H?= =?utf-8?B?dmVsb0M4OU50eWh1UWtUUXYzUjIrNi9kMHQ0cC9oZWFValIxVnMvT0JJSUZ2?= =?utf-8?B?dndUejJlV01UVC83K2I5NjRMcDNoeTV5TGgza0VVWW9YVVNNOXpOM3JESExT?= =?utf-8?B?T0FuOEN3QW5KUUMvd29xK3lCUmJZc3RwRDR5UncxWEZxOVZlbzExdnRwdUFR?= =?utf-8?B?RDExSThBZkNIcXhGQnFaNGtJSGp5eDFUV2JOc0x6Vm9EV21xVVp5cHdVanF2?= =?utf-8?B?VG5EVUtSZjJVU1lRdzk5cG9EMnpuTXdFbmFmN2xBZUdWYzBkN0dvK2Rlcy8x?= =?utf-8?B?Vkh4d2tySjFSTFdwdHdwaFFyb1VBRUl4Z0RMZkJlM2hkc1Fualdad01xTWlv?= =?utf-8?B?bTJiNGJwL0lKT2o2NXdiWUFOWlBEd09URjEwWDJtb0Qvb0w4WU50bjlMbTMx?= =?utf-8?B?Q09TUWlUOEVHditIMTdvUnI0SzhPNkVlUG9MQVg4aEJtSFlSNWxBMlJVMGhp?= =?utf-8?B?UElVejIxWVM1ZzZQVFoyTE4vMmJpNTVmaE5rMlZTTk5ZSXM2TlZhbGJZU2th?= =?utf-8?B?Q0N4Y1k4SlZOQ0Q1WGVmWTJ4QzZ3TUtaK1VKcjBUUzJ0eDFsdzBZcXFyL0sx?= =?utf-8?B?c3hrOU9HY0FubUdrMFZWR3ZvbHNTblZVVFNhTmF0MGo0elpKaDlBTC9TdGxX?= =?utf-8?B?SzBuaGZmUHpMZjVzVW0wK2NaME1LZk0rMW1JWEQ1YzltclZ1MmREMzVsK3Rq?= =?utf-8?B?aUVhNnJHYlZxekpDekthUFMrdTBwWnlrNG1TcTJSSkI5eis0Uno4YmZYNC8w?= =?utf-8?B?YmlaUUh5TFNxZlZIOGlaNlhLS0hHRk95VEVycFRoeHE4RmZ3YnpXNndDQW1V?= =?utf-8?B?VFN0U2VsY2FkbUt0STRJMW5vRUNtdkdrOVVnVFUzVVNYNWRXSnFUYTd4RUdr?= =?utf-8?B?UExJV2Z3WnBsZGdzL2ZKSUJ6cTVudzJhYjBRd1U3dnExZldJVk5VOGtzbDd5?= =?utf-8?Q?jqebAR5hg14=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR08MB7120.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(7416014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8627 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM2PEPF0001C712.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: ffd2d9da-f9ce-4678-951e-08ddb7e2b8a8 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|36860700013|1800799024|14060799003|7416014|35042699022|82310400026; X-Microsoft-Antispam-Message-Info: =?utf-8?B?UVJnRjRnRFpuUTBuc2hjNWRvUlJWeUFLa0FIRGxQSEpWUkhpbnJ2Y05xQUdC?= =?utf-8?B?RFpsR0NJd1pRM25DZXdYZUZIWlhnL2V2emRoZldQMWYxVFlUV2toZlBhUG5C?= =?utf-8?B?cnJ2WDl0dCszL2Z0QnU2dVN4b3g0TUhEV1JKMWk3L3g3UWJjOTdlZWhNOEhV?= =?utf-8?B?UTg4RjRzU2N6SFRIZ2dGMEIrWTllSnNkRStDQzV4OWZmVWhqN1N0czBxUEt2?= =?utf-8?B?dXpCVEhiN29mTzdFVktpOUNDN0RoaXYyVDVTTDJ0SVJpV0g2SGpNa0s3cmow?= =?utf-8?B?RWhSdmtoNWp2YzBPdUpoNWEzUCtLRnNJZ2oxYVJZbEVtWmVjbmZNZTdPT1hn?= =?utf-8?B?R3Q1aDdvMnhIT1hHcmRJTEVFQjdHRFRUVEN3MGtCa2p6a3RsUDBSb3d3elVK?= =?utf-8?B?YXlPUlpZVGlSRURyNVJETnN3d0wvbE5GNnhjTy9ZZzV0YmZKQ01BV3BTbzNw?= =?utf-8?B?ZS9iN2RYOW83OWJVTTJ2UkpwaEdRSlIrMVYyZnJHSTAyaXgvUFFmSjdyUWc4?= =?utf-8?B?M0llWEFUUVlEOERWd1FKRjlsWnZ1dVJYMjNyUHZibStvL3plL3l3b2gwOUlq?= =?utf-8?B?bVJHSW0wKzZzUDQrVU1YWnF6b1FYUWk4M0xxdXQzVmluVFdtK29JcGEvK1U4?= =?utf-8?B?Qk1WUEo4TldrUUh1L3o5NmE5UWZCSDZxWUxCVFBGRk5Ia2c1c1hSYzdZRTkv?= =?utf-8?B?N1BMY3ZyQisxVmprdlQ1dGFhUjg1OWZJVjc4OTNHUDcrekRva2xNbVpkUW1L?= =?utf-8?B?S1hHTkNPVXNwa3V1S0oyejlPeCtXcldhc2pMUmJGOGtiRW96amhWbEtmakxN?= =?utf-8?B?cm9FVVZLaGMydExwL2dGaFlqQW1sa2hqdFBJK3MwMklzR2ZCQnQrd2d0YnZ0?= =?utf-8?B?Q2Z1WWlTRnNYeG5zSUJZalRXMHMwdjJlNFBOWm5JbnFLZnM4NzhkYTd0cEZS?= =?utf-8?B?cm5sMk5sQlZvWE5iQ1JrZHgycE9mVDRMdk9zRktyckIzVERBaVB0WStadmw4?= =?utf-8?B?NktxSlVxVnczc2FNMGpsT1V4SklaKzFPd3lPNWtUdTBsYmtDN1RtLzgwQ0F3?= =?utf-8?B?Z2lFQ3VKaGtCaGs4WTJDT0ovR1pvZ3AvUVFzVlFDaHd3QklnNmtBWGhUL0I4?= =?utf-8?B?bk1HQzV4dzNBL1FTMXRMSTBKeEZtZUM4dFlUYm43RHYvSkhKcldlZERjNGto?= =?utf-8?B?UXdtd01EQmZFdG54TG56RVpJdkJ1NUlSdDdtamk0UVF3eG5rVVhqNTQrZGxs?= =?utf-8?B?QUcwSE1VbXFTQ1J2U1dsQkE0K2lTYnJjVDJLc21LZ1FoYnZlRFAxQ1dLRGp5?= =?utf-8?B?UWc4OGZZQmZSWE5NY1FqMER2YS9pa2pyYTFnNTkxS2hpTXJjb2tieWZwS29L?= =?utf-8?B?ZnFnN0ZScllmUDlQd0hxNjdPenJPaTZkM1BSbU5ZdEsvWGNRZ0lSTVBGY3Yy?= =?utf-8?B?VEtFM2Fza2xtNUdlTGZMWmJCcFl4d2RpTk1SSWcrWEVsODAzeVYzV0o2QldT?= =?utf-8?B?RUx0d1dobGp4NXR1WU15RkpsL2FvN2E0YkFmd0tmQ3NxdzVPcDNjVGVUbVY0?= =?utf-8?B?ZXoxUVJmanBFZksreTh6U2hTM1VkLzErUjNIRkhmMEZXK3h1UVExdFJZUG9p?= =?utf-8?B?aDlKeUVEYVk5MHdvT1RUT3pRNXh2OVBKVCt2bmVQN2RlS1BSd2RQNUV4UWdC?= =?utf-8?B?bmFLNlEwMGM2V3FsTTBaZlNEU2VwMG5Kbkx3MWl2WFFEN1AwTy9Id3NrUWNZ?= =?utf-8?B?enl3eXpMMmJJd3c5clIxWHltQjlwcE5wSmhSM1lFVUlVSnZpQW93N2JPdGVB?= =?utf-8?B?dVQzKzZFTFlTYWtPdEUzOFhZa3IzTVBPbjQvcVA0eERsdlhwQllGclUrS0di?= =?utf-8?B?em9qay9CTy9NbFRodUR0Q2k3RWZLanJQdU5SdGhpTVNhQzBnWmpERHRmWTJn?= =?utf-8?B?R0VNNzJ1Z1JEOEdGckMzQjRUWFFnMWtISUZsRGhndTNVdjV4V25ZR05HN1Jw?= =?utf-8?B?b2RCTnoxQ01XWTdtOEVIZHZvMC9WbGZYWEgyWVBFQ0VLV29sYnhQK0ZJVGJE?= =?utf-8?B?dGxrMmNWTHdETW05MVN1NmV6Uy90eG9nelNVZz09?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(36860700013)(1800799024)(14060799003)(7416014)(35042699022)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2025 14:31:28.0575 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: dd1ff889-f429-4ad8-6199-08ddb7e2ccb8 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AM2PEPF0001C712.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU4PR08MB10983 X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: DA9FA100016 X-Stat-Signature: fxty1h86p9m5xddpqo5dpsfqjugob3is X-HE-Tag: 1751293891-263498 X-HE-Meta: U2FsdGVkX1+q92yAqj/7ME6COKwbwEOB5sF+veInBB5KkpjsR9hCcKMbDHga1MRI3yxZfqRGaJBkdAGEP2GihT3B7IVDgB8oJVATlciSQi+MQ4k3GvYI2paxbOmUKmbr3sw61l/qw+eZOzmTgla2ABsUGz7FJDxGuOhk1Ond9+kmkFKB9e84M3GvzN+P62pU14yS2iMl89MRYeR4jYofXYgF++NZaGGQbcBLiiEIIeJAgEqx0brgqtileNtdSLiztxk6ZlTtwTqFwRiEZtzMP9ree2574v4KabtaJ1qRpbHbPni5ADbLngzPeqB+S28sqWNiUwHy/llrnqiPVGV29rsmW26XLAHEeRMyKOyYWKKnhbHk1MiUnzdSjuuH1OmNARxBkXzSKyfeWgSAtwPwx6q+q1YxFjKIjvaPf/z+E7xx+Gik8yipntln2WgbuYVUG1vcqwM+1Dmok4SU15+yEO8L5gybnUciS85arMw45O4qK3yJ+o9pEglKkdIQMmssYE7w6snw+pHmF42GnhuARMsYtKIEIvS5DPbH+mQ1qS+XHYggMFqzxUoyYq1NJRnRN9IOBzftViez9WAfqJyeoSUWeCQsYHgPuqS3YdVe7WLNLqAuccKEiDx6Q41hkmC+Z7PtjbYhDTX8mYqD07Q2OYAnRbR+QCtZIAP62ERLwLwC2+JFiXa+tRaYC2n3H5/KwBn7aHUNmfnkHACmAn6jXm9peqRllZTvFw2mumfVpsBac+b/+/nTDP9Zduh9c3z+DWH9MKuMvno1ZuQCZz1S57ZjO9qvgAQ8uT8y/omtKI+aguaxS+/144/mxlzVzVpqELrRAGzrTIuut7lgb/b004ZREbbiRkx+VwXggBuQBtlfQp3pzwbNMPojyiXSMaKYDBI9klwLZEjs587BnrsrYQqkcYu/xZvIILJxHOf+AlnlcQlyfG8U9KpnHUkKCAKbsca7aD84JgdQDE8VO57 EC0hsCxC 7z/2Vnw+GCwJ1rCpYHDE98OJ50fT//lSgWvaSP5t0/SuwqBMnClHPiXxvCzAWPfJQySliNymbdwRen9GZ83RTs2cknrgXlb2PhFClDJMwLa9Dg44aSecGIxLBAMhW6P0YYvur7IlE4URIOyeI+8zk+sabDUfcuEKkleyinX5Q/KYKlq+BZCeCWOywjgeHgncoAvg9w+cisS4x5Mesvz409A6Fi+/vcjeH96BDxdoHySKBSGj9wNPHWOunf583+qBi1VNeE98Qv04yyVfekHZdBUVe2kn3Fi9vKYbIjbAlkuN1xaIsPGs91iSdb/9dpNWvg8NbKwlZe4v2X03z3XKn8ETtCAJ8Ji2gqMhK8C3IhsH8TocE1s8iPHlW40Jd0wxfEI52m5UyH7YN+mx+xzvBlkP6jIsMO2WViCIaNCrPiNSLTqnikfL3+7LgO2KsV/w5zIjpK0cofuZ167+XmLropx+vbc0JH0D+k1FQbSZMI3oqT8wJptq5uv+W4PlrKF345vwYMn0CRsZdYLdVRDK8dnM8Ne/Tpto/WdwS7KBgSkhHeq1jUbx93kXLDd83tyB5WzF/v5h5cXqi3jQzasPxvberheP/QJXIw7Kv6u9QYqoYXGPUoiArBTFrwm7HS2oVQ2t4PatfQ3sy4ZJTYPoP6O6VjsjphMxwg5Za 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: On 30/06/25 6:57 pm, Lorenzo Stoakes wrote: > On Mon, Jun 30, 2025 at 10:18:37AM +0530, Dev Jain wrote: >> Suppose a folio is under migration, and khugepaged is also trying to >> collapse it. collapse_pte_mapped_thp() will retrieve the folio from the >> page cache via filemap_lock_folio(), thus taking a reference on the folio >> and sleeping on the folio lock, since the lock is held by the migration >> path. Migration will then fail in >> __folio_migrate_mapping -> folio_ref_freeze. Reduce the probability of >> such a race happening (leading to migration failure) by bailing out >> if we detect a PMD is marked with a migration entry. > This is a nice find! > >> This fixes the migration-shared-anon-thp testcase failure on Apple M3. >> >> Note that, this is not a "fix" since it only reduces the chance of >> interference of khugepaged with migration, wherein both the kernel >> functionalities are deemed "best-effort". > Thanks for separating this out, appreciated! > >> Signed-off-by: Dev Jain >> --- >> >> This patch was part of >> https://lore.kernel.org/all/20250625055806.82645-1-dev.jain@arm.com/ >> but I have sent it separately on suggestion of Lorenzo, and also because >> I plan to send the first two patches after David Hildenbrand's >> folio_pte_batch series gets merged. >> >> mm/khugepaged.c | 12 ++++++++++-- >> 1 file changed, 10 insertions(+), 2 deletions(-) >> >> diff --git a/mm/khugepaged.c b/mm/khugepaged.c >> index 1aa7ca67c756..99977bb9bf6a 100644 >> --- a/mm/khugepaged.c >> +++ b/mm/khugepaged.c >> @@ -31,6 +31,7 @@ enum scan_result { >> SCAN_FAIL, >> SCAN_SUCCEED, >> SCAN_PMD_NULL, >> + SCAN_PMD_MIGRATION, >> SCAN_PMD_NONE, >> SCAN_PMD_MAPPED, >> SCAN_EXCEED_NONE_PTE, >> @@ -941,6 +942,8 @@ static inline int check_pmd_state(pmd_t *pmd) >> >> if (pmd_none(pmde)) >> return SCAN_PMD_NONE; >> + if (is_pmd_migration_entry(pmde)) >> + return SCAN_PMD_MIGRATION; > With David's suggestions I guess this boils down to simply adding this line. I think it should be diff --git a/mm/khugepaged.c b/mm/khugepaged.c index 1aa7ca67c756..8a6ba5c8ba4d 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -941,10 +941,10 @@ static inline int check_pmd_state(pmd_t *pmd) if (pmd_none(pmde)) return SCAN_PMD_NONE; + if (is_pmd_migration_entry(pmde) || pmd_trans_huge(pmde)) + return SCAN_PMD_MAPPED; if (!pmd_present(pmde)) return SCAN_PMD_NULL; - if (pmd_trans_huge(pmde)) - return SCAN_PMD_MAPPED; if (pmd_bad(pmde)) return SCAN_PMD_NULL; return SCAN_SUCCEED; Moving this line above since we don't want to exit prematurely due to !pmd_present(pmde). > > Could we add a quick comment to explain why here? Sure. > > Thanks! > >> if (!pmd_present(pmde)) >> return SCAN_PMD_NULL; >> if (pmd_trans_huge(pmde)) >> @@ -1502,9 +1505,12 @@ int collapse_pte_mapped_thp(struct mm_struct *mm, unsigned long addr, >> !range_in_vma(vma, haddr, haddr + HPAGE_PMD_SIZE)) >> return SCAN_VMA_CHECK; >> >> - /* Fast check before locking page if already PMD-mapped */ >> + /* >> + * Fast check before locking folio if already PMD-mapped, or if the >> + * folio is under migration >> + */ >> result = find_pmd_or_thp_or_none(mm, haddr, &pmd); >> - if (result == SCAN_PMD_MAPPED) >> + if (result == SCAN_PMD_MAPPED || result == SCAN_PMD_MIGRATION) >> return result; >> >> /* >> @@ -2716,6 +2722,7 @@ static int madvise_collapse_errno(enum scan_result r) >> case SCAN_PAGE_LRU: >> case SCAN_DEL_PAGE_LRU: >> case SCAN_PAGE_FILLED: >> + case SCAN_PMD_MIGRATION: >> return -EAGAIN; >> /* >> * Other: Trying again likely not to succeed / error intrinsic to >> @@ -2802,6 +2809,7 @@ int madvise_collapse(struct vm_area_struct *vma, unsigned long start, >> goto handle_result; >> /* Whitelisted set of results where continuing OK */ >> case SCAN_PMD_NULL: >> + case SCAN_PMD_MIGRATION: >> case SCAN_PTE_NON_PRESENT: >> case SCAN_PTE_UFFD_WP: >> case SCAN_PAGE_RO: >> -- >> 2.30.2 >>