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 5BF71C48BF6 for ; Tue, 27 Feb 2024 01:51:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C07C54401D7; Mon, 26 Feb 2024 20:51:32 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BB7E544017F; Mon, 26 Feb 2024 20:51:32 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A09DD4401D7; Mon, 26 Feb 2024 20:51:32 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 8F7A944017F for ; Mon, 26 Feb 2024 20:51:32 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 6BCA080AAC for ; Tue, 27 Feb 2024 01:51:32 +0000 (UTC) X-FDA: 81835906824.05.89D93B1 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.12]) by imf23.hostedemail.com (Postfix) with ESMTP id 9739B140004 for ; Tue, 27 Feb 2024 01:51:27 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=gXXBmXeX; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf23.hostedemail.com: domain of fengwei.yin@intel.com designates 198.175.65.12 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1708998688; 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=aXKpaHYTNLn9syb15EjvshEfO3hidvfFr62+UOvyl+o=; b=LSrvUi745WAVwYrbBh4P7GJYY6XD+d4TbKgnKJiX7MhzwsyK2zJRKm9tOpN09+YkOBf0DG 1EqDQQ2sJLRrFZC9XgmttpXkET9eVk2p7jwY0t/caaaCFDp/n8RfJ0irNj8jxhqiq0grlI yXeCt4+7m9AWuC3rvjIey0SUKWhjnuQ= ARC-Authentication-Results: i=2; imf23.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=gXXBmXeX; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf23.hostedemail.com: domain of fengwei.yin@intel.com designates 198.175.65.12 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1708998688; a=rsa-sha256; cv=fail; b=LaEKDXMGxl1QmtuOEkT62u0UmMcHAQ5t+b/AgV6yLPdm67qTtF5hekXpQzTyOdFYlefgEL iwnnPphAGMyLTtyzB/aiAj2I4Lq/BK29FRl30e9JsnSSysYTJP+LNH5zlKnL/ZZwvn60iv 7nrrYnL1femK7gGtCmUd/PJs4eEkgoM= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1708998688; x=1740534688; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=efgUkltL6c55Mij62rxXM81og/PZH+sjhJ2ZMq82aSE=; b=gXXBmXeXEzJv3vEsl/QWMj5OXcMijvsNJ4tQwx+Xhw1PIDhVAqOTf/0m nlSgV+pJPEgEhMTHYjDDtju5EIS75Sfxxh2XilamqazyFloUHTYmxPuE6 LrDTVMXO/iWp8Yxgkns8TfQXTdUy/RAur+YRSm/xNfNcNI8S7yBD2xweg 8PeasJGgd+IIQs94atCzTMt9s7A+KfZ60adFJL29iSuWlwjVRz3CugNDn 96MkpmLBskVxCyfdgjCIF8LZRkXHXL1FVB7VDgy/VbWegi4MgDFfWJWHP dlfw+uLjDWC7XAB5iao0FmqMr0xwy8aE3nAzCZ0uRnmozActZTWkXkqvR A==; X-IronPort-AV: E=McAfee;i="6600,9927,10996"; a="14759399" X-IronPort-AV: E=Sophos;i="6.06,187,1705392000"; d="scan'208";a="14759399" Received: from fmviesa006.fm.intel.com ([10.60.135.146]) by orvoesa104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Feb 2024 17:51:25 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.06,187,1705392000"; d="scan'208";a="7078833" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmviesa006.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 26 Feb 2024 17:51:24 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Mon, 26 Feb 2024 17:51:24 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Mon, 26 Feb 2024 17:51:23 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Mon, 26 Feb 2024 17:51:23 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VbmYzWD+/huxre07MAMK9gsfj22Xn1IgVxvjweS8mU3GDTQyEIY5NcH1NAmi1eQNlQY38RhuymFI9wrnZ4WZYYN2e4DdnQU6k01e6dqifcEnDkD3AdvHc6qMs5n+Wp18u8/kYL06zKzTAK/wXsdDBb9EEswFaSxO7bqom3ypAcmI9UBnHb9ZUPNwv9iBBdUHVxmEMkPeTd2dUVlfz2K8MUv/cwdmuzSQUJ+8uoZP/jbMmDzEwoXTjlvHkVRhoNOeS2oeQG3GEP5YbQvuLXXqQ92jpUI5NwAotuWBO7/R36wn9/NvwXwetvuo2SMhoyP0FZ9AsKbb1CtH9+O+cDlUAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=aXKpaHYTNLn9syb15EjvshEfO3hidvfFr62+UOvyl+o=; b=fmaDpEb/aVgoYAY5+RfktqaEYc9GvSR+so8+98rPJO5wZjjtcdZK9YrppL2WR1CyTz1r3s5UYNITRrGxjC+W3EsqlKLwKFlJpBBdR9gl8jf576FeYspax4eVT5WGBssCnnbfmevcXtnsbtMpMIS/R+A8AHqq5Wqwp77QHnqHVJboNcfsWR5lWorsiT5BMuU7xyFs8y4WPVIepW4ozu418xuYFIrPYltO3y9x+y38D7SARPPeE7FgHYX1atlkI0oCxrHFAkIMHUZY5l/6JfTxX/1r2B4VuUgllhUO3geJO5ZU6VcEb3a5PbwZHL7c7DjlRmOr/zgTNgrzvr7HDH3Sxw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) by CY5PR11MB6186.namprd11.prod.outlook.com (2603:10b6:930:26::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.31; Tue, 27 Feb 2024 01:51:21 +0000 Received: from CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::65ce:9835:2c02:b61b]) by CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::65ce:9835:2c02:b61b%7]) with mapi id 15.20.7339.022; Tue, 27 Feb 2024 01:51:21 +0000 Message-ID: <19758162-be5f-4dc4-b316-77b0115d12ce@intel.com> Date: Tue, 27 Feb 2024 09:51:13 +0800 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 1/1] mm/madvise: enhance lazyfreeing with mTHP in madvise_free Content-Language: en-US To: Barry Song <21cnbao@gmail.com>, Ryan Roberts CC: Lance Yang , David Hildenbrand , , , , , , , , , , References: <20240226083714.26187-1-ioworker0@gmail.com> <9bcf5141-7376-441e-bbe3-779956ef28b9@redhat.com> <318be511-06de-423e-8216-af869f27f849@arm.com> From: Yin Fengwei In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-ClientProxiedBy: KL1PR01CA0120.apcprd01.prod.exchangelabs.com (2603:1096:820:3::36) To CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PR11MB4820:EE_|CY5PR11MB6186:EE_ X-MS-Office365-Filtering-Correlation-Id: e9220ffd-120e-4d86-f41f-08dc3736991f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KJB+77ynKQWL4cHT+razCMELaCVpgNX15DLVkvRi66SWC8kCXnPsIXz2+0jib/o1oqZPF5L9Gt0EM35S6aRdrj3/Gi+Sjh3KnzoBQwyISNoenICJCMxSuuFvdSUYGAwyJ+rG6W1AK+Ph+UohR1GwTJDlFo5eIgjGAtjnWdIJu/Qc3sOjeNpmm2RtdMg60Hzs60Z4s1PwzA760ua/1QUb3y1elzU9QQt1OoJZSPbyeFqdI4u/lY5awY0kzt6NEyHhfwgcWnA1zFtgPyyc8rQL4IgElx8o21FU0pl8EQLo60IBxmAeN3yAt0WD/3N0SiyunpoltyIGZtIMjeQDE5eLFCCNFIg4HCglrYXjPW3Or2ySwSRF+5xRCq4XG735UP2yiExuh0iaZ8pvD2LaC6qNhqptNMzYZGzKbtGhiw5ooHf0B19qkaod77c/re2lavEcNKbg1UmPLfYhIYqYTDVMI31pYu+xTqGUZNKd9+K6pWP+LenIaE9Jb6snwpyVqDtIHpbv/FFb6BQR4GEJLwbvTyhkVfFQzhdbyzNKRzNxFR+DWZoWmegTGLIG/e7F6ADMmDtlHsszAzvWDM8rUPHNahhHaSOf7TO/xZ2qU45kZyRiweCzxJca74XDgka/t18H X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4820.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dVpSa3RBamlDdldUSzBFUVQrODc5MWJEd1hIUzFjNE5UYlBRQ1hqNEx3UjBw?= =?utf-8?B?NGFaVXFWQmZKZklzaS85c1M4Ri9qQnA0WDB1ZmhCQkdUQ25vcHdHalp6YjQr?= =?utf-8?B?SDJhMWFSOVZtTnNUY0pWRGxvdXhpMGpzQ1plc1RBcDArOVV1d29hZS9tcGs4?= =?utf-8?B?Sk5TYXY1QlFvU05ySXR2YTZYNTNsb2FrZTBSSUhLdWdzOEVhZm9LckRSZEhq?= =?utf-8?B?c2xsNG9KTXBuWFNnQ1c0Z3FuNEtZbnNoVUpzclNsSDZZYTV5Nzk0VmRSTDBD?= =?utf-8?B?d05qWndSVnhqTW9IQjNwTUgva094THRnenFkc1lwaWZvZmkwSThvRTBtQVRE?= =?utf-8?B?UDkrL0tRSkhXdWpJVFAxTG1IWDBmQmYzazN1cmJ0ckdnZHhDZnU0QmFRM2JB?= =?utf-8?B?SzV1MDZrelR5QTdhNGY5Smt6RCtvU3hMUWpYaGV6VlJHTWgvaVVtQ0dRWnRN?= =?utf-8?B?Yk1uekpTVXdienBKSTFnY2Zyei9BK1FYZnlISWluZklvRGhvTk42NjR1eTBZ?= =?utf-8?B?VXhGYUhMSUJYNlM2Z2k2TjRFY3FSZFhTQVp5aGdWaTl6QjRXMkpVaXJUVHda?= =?utf-8?B?R2cveSs2ZWN6RGNhUnZPQTFpbi8xUVBES2JQY3pzbi9FNGJGS0JBdTVNUG5W?= =?utf-8?B?L2pWdzQzNE1vTitBemRhYW1FNTFhNGZCdWgwRERwLzdpTnpKZldvZmlKUHVt?= =?utf-8?B?WmM2UHRrcks5Z2s4V0wxK1pTNHNsblhKWFdCK2s0aE94anZDaml0NlhvT0FQ?= =?utf-8?B?V1FuUitMeVI3NXVWUVJ5am1DcGNqNnFucEpXZjRhdTRuVVdtQW5EYTZVanUw?= =?utf-8?B?YWQ0d2Q1UlJyck5PcTkzT2ltMnRiWnBCNUdMWFdyTElxeVpRbHdBKzNtcUow?= =?utf-8?B?Z1RaeDVLY045a0hnZnZJUzFnbUNwUkRFbVVYRDFDN2hFcFAxQU9FdFJtMUVi?= =?utf-8?B?WG5jS3FONGsrNUhGODNNYzZhbXcyUDliQ3p3RGY4d3pxeDZQbEhJcFErN3hM?= =?utf-8?B?cmxqdXRZcTBYeUNuV3dJSS9IS1J2SW1RQ3BWVHRDTTBPV2RESUlCdThDbVBn?= =?utf-8?B?NGxRMERNVkZ0aHBSQVUzZGtybDdxUlRBTURxUE5LQ0FDZmQ4blJoVFdQanhC?= =?utf-8?B?SHlLVWcxQklGMkFzYjV6cWxjOEViRGNsWGdxMm9kbHBvRFhUYlB5RmVOQ1dC?= =?utf-8?B?aTd3WEhtQngvclpjN2huU09jZ3BscXF4Zms2K0lpdnAyVWlIUHJkSW5qQkN6?= =?utf-8?B?RlhhTlZNTlFFcW56OFFWMUJSUmJMTlVKZDJicGlqeXpGRkNvTXFiRTJHd3lw?= =?utf-8?B?c1hwaUVGNWxHdkdTUE02bTQ5aUttSFVqRk1UZHZIV2x2M3hIZWtsOUhZMTVC?= =?utf-8?B?b2VsYnlIK0cwZWFyTlVBN1FCWjhYaGhKa3BURVhTSm9XRHBYSkl3MlE1dE9w?= =?utf-8?B?eEh0bTMzRTFzMmkvWXV3b0J6dnljWldRZ1FvNmdzaGFiMnBlRXBJRllqc3hF?= =?utf-8?B?NXVWdFcvUWVLZ09VaTQwSUQ0OFVaaVh3K3gvUkFCeHcwQ25NZStZcE5SSVNo?= =?utf-8?B?Z0J0ZmJ5b0hCOFRwV2UyL0RiK3BVcHhRVDhIc3UyMmFuWjltWnl6VFZyVVBo?= =?utf-8?B?eFg5clZTOXBsK2xuY3JGdDVtdDZjYkUrbE9JRjNZQWx1RXc1UFVpQ2x3VjRF?= =?utf-8?B?Y1FZUWo2dFFpd3cvVS8wdzBKeXY4Qkg5aHJBTDVieEhxL25ZYkJ1U1BDN1k3?= =?utf-8?B?S1BDZDdkT3ozbFV2ZkQ5c1VaN2tRUTU0WERIV2VhZFN5bzMrcWUrRnFVeUN1?= =?utf-8?B?QUlpdk80bjIyck43eFhwUk9SMUdiNlgzZVB0SElhTFdQMTdqbXpPcjJ3N2lh?= =?utf-8?B?aThnUkpXYy9RZDVTcEpuSGQ3Q24xL0JkWlllcFNxQjFxd0JUS2JUU1dEUzdZ?= =?utf-8?B?enFIMWNCbTd2UjlrSUFDei83N2Z1eDA5RlJXdTgzb0ZvbTJyakdUWE81emNT?= =?utf-8?B?YmtRM3NhK0xSMXo1aEt0UDBLMHJHK21DWXczRDJWMGVCK2tONXJUdlVyb3BQ?= =?utf-8?B?RjRUUTZPaWFiQmRmNm1YWlMwcTVHeVhjNUowajBiMDlMQnZ5WktFRGVoTVpN?= =?utf-8?Q?fMp1/2gLu1JmjoUJW1v+8pWoP?= X-MS-Exchange-CrossTenant-Network-Message-Id: e9220ffd-120e-4d86-f41f-08dc3736991f X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Feb 2024 01:51:21.7769 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: GUpOu/d0NQq2K6c9zGgyq4BU1/av7UoLDUDUdkRhw6qWVrrtPw3kvHYS37pbwnSWnG1uMoBMV1nlGmGFVh/JNA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR11MB6186 X-OriginatorOrg: intel.com X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 9739B140004 X-Stat-Signature: eskqab7kmgsmn7hs3jwq5gh5z6xdxacw X-HE-Tag: 1708998687-786257 X-HE-Meta: U2FsdGVkX1+fxgnkKZtFIfx7hmrC7Wa0NbtEF1Xsk5mdt02OjL0FpdnHRwMajd9izOyoLPvP3srI2txBO+SLO4wxM8gkIl1T3Rt5Z2ZIrJg01SvSuwIIMLVQRipY9Kl1icCogFWgAB2Qh5inJGnOBqBrAsjBxDmaiiqOxj23TNIkn1COqGPQxK2iwIPOQBLnZneGLcLnSk3mD6bliQqSjAwwn9+qpQ//KvaeRjvdNYJCs75sTNcUpsaXtochRXA18XyzklzE2KA3A3W9/dYBpnv8U7yIuKUsEPJrRUUPme6LU0hFwd4K+7KzsKJIHxG4gZwjUzfH5+ZWrwE/xruL0+iPDk80jkOO0ddnz/J7WOCjWciLuJHShbkJ1QFssR2pimjFYQAsmm3vwh2FQ7LJ6JkxuBeYtBMJmLUXVyLCBwfyUu7+C85QdRXb0MJHwD7j/S5CVHJZNUu9n3KhhFBHAmUsI19RXpK0d5OqQlMfSQ67EM1DNZ/au96ICDPkR+jZDhrViSdsYx9kkKCGH4kwmfEv5xWiMdEkyFrhHNOkQj12NoP44uxVg6hDRPA83FjjagPAKWThmz8Z/uBygiw1W+LfYgOgy9JwBAEo+bNO3xK3uSkF7wfpjkctzmbTE91tWLbbzoo7zqrMj+2ZomEnXDVtvXVW6k2nBFVJHefuqu3iDmGcrVyHDb29TYDmANGRIRmewrM4JR8z9hVyFkRNW1tBXPLQx7npk59dd9WvqynKilYV8oqP9aUfbDnxJYBwmXVCSE0DWW9AhNwvM59ZIiThVXpFyDMk1JN+2tgVha7IAS0qaDw6bc3Y/0icPrCCpHTJc0tBwbs35kMrnrRfbDgPj4QUvubLfAF3COTq/2yGTZ7uYjRptX/C0e4ArpA95X0Lb5l4ZUCvxIagClwoAlfu2/gpEFmKPrAOifOO5XueForxYmgluOb6kV+Xr62R7Mbx+kfZPxSKHe6PYa0 NcquAjOL 0hJy4T/4nLwclPy8Y0be1JN0irYfX4mngWVaJe7VPZvAs8vs= 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 2/27/24 04:49, Barry Song wrote: > On Tue, Feb 27, 2024 at 2:04 AM Ryan Roberts wrote: >> >> On 26/02/2024 08:55, Lance Yang wrote: >>> Hey David, >>> >>> Thanks for your suggestion! >>> >>> On Mon, Feb 26, 2024 at 4:41 PM David Hildenbrand wrote: >>>> >>> [...] >>>>> On Mon, Feb 26, 2024 at 12:00 PM Barry Song <21cnbao@gmail.com> wrote: >>>>> [...] >>>>>> On Mon, Feb 26, 2024 at 1:33 AM Lance Yang wrote: >>>>> [...] >>> [...] >>>>> +static inline bool pte_range_cont_mapped(pte_t *pte, unsigned long nr) >>>>> +{ >>>>> + pte_t pte_val; >>>>> + unsigned long pfn = pte_pfn(pte); >>>>> + for (int i = 0; i < nr; i++) { >>>>> + pte_val = ptep_get(pte + i); >>>>> + if (pte_none(pte_val) || pte_pfn(pte_val) != (pfn + i)) >>>>> + return false; >>>>> + } >>>>> + return true; >>>>> +} >>>> >>>> I dislike the "cont mapped" terminology. >>>> >>>> Maybe folio_pte_batch() does what you want? >>> >>> folio_pte_batch() is a good choice. Appreciate it! >> >> Agreed, folio_pte_batch() is likely to be widely useful for this change and >> others, so suggest exporting it from memory.c and reusing as is if possible. > > I actually missed folio_pte_batch() in cont-pte series and re-invented > a function > to check if a large folio is entirely mapped in MADV_PAGEOUT[1]. exporting > folio_pte_batch() will also benefit that case. The problem space is same. > > [1] https://lore.kernel.org/linux-mm/20240118111036.72641-7-21cnbao@gmail.com/ I am wondering whether we can delay large folio split till page reclaim phase for madvise cases. Like if we hit folio which is partially mapped to the range, don't split it but just unmap the mapping part from the range. Let page reclaim decide whether split the large folio or not (If it's not mapped to any other range,it will be freed as whole large folio. If part of it still mapped to other range,page reclaim can decide whether to split it or ignore it for current reclaim cycle). Splitting does work here. But it just drops all the benefits of large folio. Regards Yin, Fengwei > >> >>> >>> Best, >>> Lance >>> >>>> >>>> -- >>>> Cheers, >>>> >>>> David / dhildenb > > Thanks > Barry