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 C48E5C38142 for ; Wed, 18 Jan 2023 01:41:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5D5206B0071; Tue, 17 Jan 2023 20:41:41 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 585326B0072; Tue, 17 Jan 2023 20:41:41 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3D87E6B0074; Tue, 17 Jan 2023 20:41:41 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 2E3C36B0071 for ; Tue, 17 Jan 2023 20:41:41 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 085E640234 for ; Wed, 18 Jan 2023 01:41:41 +0000 (UTC) X-FDA: 80366218002.06.BE5BAF1 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by imf05.hostedemail.com (Postfix) with ESMTP id 76E23100009 for ; Wed, 18 Jan 2023 01:41:36 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="WEVYlhI/"; spf=pass (imf05.hostedemail.com: domain of fengwei.yin@intel.com designates 192.55.52.115 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1674006097; a=rsa-sha256; cv=fail; b=4/pbfjG9PKX6CLDRv2mj+pm1SfkBZs5yUOMMMFYZCUhtMIGUtiW3FiKs9mPNmfTX4QDC9L OUnuitlBU/TvTlkH7LSiBnZtbSDNmQVjsAv8dI/R89xOrYeikJNHt6ihTrxykE/k7ERvcr jM+ZICqhbDPAVt3B2CEDLTp9tfXojPY= ARC-Authentication-Results: i=2; imf05.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="WEVYlhI/"; spf=pass (imf05.hostedemail.com: domain of fengwei.yin@intel.com designates 192.55.52.115 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1674006097; 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=zCde0S/HuElYMuxikabbjvna4SE6IBdWicHiU3BmqsE=; b=LCSJeYcFLBVs0hJ8RyaIYlA2TbEjVKBBOr8Yi6pv5Qa2o4s8GOvnwnYNHpLT0qcCK5p/hB paF79z9cwTnKo+s1/Qz0KavJqKDb7P1HAyEdJbQfg05qKx8o0r1WafkePKFfbXWwJ6jO6n k1ugjJeFg3c1FyB5tNl9tB5fDp9XJ3k= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1674006096; x=1705542096; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=JgAMeBD2BAn2Ug6byTCBa0uNOobaeoMQ+wJVWbnvGdk=; b=WEVYlhI/bkq/4W2SoOIJlMzd5Wmnu7I4A8rQQ5B470RMJ2XGjIPlnWGV JDOiXHeKPV89BIMb4hXKeGDCca03uOfCP2mto/I3BBnVbC/9WBlWUoOA6 IeP0cu2UH2gW4NdwZ1xQ80fR6FYApzf5AGXDOOkYdHPj0DyQlusLox3gv j/VABhSnjmt17FLE8egFi4M+lvxcu8uvwKooB8IhbQXlCy2Y4on1TZxvo EaaZsDO/40hCMp6fZu/9JllNfwBxLHBWIHLHn/Q8Lyp8GfAff3/zXJ4Ux Ejwra8K6l6q1vG/TJkrIxTBgDXTpSdSaYCJN6dT9rApo0EClI9o4pxJr1 A==; X-IronPort-AV: E=McAfee;i="6500,9779,10593"; a="324928240" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="324928240" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 17:41:28 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10593"; a="691793270" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="691793270" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga001.jf.intel.com with ESMTP; 17 Jan 2023 17:41:27 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Tue, 17 Jan 2023 17:41:27 -0800 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Tue, 17 Jan 2023 17:41:26 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16 via Frontend Transport; Tue, 17 Jan 2023 17:41:26 -0800 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.168) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.16; Tue, 17 Jan 2023 17:41:24 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F6cVC5asXlonE57uzvxiD5eofhhEKxCo6m5nGznF9a3uke9VUGpIHMyuvjbSmADNKAvKM8CjO1JsExhj1wFsSqvrBRRTQdYNLaB9pyfMAXit+XvSMiIy3iBU2Ovp/3LV2GRcE1+JUjsgcniHx/lJ7ajywAgbI+Fd79YG/zkbzyxYbWqbEKzQ2olgBrYN3MRxfG45IGNQcaQgOgAFQzf2DyhrgzY3Y9BHfJr+edhg10wJjVHk7NCa60MSszDh2HN26keUM25oZg5vhHt1EkljL55J0ISr28oO2qQ7RP0nqyjd6XCCmCUaoNUCcB7yNxTwsH28nz2jpBsE7QgPnnPJmw== 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=zCde0S/HuElYMuxikabbjvna4SE6IBdWicHiU3BmqsE=; b=C5Yzr1PnlVkndlJANkXGnISOcXGJwA/4z08KZ0ogdI+owOvk5CcC1tFUmOaHaXt6WQfDBHV5zCS9L1v/JYMbBNhaax722W+hy3PH3i5ewp3dKt/PieyE7HoQu/HjjkYWFcR/1SvvNYx/GGdNyvYCCsDKOUOYF56LzWSg66PPNdaOIO2QTmqPcVaZ2iqnyWapit5Z674J1Mbx/HbQuYfmnOS8/ZodC+MaTPK1WI30USHOjdzHt5NKQYwZjsmnJwLj/G6zTKy2h9p8zXxMg0V4IV1LMX8hoz+7UkOySSwXtG85rMn8GVWlAi4LHxIbiY43pxmCp9FHwzmI2ZcAQw176g== 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 SJ0PR11MB6622.namprd11.prod.outlook.com (2603:10b6:a03:478::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.18; Wed, 18 Jan 2023 01:41:22 +0000 Received: from CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::1531:707:dec4:68b4]) by CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::1531:707:dec4:68b4%3]) with mapi id 15.20.5986.023; Wed, 18 Jan 2023 01:41:22 +0000 Message-ID: <3f0a7090-6932-df1b-ad55-09ddc6169a75@intel.com> Date: Wed, 18 Jan 2023 09:41:13 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0 Thunderbird/102.6.1 Subject: Re: [RFC PATCH] mm: populate multiple PTEs if file page is large folio Content-Language: en-US To: Matthew Wilcox , David Hildenbrand CC: , , , References: <20230113163538.23412-1-fengwei.yin@intel.com> <2100e7c9-2a5c-4c1a-6e22-9710a2b0c66f@intel.com> From: "Yin, Fengwei" In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SG2PR02CA0056.apcprd02.prod.outlook.com (2603:1096:4:54::20) To CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PR11MB4820:EE_|SJ0PR11MB6622:EE_ X-MS-Office365-Filtering-Correlation-Id: f68a3829-8e49-4640-a7c9-08daf8f51a62 X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Gn+vkczUYTPMGmkktdbzGZW1ynuFSBTSvTHNTnAx0c/d6yLd8lUOe2YEUxbBVvsnaXBNKbpUDWQ+RNj1gSB2pk/fGgu2/jazb9Sxoc5jwXQbBC32sfaMRE7qwA2UrGnmGzE8Mk7CHnbCN+xsz36h1zVnGicuhg0Syn0odeiGm9UWgxNwg5pP0siqM5GNDP0dDlntLFIG5yUOMqUV+jlol4RdVpcGH+juYfFqAwtLSYvafoTId1+aAfUbyWw3Of+RGHGCeOa2qAPqD0ziwyalkUh9FoDyn1HVNzRu9J0yK+8ONqfR9oUYah/7aMpGqPRB15zKC4EFts/L0wLhBbYstvR0iTtfJocHBOccXwJEaN94HdJRQFscoSB0DcQXh09cGiJVHo9wiJG2o/+Cap5Gu/YYClW2hZ9JlX6DcwaqF3rdlP8TCFyH8CIhyWq0wFzQSkqNa/Sg25C6kj7TJNTbAlmW/C8hLddPXgqAVXjt/S1+WhlrGvx5vF+BqNKuUSATGF1bxfhY97zlAki0kydUgnAKOmMcTxvzbfbdHXOl1ICQOpLPQcILE2/ckkemKKiRNpLitOEEYCPipsAa+orfQC7nH+aHfcqfVKUSxqiVmL082lDcyo04BwbVmqxz33IwjGC8RU4c2TrX102z7ipS8Fa8xMKJRHFw1lWmTkm5GXtD4U6MQyamGdH1SJBDkGvPJ4qtsekTo07aehNSopE/o63XTW5mDHsyTPUVd3QL8S/lVve1TkeHmVO0pjjmTKsV1gKyw9xtmug0di/Gi6Idtw== 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:(13230022)(346002)(39860400002)(396003)(366004)(376002)(136003)(451199015)(8676002)(83380400001)(38100700002)(31696002)(478600001)(316002)(186003)(66946007)(2906002)(5660300002)(8936002)(4326008)(66476007)(53546011)(6486002)(107886003)(110136005)(6512007)(41300700001)(26005)(2616005)(6506007)(6666004)(66556008)(966005)(82960400001)(86362001)(31686004)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TTJBaW5KaG9hZFYzcDZKY29renFyWStheFNuNCtqRVVlaC9yYXdManZiVXht?= =?utf-8?B?K0k2WHJxOTg2dlFNMHhmOVVERTQ3NG1oU1NYTVM4S09XNzdSWmNQbmNkMEhB?= =?utf-8?B?L1pKdmdEdWJpdFpjbXNzbGNXL2FzTEx1MEI1WWxOcC9XM1lTNHVCc2xvTG50?= =?utf-8?B?MjZzOWdkdFJ6dGt1UHpBUllKN2dTSkVJYVZQZHNRUFo5RkZtSWZrY2kyMEEx?= =?utf-8?B?MzJ4WjNDMXNncEU0bFRjc0VMUm9WZWYrSkxEMkNWZk9BelV1T2RyY3BmL3kv?= =?utf-8?B?TGJEYUZWOHUwNWR6RmhBNVJXamk1MkwyV0phQVR4dEtWTTFYd2F5YW1xK29a?= =?utf-8?B?UkYyLzMrZ3BFd1k5WUVCL2gxL2hvYkkvK041S3Q2dDU1UTNZd3FRT0RMSmFY?= =?utf-8?B?cHoyL3c0M1YzRWFkMFZVOGlLdXQveFd2MHBIYjBWbGEwbzRGSGdqSXFhVCtj?= =?utf-8?B?SjlxVjY5d0xScysrQjJrNm9kK21ndXRqS1JkUldNZm1kd1VYSEhYUU4veW05?= =?utf-8?B?TDFqNmtYNmR6NkdVRG54ay96RTRaK0x5dXBTZmc1NzdhZGVaNEQ5TUJ3Ulky?= =?utf-8?B?MHN4SGVPSW41emZYamNBT2c3MjdObkt6QkZUU1pQdllwVWVQVVpCUzFmS1NR?= =?utf-8?B?QnJ2WmtQcGYxN3VtMVl3VFI3cHZiSWYvK0NsSEJlR2lUV29YenBQRno4MEox?= =?utf-8?B?MUxaSEFUNGQ0WkJlMEllcFZXZWtXTmZpU25WREZ4U3NqN0hLZFZhL2hvR0Mx?= =?utf-8?B?c3hDY091SGVtWEFXZzFjbDJWeXFCcGQ4RW5LazV5VStLcDROYWUrbzVpTG5i?= =?utf-8?B?Q3V1MUNFY1VPeTlzZHhXWmRMU3EyTjdBaDd4S1JydDczUGZ1LzhVQ0dzWjlG?= =?utf-8?B?Zmtrb2JPNmNndkwrZ0JTeFV1SlRhUm13YUJoKzd1Q1hjeWY1UzI3NjhCMmJ0?= =?utf-8?B?eDgvcDJNYW1DN0k5d0oyVFhVN2kycGlwRGIvekpQK3hSNUdUb2grckptQjFt?= =?utf-8?B?T3ZnaWVSRWdHTmNRdjFDWWJiZU9LYUhpenZpcnlReE1KVGpESXhkejBxUEJW?= =?utf-8?B?VElVMi9DeERXcm5xVDdOK2dhSzhRVnFVU3RkdDd3RFNOY3RqNHZZT3MzQUY2?= =?utf-8?B?c0FrcE1xV2tmMlN1cnhCbVZBNE5zTkJSbHZTYXdSS3NKWkNwdGZXUDVEL1dr?= =?utf-8?B?a3U5UHdubWQrZUgyc1pSVUZydTBNdy9Gd3dFREgrRkF1UjlGUUhLSm5aTE5E?= =?utf-8?B?SjhoRHdRcDc2RzFaTkMvbGx3MzJGVlMvTFFIRTg0RW42dmhxdUhLN1duK2h0?= =?utf-8?B?R2hzckZmUEpjTm91dXI2cUY1QU5nYVpQRk53aHEvYkx2MUpxTC8ranp4OTNT?= =?utf-8?B?bHVkdXhuUEtRbUJPS0N1cFhGT3oxVXBkZWZkQ2RmcEMxelVTTzlicHZFVlF5?= =?utf-8?B?UlBHelExUEtGc1YvR25xUHhpdG1xaXJXNmN6cXZlTDgrbm9GTUljY3AwYk5m?= =?utf-8?B?MDFMUkQ4VnJwb05oVmNVQlhJRnlhOVQvN2RFejVWRndzeGNOOGVSSGMrV3h1?= =?utf-8?B?Y3NVZ2NBNlB0aDZ0NkRhRkdSV3RWb2FhWFJsMHh2V0NSYnRmcFMvSEsvQnl3?= =?utf-8?B?MHFGa2pDNWdzNW8rY1RrTFNqVEJMOWg5TVNuRUJBdzBsYk5VWklUQ212M0hO?= =?utf-8?B?am1WdFgrM0JhbmIrYU1Bb0YyRFdnVS8yd0hvZE5EMFBxcm4vSCswajNjekpi?= =?utf-8?B?VS9Ed3dqSlhCVGRQeUZQc3VRM0lBelZZKzRHM0hUeGx3VU5DVHZpbkNySzh4?= =?utf-8?B?OEZpd0puMElmSHVnaXJUOXNPOFkzYWR5MzY2dXVSckJlT2JBWk9wWjczTEN3?= =?utf-8?B?SmFnVHhjbUdCZldiamozallPZHJXNzNvN0hPa1BXMGJMREJVa0V0bHNtZmFt?= =?utf-8?B?MVFHK3BTMEpOeGpveGQvSytiQ2lYU1ZWT2ZGbVRjcEJnem9SZWwyWWtJOGxs?= =?utf-8?B?Z2Eyd1ZwdU1KUUFjOE1rTnUxem1od1hBbzJtZWthWnF6TlZLT0oyWUdJN0lD?= =?utf-8?B?djI0Zi9teFFBYTBqVlJOTjdlb3JmdllyWm0zQ0JHYWtQOGRmeDYvMEhqNEZm?= =?utf-8?Q?wDGhBAuPh1KQroPYbcE5srd8Y?= X-MS-Exchange-CrossTenant-Network-Message-Id: f68a3829-8e49-4640-a7c9-08daf8f51a62 X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jan 2023 01:41:22.0944 (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: /C6xMx8qhXXKkMElMXsLi32kKgVIgRTekFftNHTMlvGVE+t0n+r9fadNiqfQg8dvLQmIUZDaFjnWsMI2BK4gWQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB6622 X-OriginatorOrg: intel.com X-Rspam-User: X-Rspamd-Queue-Id: 76E23100009 X-Rspamd-Server: rspam01 X-Stat-Signature: 5riy3p6cqqt3kf5k4utyxd8xc8gabq5c X-HE-Tag: 1674006096-672813 X-HE-Meta: U2FsdGVkX1+qUATZ8U72QsRT7WNftmfbZn89Rnl8drhi8lb99NbfwN1LT8P9G6AZZvkqzMBAH95CZJbsCY3fxK+edBs16OMKWIHAZ5GJNcFpXkfonyBR+0jE2n9hGDu4VoORCsukP+cJCXt2EVKhd8MdmMImn7/csjPg5Si2CPJWFjyiw3vEQ8u/cPNuxe//PE2Y84cop6llphAbcR4PZAYOSq4O6HoxTlxNruXm7yRG9/4mRWFZlb9oeH/zMQ+fBDxyytvlfIpLtuL2JTNU8EiaGzZM8e4l9UYGSTR+zrroeP6L9NT5xy12gcw4RnhZCgiV9r4TN9sRSaeCPF8ONM3B8YDx5CoBaypeFD1XnIxKe2WP0w38I/0JP8aKzJ0WZtcwMnYyRiSynESpP9z/AX6UoljD299AhvBe2TagehmSPf3l09p5gcsif4jBhJwpH1p3GiBDm96GI1XQNufSyHvDp6NOTeDrntpyPctWbK8nlnIWWMInfQx5JB1PPWJnWzS9rA0FUUdGw/DkSx+cjtYegfHYIUNa6xbHLWjduQm6Oyztylnq/LtszZ8Yc95Gh0H4rT2/RWDyHhZwHypOnrkzGKpDebX4y6LcBj0y7hDUNb/rpKTZmNUGnGQDlTDD4bKoeJX1qV/YCLlZwPBSOe/0t+zSJmSwgLdCamU1Y2eJ9rdOASz6QPHqnBQxkE7v6a7CHyaw2KbFl6++c8NRH9ag4c3VAM4K6bk5L7knx454srKeHx552p277AzcLd9GKNj6bkwJcprz9Vs4WSztNwjVR0vVmEr6oQEBfvE6MAQyrnaG4kPx7OLY5rqhIv9p3hlRUYNH4PbChZpy+H/etIKSZEGduKRRF4tRCtMWPm1rjRqpZNSRSUD0L7i5Iw6Ov/pc6UefC8vSwOTb7OgAWH3SewTUaVsJKCwTMgOb55xre/1Nx6/bjr/axdwHvC7j 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: On 1/17/2023 10:46 PM, Matthew Wilcox wrote: > On Tue, Jan 17, 2023 at 11:37:05AM +0100, David Hildenbrand wrote: >> On 17.01.23 10:19, Yin, Fengwei wrote: >>> >>> >>> On 1/14/2023 2:13 AM, Matthew Wilcox wrote: >>>> On Sat, Jan 14, 2023 at 12:35:38AM +0800, Yin Fengwei wrote: >>>>> The page fault number can be reduced by batched PTEs population. >>>>> The batch size of PTEs population is not allowed to cross: >>>>> - page table boundaries >>>>> - vma range >>>>> - large folio size >>>>> - fault_around_bytes >>>> >>>> I find this patch very interesting. But is it really worth it? Most >>>> file-backed page faults are resolved through the ->map_pages() path >>>> which is almost always filemap_map_pages(), which does something >>>> fairly similar to this already. Do you have any performance numbers? >>>> >>> I tried the will-it-scale page_fault3: >>> https://github.com/antonblanchard/will-it-scale/blob/master/tests/page_fault3.c >>> with 96 processes on a test box with 48C/86T. >>> >>> The test result got about 3.75X better with 4.1X less page fault number >>> with this patch. >>> >>> But It's a micro benchmark which shows extreme friendly case to this patch. >>> >>> I didn't see observed performance gain with other workloads. I suppose >>> shared file write operations may not be common operations? Thanks. >> >> One question I have after reading "which does something fairly similar to >> this already", if both paths could be unified. > > I've been thinking about this already; not so much in terms of "unifying > these two implementations" but rather "What's the right API for mapping > the parts of a folio that fit into userspace in response to a fault". > I haven't got quite as far as drafting code, but I'm thinking there should > be an API where we pass in the vmf, a folio and some other information, > and that function takes care of mapping however many pages from this > folio that it can. That would be lovely. > > And the reason to split it up like that is to batch as many page > operations into this folio as possible. eg filemap_map_pages() was > written "to get it working", not "to be efficient", so it does stupid > things like call folio_ref_inc() every time it maps a page instead of > counting how many pages it maps and calling folio_ref_add() at the end. > Similar optimisations should be done for mapcount, which implies some > kind of batched equivalent of page_add_*_rmap(). I tried to do batched mapcount when I worked on this patch. But page_add_file_rmap() just support compound PMD_SIZE folio (maybe it is time to remove that limitation?). Regards Yin, Fengwei