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 AA5B7EB64DC for ; Tue, 4 Jul 2023 02:14:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E4BDA28004E; Mon, 3 Jul 2023 22:14:58 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DD53B280049; Mon, 3 Jul 2023 22:14:58 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C010C28004E; Mon, 3 Jul 2023 22:14:58 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id A93C9280049 for ; Mon, 3 Jul 2023 22:14:58 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 68B9DA09A4 for ; Tue, 4 Jul 2023 02:14:58 +0000 (UTC) X-FDA: 80972311476.20.2DD4AD2 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by imf20.hostedemail.com (Postfix) with ESMTP id AE0881C0013 for ; Tue, 4 Jul 2023 02:14:54 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=RTTyN26n; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf20.hostedemail.com: domain of fengwei.yin@intel.com designates 134.134.136.100 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1688436895; 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=SAXLA7pI9LQL12o0oQgaQ4MzqdyCDF0svFjvwaZL4qs=; b=cPMelGDo+kEzASo7dp1rXjeR4a2Wps3Av9VTXdVHimKVzhw3YBNhvH9/gLf4lE7dU76c2A O/0cRVExWPNtMRxHkUIu8MdnbCeSaLFf94PQJPOnPxRa13dIbwLiGaoqLbHxToIjoWBNg0 74gxCZHHKQUonRhwNBmT29Cz9dTlD9s= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1688436895; a=rsa-sha256; cv=fail; b=VXi5iRHqI0sypAfZcwEiZu+IPO/YurUY99z3bH7KJIriyzdjEakfv/1+H59lo73PbdvWUE xjUNzJr16n1keh/pKaHIRzJlMEyUkgynKlHqTeU3YtO0JfwH5uCsTr2usMqbltTCW64b9N G8YKlRzE/hncsJu1x0I93eIQSqemaYw= ARC-Authentication-Results: i=2; imf20.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=RTTyN26n; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf20.hostedemail.com: domain of fengwei.yin@intel.com designates 134.134.136.100 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; dmarc=pass (policy=none) header.from=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688436894; x=1719972894; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=vmGa5DGy59gYJabMuqSSzA06E+s92qa5eP1RMWGxsNA=; b=RTTyN26nPV1ciI5PVEI3mGJkGCs50qlWSJwFuqHG1PhoASnU87AGTuOx zq6VCYKAvhJYEWjNfIBLkfT6kDodcNiEAVUVrQe1LFGr8Hyy8Lm8Eauvu gFs51Bc30KXi/PEiuadmFxI3cDu5sVCbQHlYmLraGVgvCuNac+7BX75ZW TiRVl6OOApfQIald2kFgXfi+kgiMeOUsboCtWCsBzqnwWdPJNImwjmIoF U9jGW8hvKab/lLeSi3/bDF980fwWsOh3+gu/1cvbnIFGeNI+nJkH51smt zVINlxNW1eb1TH+FRX7PqrunODtsyb6N+Xek+CeY2x5wloyjPNSttpZSC w==; X-IronPort-AV: E=McAfee;i="6600,9927,10760"; a="429048131" X-IronPort-AV: E=Sophos;i="6.01,179,1684825200"; d="scan'208";a="429048131" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Jul 2023 19:14:51 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10760"; a="721938268" X-IronPort-AV: E=Sophos;i="6.01,179,1684825200"; d="scan'208";a="721938268" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga007.fm.intel.com with ESMTP; 03 Jul 2023 19:14:51 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) 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.27; Mon, 3 Jul 2023 19:14:50 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 3 Jul 2023 19:14:50 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Mon, 3 Jul 2023 19:14:50 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.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.27; Mon, 3 Jul 2023 19:14:49 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QqlMaKjU+xeqUt0LO11e2ElVbczgam9iZwQ/v0V30zFW1UAkuOQyi3UpzQ/Odd3LjHWOc4zP99S1luDB1VHVkWqXxD5nFdMOCrDgA/Tc9FPDKiGplCDrg1geRNf3uruzBtkopk/3c1aKvNKwcCVyHFVlByLiD0WjV4KeMPKrM8Gm89dPzbQ59F9OAhqVzfYsRrUt/w6MNU4FoVFcjYiWnFSuEVhuA+bKmfaPhw+nk5jGYn4fKgP/RTgwOvKIbQcd8QPGTIiMURZgBd44s+zXrJMDz+TeHxgN+M/tcnCT5vF0cDCJW3MpQe5l5h+E5Ge4n3MRz6ZE7n74CYke6GRoJw== 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=SAXLA7pI9LQL12o0oQgaQ4MzqdyCDF0svFjvwaZL4qs=; b=h2ugxWvYFF6O8/6uKiF7RqhFdmq/9IvsN2f+3XJ782yy3TYXX3WXwkRfJX2LdSyie77vaE1UgOO7szLDzUNyhcjd4dDk+Mj17dRHMLxeTjYAu7/lN8zMofvFwR78aWoizv42MViNC6aJKJ2asofEfitCsqQnN8jPSZKQu1+COOGEkyrEkcqBonICPqTefSIIX/KpmOrUQ8HKtm1WIXaiTASWN4fBfJZDG167HgSyzLF5yWBcuBBsrNSSoYjQhY/wsSDMZWn1mHd0tIJ49aVNS5AbwDjTlxOOcC/OZUrlNH4taLWTDdOm++IWMOtX1r2hAoZhK6UJWolpaGlx7c9LLQ== 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 PH0PR11MB5904.namprd11.prod.outlook.com (2603:10b6:510:14e::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.24; Tue, 4 Jul 2023 02:14:46 +0000 Received: from CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::e6c7:a86d:68d6:f2f3]) by CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::e6c7:a86d:68d6:f2f3%5]) with mapi id 15.20.6544.024; Tue, 4 Jul 2023 02:14:46 +0000 Message-ID: Date: Tue, 4 Jul 2023 10:14:37 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/5] mm: Non-pmd-mappable, large folios for folio_add_new_anon_rmap() Content-Language: en-US To: Ryan Roberts , Andrew Morton , Matthew Wilcox , "Kirill A. Shutemov" , David Hildenbrand , Yu Zhao , Catalin Marinas , Will Deacon , Anshuman Khandual , Yang Shi CC: , , References: <20230703135330.1865927-1-ryan.roberts@arm.com> <20230703135330.1865927-2-ryan.roberts@arm.com> From: "Yin, Fengwei" In-Reply-To: <20230703135330.1865927-2-ryan.roberts@arm.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SI2PR06CA0002.apcprd06.prod.outlook.com (2603:1096:4:186::10) To CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PR11MB4820:EE_|PH0PR11MB5904:EE_ X-MS-Office365-Filtering-Correlation-Id: d591bd1f-f772-4d7f-1ad9-08db7c346fdd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ItnksG+oB3EiQu/Aql/YMedb3Cz1FZ8cozu/9nePifFtxaymUhny8xDkAjMrSNEl7OHp8rsTd4jXB7KNAjgtvg2dVh0PlN63Y+W6bHP24k3S1vOCUz0nOMsN0poQHqDsIh/XZBd2oCv2CCDUccrVUxmfnTxyHQd5aQZMfLcmWMs/FTqSvl9I2Vu9Wa/6Oye8B1D70+3GM50iRiX8I8RNMUoP+CYxMJuwHN2SvUxPksknCxiOh93qc/1GInKPZaveFaBd2OklhfB8T2u2tNS1M8piZknCixwan6zRO/5Zqs/gDGnSRU983cdmni4kqhNP7FchjkpaAH+0FwJv4rDEp0KC3dfJO9EAaaeO0Z01b8K3GvgW8Yhft5NBe2iAeNlxxNOxyKhdAR3amsAGom9nN4pvjGWTaYfO6Bv+FQTbNGXhFHLy+9ytzHWwEcR+LwpismH7OtQj4/2+VJO9ox4w0LJAzvs+hIr50wIsCjY35YGD2CERoAFoWTs1RCUHjujjKH++jAlHVewY4aXwu4jbxR0NsyEHvV+8dMy+i6auLOZ1BMcxF6fIE5a63PHXDBS++qBD6WFwD3rFl+sZhMUgWHacnL31WFOQjGrSRHALhQlrTHqfoQOuvMZUOqdIcBzhOjeXpKSvHPlsVcY/43Wz7dD1ABpOqDED9Jg9S3s/F/0= 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:(13230028)(346002)(366004)(39860400002)(376002)(396003)(136003)(451199021)(4326008)(316002)(31686004)(66556008)(66946007)(186003)(86362001)(31696002)(66476007)(26005)(6512007)(6506007)(53546011)(83380400001)(82960400001)(2616005)(921005)(2906002)(6486002)(38100700002)(6666004)(7416002)(5660300002)(478600001)(8676002)(110136005)(8936002)(41300700001)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MFhCMUMrbFlaR2d2U01UWEQ3ZFVvU1pRT0kweHZiZkZoMHA2bFpKNDcrT05n?= =?utf-8?B?TXRSU3ROb01BTnhQSHdaWnNsWVc0RUlCM1ZNMzZZdlVXb2hxT045Z1hUUkgz?= =?utf-8?B?VUc5RkJ4MVJuWklPam95WXl0ZGlZQnk5WGRmY0x6dlRoUzVQRStZTXFydGQ2?= =?utf-8?B?VHpzSFhtenVFOUxQWExtTDhralcxK1lXUUpCVXdnY1BKM255Yi9MazBwZ3V1?= =?utf-8?B?Yk9oVmtwMGwyOGRrY3BxeUxZanh5Z2NHYUFDSk1TTytlUUFUZjVvVGJ2NGtl?= =?utf-8?B?eUtsVEpUQ210dWswbVBmalo2VGhqUk1yUE56d01pVXpzOVg1S21rUEpueEJC?= =?utf-8?B?MEhobmJEYXc2K1kzWDBHaXF5Y3lFUjNZRnVPekVETVhMbG1lejZxYllvbnh6?= =?utf-8?B?U1JVdThKNWUxK0JFMzZZY3VjVEVYOEhvdi90UzRkUThMY0E5N0RUTVZYWkdq?= =?utf-8?B?UmVPREZyK094NVJTazl5dTF2NEhwbStZUGtmT2RjaTRlMlQ4UUVwcnFqNnMy?= =?utf-8?B?K1I5bnNXZ0RQRDdpOUdpVEZSbXkxUkhDcVAzNDFYVGZZRGs1WFBEY3pROTdj?= =?utf-8?B?OUdWVHpSbEkwTmxxQkkzOWFrcFZld2lOUkl2ZFFYNUFXMWhLQmVhbGRFUzVJ?= =?utf-8?B?SXFJbGRjMVd3MzJlQVl4eHdWK3BTZEVkMU5hVUhESk5jaGhwa2I5bkxLenNJ?= =?utf-8?B?TnovSTY3NyszQXNiMURyM1dOdnArU3FYY0NBcVVnVndmVVRGMUM1TmtjVExj?= =?utf-8?B?RzN0c1NvbjJQVkVBWVh4S3NVRnhTMkdkYWdqMlU1bEVlNmthSFZDWTRvWjF2?= =?utf-8?B?QjFENGlEdEJkR0YzamVKRm9WRUhnaWZaTDh6QXpTOHhGbDhZM3FTdXcxZlcx?= =?utf-8?B?NlFESE96UjVwdUM5UlpLTlR4TG5nNGo3OFFuL2JEc1NZNWwyNjJEWlIwdWk1?= =?utf-8?B?NTlNRHQ0NkNQK3lkSUNjWndjdVA2QU1nZ0U5L2lmYnNuRHZ3SWMzTklrZVl6?= =?utf-8?B?Rng4ajV1N3BVWGx5Uzg2WEFzU2RIaGQrZWpVRVVNVHFjc29Cb0hDd1ZMaTZH?= =?utf-8?B?S3ZqZmFnRy90dVJQUUxqRjRDSmY5WjZQeFZ6UEdWM2R6NWVwalVnTkhRdG1D?= =?utf-8?B?R1FMZkhBUzR4cmJQeXJKLzE5ZC9JUFR1cVkvTWxtcS9MNUhvZVhiWnZHcFEr?= =?utf-8?B?eUlGdlBPR2J6bEt0dytWR3p4dzduSGc0emk2cDVpR0xTQnNYQVBMUDFraDVB?= =?utf-8?B?TEw4bXI2K2JwQjJNRWxKUGVrcmlqak1ZRnlYK0owVWt6SXVZaHdIdHlLa1Ra?= =?utf-8?B?R1Z3NTZBNW5waXl6a3doSU52cWkwRGovZ3NFcGFWVmZqdGpLNjdoT0VOT3Uv?= =?utf-8?B?bjhTM29QdnZqd0tlSW81MEhwV2lIdnpRMFZvT1FzNjJ5MjdHOEpCMzZTQlhP?= =?utf-8?B?L2VteVMyWUFJQ2hLclZXSndHS296UXZ2NzArYW0yaDJRc3JDTFBQaWhOazFV?= =?utf-8?B?UncrZ1dvNE5uZ1F3OUFoU0ZLcW9VbkxlRVgwSlUrODFlUjQwdVgyVDlrSHdn?= =?utf-8?B?SU5HUkVGSHYrYjN2eVZXOWlybTUvMkhMRTNGK29IYS82L2RKTDc3M3pFVUlZ?= =?utf-8?B?S0ZoNEg3b3ZkcFA0VWdkS0VaTFEyOVZUclkydkFQNmpaRVBVSFlPMFhHYXZU?= =?utf-8?B?Q1FLV2M0YzYwSFRhdUM2Sm1VUVVoQzc5K01zZ3RyTFBTMEdQWEx6ang0Vm1S?= =?utf-8?B?dEUwL1cwZW9hc1hRNitDbllZMnZYaS9CZTB5VlZNakEvZUt2NTJ6c01zYUp4?= =?utf-8?B?T1JwanlqMm9XbWI5RW1aQ01peWtGRUVvak0ybEdaeFBOY2hYSDE4dmc0SkZo?= =?utf-8?B?T1FEV0RrWWZFbHNVNGhreFJQcVhCVlhiMmt5ZnZVNmdiQlFUaUkySmVDUDBD?= =?utf-8?B?UTRnVGh3MHJBNGFmcmYySDRQcnJYdnN1V0Q2S3N3U3VMMVgyNTBNMW5EajZE?= =?utf-8?B?VWUxMkl0cnQrSDBKeXJmRU9NWWFDdXVGTllxR1BMZFZocTJhSkpiVFB3SVRE?= =?utf-8?B?OG5nMUVQdndFQUtMVDIyOTlXSVBDTjlOMndIUDlTM29aYVB2R2MwVXFEKzR3?= =?utf-8?B?VUZzRklNb0E1ekRrbjk1aGsxNnN2VFRMQThsSWF3NkJHNXcvWXlacWdGYno3?= =?utf-8?B?aVE9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: d591bd1f-f772-4d7f-1ad9-08db7c346fdd X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jul 2023 02:14:46.0774 (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: EaBlQshwNuyPoa93VXNDtjSJtstcup8h5i9DThj4rYCtr/EA8g/u95AIsOnmG4RmytZI6aUhXwTygLL0nHY3NA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5904 X-OriginatorOrg: intel.com X-Stat-Signature: tundd8i7ozxnasgzi7o5br83f8k9b4mr X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: AE0881C0013 X-Rspam-User: X-HE-Tag: 1688436894-635721 X-HE-Meta: U2FsdGVkX1/BFVUTBOGX4QXG0ecuSmtw0jq6ds1GzVOQm/yLNNdY7v0ih5v4nXHL8u+wOENxJYKeI91N9TwYziFzLZUm9yu0Fe6mLemutq0Jd3EwOcgiBqNZNOdZ0Q+y0MBl9uEr1IV0bcHNASubeS4Ypl9PK8nnriu/GM7OI3NMw/PhygxfFuyIvu9ZbI0IQPC0xzrVQfodQzFT4Bh5R0IjqTOvpOqUFZAYc+2z7vM1Az33BSAou4pyUd1QlUXjwvslY4M4kW43iIVz2koCgZtZ3YpbKHu23tHp3P/jZOl6lFLTC1mZEODu7w8kKQ2kdchghYlz5W2Z3gtk6usxkLw21fFky43bMLP2sjiHyLn/0+uB7rEQq+RHVZmZPr8lhPZCQSLrEvKMdmbD2WcaEfK7xb3U3fRupyouU1rof9qop8Tr3ULGd6KJB4ddgO74nFvTVC2s/gbfx7T8BqsvOiM1hwPyu35VD3n8Q+eN1zSwpyFyrzKw68VlJl3Oy4dliSnJPOTAqFz9kjR/P97LGwMNsviz7XiUKFc77zKl8aCfM/oZRubvBjZ/zia66QKl0s2wh+BgJSWsxoVUAvNTYh4EdjqF/p3l1KQ7xPGzoa43PwVXsSm1qnCa+WgVD0icf0N513hkCNb+wCkat2E1MAfN0EswlxbijBrxBLdhfyHu8ZtKwFEFnzmH46JZ7QSanalx9rI7Vri8ckN6NjhKRCDEIGNsC1ERY1JPqNnZ9mBn+tepSyoIo7fSHKlfG4wHHgBA0BO1BBPFEa3t+hQewGDt4eSArbUleHP//Q2QVVsJdOvxUuC7O0vtbXPEhGoTg0tdrObOESid8T6OiHPOFvluAd/ia+He4UHK0IaLbRUGvUzrZEETRykd2Yc18eVA/G3xk8ykNMw5kYQmL0vLcivwtytBwdzUlf+MWYPasZaKM40/6WWEJ17ug6XedeMHwtBsin+py74lTs5TK5s ATWfPZNG /b5MhNzrDMfPwDWqrxsgAath0w0tNUHr0s4f9Mzei1mmtpxcmuQcaX1Ouk3zwo1Hmz4+25VekiNn6PribEZPZdXtEADpBBuvzuIqjL9LGmGi2fjJKgimhc7Y9lcUwvIK4O/LxIIQe/6k3r7X/8Cs6COuzg7ihe31ew/s7gODETfEbbovVfjMYis62jCczW2I4CI8lgf6bIiPdJp9OhHHIrCEYJzpfg/XTlm0/8E5OZfNbp4e7Kt2g/j5m+61hl3EcN4iJcBn11jwyGUegzXyONoOy5xy34PC4fW18QVDR9v/CxALeM2ILL/m67rChiYxjRcDT2ynyoYbJUnqiSuJcWFEaS2/GxMyKYiseSwhqXf2qk+uQLn0y/9yBdolnwhBPHOwvwWxbyNTyzDtTV4Ra5QLu+nLbPvg43UXQ 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 7/3/2023 9:53 PM, Ryan Roberts wrote: > In preparation for FLEXIBLE_THP support, improve > folio_add_new_anon_rmap() to allow a non-pmd-mappable, large folio to be > passed to it. In this case, all contained pages are accounted using the > "small" pages scheme. > > Signed-off-by: Ryan Roberts Reviewed-by: Yin, Fengwei > --- > mm/rmap.c | 26 +++++++++++++++++++------- > 1 file changed, 19 insertions(+), 7 deletions(-) > > diff --git a/mm/rmap.c b/mm/rmap.c > index 1d8369549424..82ef5ba363d1 100644 > --- a/mm/rmap.c > +++ b/mm/rmap.c > @@ -1278,31 +1278,43 @@ void page_add_anon_rmap(struct page *page, struct vm_area_struct *vma, > * This means the inc-and-test can be bypassed. > * The folio does not have to be locked. > * > - * If the folio is large, it is accounted as a THP. As the folio > + * If the folio is pmd-mappable, it is accounted as a THP. As the folio > * is new, it's assumed to be mapped exclusively by a single process. > */ > void folio_add_new_anon_rmap(struct folio *folio, struct vm_area_struct *vma, > unsigned long address) > { > - int nr; > + int nr = folio_nr_pages(folio); > + int i; > + struct page *page; > > - VM_BUG_ON_VMA(address < vma->vm_start || address >= vma->vm_end, vma); > + VM_BUG_ON_VMA(address < vma->vm_start || > + address + (nr << PAGE_SHIFT) > vma->vm_end, vma); > __folio_set_swapbacked(folio); > > - if (likely(!folio_test_pmd_mappable(folio))) { > + if (!folio_test_large(folio)) { > /* increment count (starts at -1) */ > atomic_set(&folio->_mapcount, 0); > - nr = 1; > + __page_set_anon_rmap(folio, &folio->page, vma, address, 1); > + } else if (!folio_test_pmd_mappable(folio)) { > + /* increment count (starts at 0) */ > + atomic_set(&folio->_nr_pages_mapped, nr); > + > + page = &folio->page; > + for (i = 0; i < nr; i++, page++, address += PAGE_SIZE) { > + /* increment count (starts at -1) */ > + atomic_set(&page->_mapcount, 0); > + __page_set_anon_rmap(folio, page, vma, address, 1); > + } > } else { > /* increment count (starts at -1) */ > atomic_set(&folio->_entire_mapcount, 0); > atomic_set(&folio->_nr_pages_mapped, COMPOUND_MAPPED); > - nr = folio_nr_pages(folio); > __lruvec_stat_mod_folio(folio, NR_ANON_THPS, nr); > + __page_set_anon_rmap(folio, &folio->page, vma, address, 1); > } > > __lruvec_stat_mod_folio(folio, NR_ANON_MAPPED, nr); > - __page_set_anon_rmap(folio, &folio->page, vma, address, 1); > } > > /**