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 8400FC6FD1C for ; Wed, 22 Mar 2023 07:03:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 002A96B0075; Wed, 22 Mar 2023 03:03:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EF5B76B0078; Wed, 22 Mar 2023 03:03:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D488B6B007B; Wed, 22 Mar 2023 03:03:38 -0400 (EDT) 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 C396D6B0075 for ; Wed, 22 Mar 2023 03:03:38 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 8D91680384 for ; Wed, 22 Mar 2023 07:03:38 +0000 (UTC) X-FDA: 80595643716.09.BD15870 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by imf30.hostedemail.com (Postfix) with ESMTP id C161C80014 for ; Wed, 22 Mar 2023 07:03:33 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=FcukN46l; spf=pass (imf30.hostedemail.com: domain of fengwei.yin@intel.com designates 192.55.52.93 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); 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=1679468615; 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=53voV79KSzpLnOjf8az+3iDsbY0X4mz6Iq+M7wZrURw=; b=541mms1tUyxFMikq5iInRxFeqZjWiz/PjOCDU4bVDxxN6fDp2HeGzta4hhM4qEExtSCSFb YoxhnKEtxNuV4MO9UW7w2Pi5SI3VaWG3xu4fjt7b+c2btRFcpJIdAMnoHWAmmHoSXW+ji1 27uEMHUSL6K0s7dTX0Zg85dAryWQRus= ARC-Authentication-Results: i=2; imf30.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=FcukN46l; spf=pass (imf30.hostedemail.com: domain of fengwei.yin@intel.com designates 192.55.52.93 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1679468615; a=rsa-sha256; cv=fail; b=MetBxAZnqOndgNvXctjiEAqZlgeVcoOM2xuyY8+Qlu9RGd66tt1xqbWOFtmXob4Q7bK+6J cj04L7fpuwdCF8rOXGp80c8LagXgd7AwGke4QoP9mt0BML6ZNtDUNgPyplVu/JM/wuOBuj OlDOdKMcAbEL+YBH6SlNmK9zxt63tYo= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1679468613; x=1711004613; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=rbmld48afQ5waR2YMaTVUcRrQBrqI59h90LKW2u+Ia8=; b=FcukN46lDsvz/R58PIy120aSSERG06/W8Xc/w3aQk3N0rINU16OrlspP 2gwDcIB1DUxIzV9FG8IBvonC9ZRzJ1yu/mFIXlKA/UE8ThzIM656ltJJY bKGDFGK7YaZm5v4zVEn3qSSFRoYlzHRT9CLbsGRFQVGUJ2USZjoJ5ZMIk 9xNStvI9nZgrkD4879IdVqmgLH0QXm29+wFPx3HrDvj3yvZIm+ClSoQW5 9d9iI9F+v1Vp5bfyZY7E4dp5q3yCiAiNTkuFDchhP8W9hUdFg+OWJhXMN GYdxpkx2xbzILxMB8Ux4Bg4KbmUUjoyxk8f36dqMJBzJZUXt9X6ijrpjF w==; X-IronPort-AV: E=McAfee;i="6600,9927,10656"; a="336648576" X-IronPort-AV: E=Sophos;i="5.98,281,1673942400"; d="scan'208";a="336648576" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Mar 2023 00:03:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10656"; a="805718908" X-IronPort-AV: E=Sophos;i="5.98,281,1673942400"; d="scan'208";a="805718908" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga004.jf.intel.com with ESMTP; 22 Mar 2023 00:03:31 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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.21; Wed, 22 Mar 2023 00:03:30 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) 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.21 via Frontend Transport; Wed, 22 Mar 2023 00:03:30 -0700 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.45) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.21; Wed, 22 Mar 2023 00:03:30 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Nor1ceCZG4gfJAs41k4sA9FiqUQ1J75PyCal7HRGExA+GX70aWR+3YW4ye1MmdjLUx18ZMAtLQ08/CsczekZYzDjeu0KL7Csaw2wWpMnTNLguvAt4xBlWgvjTZTmkFxISgFDZ6V3MIN39zNvuUWZQBX34QLO4W3YNbMcuJ7uCOM/LgRsjLZU/dJnfGhzEEHy44yQL5mLicXvg8sMBPOU4lXhbxeDGgMbUXEks1Yge8dFQKCvVL+GtQ95CpYpeWTDzZwPciHPcasLpunYSZektaU5y0qe2ZjFKn8vYVpEQ+alK+B2pFjLeF6A9RE8EbmyewrP8YdhY0eDRY7G5modrw== 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=53voV79KSzpLnOjf8az+3iDsbY0X4mz6Iq+M7wZrURw=; b=DdHAt2i0t4ZRE8zFvDh6Xf+PQiUUVDAlq1P0decRNfAOBpDJomwvN1pK4px47sqpS5v10QvwlWosgR5rn1YXK7+JsuVXI+JED+WLaxg0vJGBfDH9YKyiSR44paID1z7owZ2ECfdJTRxeR3tbNgtaWG85y1RSfekfRDruwNrllaLzm8SqGUYSK2C2hZFEyuJoOxSb8HLvgJw7ZPMbImUdqAknUcvRPdhU4E0FsogMNBqdiJ490vrq4+jJJ2P/pOwsBl8w/R3IZL8sL0WrJr6bQSekRYskv3XNkgZivr+EL6eDHGW9TbVd8s9sPyOi7xeijWXNAj6uHT2TMsDGnfZR7Q== 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 CO1PR11MB5155.namprd11.prod.outlook.com (2603:10b6:303:91::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37; Wed, 22 Mar 2023 07:03:28 +0000 Received: from CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::8073:f55d:5f64:7c6]) by CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::8073:f55d:5f64:7c6%8]) with mapi id 15.20.6178.037; Wed, 22 Mar 2023 07:03:28 +0000 Message-ID: <19616e99-e5f7-8dce-70cc-70660b96b345@intel.com> Date: Wed, 22 Mar 2023 14:59:23 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [RFC PATCH 4/6] mm: Implement folio_add_new_anon_rmap_range() Content-Language: en-US To: Ryan Roberts , Andrew Morton , "Matthew Wilcox (Oracle)" , Yu Zhao CC: , References: <20230317105802.2634004-1-ryan.roberts@arm.com> <20230317105802.2634004-5-ryan.roberts@arm.com> From: Yin Fengwei In-Reply-To: <20230317105802.2634004-5-ryan.roberts@arm.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SG2PR02CA0080.apcprd02.prod.outlook.com (2603:1096:4:90::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_|CO1PR11MB5155:EE_ X-MS-Office365-Filtering-Correlation-Id: 56c1550f-8270-413d-8c14-08db2aa389d2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dYMVL6JwN02f34TTNScLzLrgA0FNt/F/H9O7qTK1IExeb6xLL9OCFGzGBxJli/sEdqmEoFpQBft38iH4rNVY4YbdA5S4lpiBJudnFji5ZwPekEaL8GLw5SmBZcYh9dHa+FQnLmddRLJHWMz52o+y0DW0wz2DUL6EADhnBRgO7Z4cSY4sUG3Kd/2/228AogxeZ2rTFSAI1kv8jzXPaIjPshH6MQCL6jNaB9Q68e1luHDc4xjpY+AnPM8uQmwglUUwJnZNgj1HzJDT/v2TOThKywCwLPRF4jfwfqSR52Yu2UjOOcnWIxntHZx9iS7VrVUb9OMBvnDYd7nyOUCnkNYGE7y56ySPbKGhFLtwRoYIttDNU/3Ka1EztOcEU8wbTms/wDm14goWIUzGq3jDZyBJuo66CTFL8XdapDLflBUMQYFSJZMWUVNKYA4zrIGNPFkSTyYjsuiY+AmpekD2JmgEUzXryjTRe3edgY3/mVyMylHq7UY68/f8139YdOaMvKkR+kPX0RxYsHJ9kMAhm4Lza2rPNvoyAsuHapBcNGZGrhyCGca2+cV6w5V/oGYdtj/TLU76u8+ag5YuArK8c09hXC4LrjwjyxjO7O3MZb55nig/hzrPodstSq38WHLwEyiB9or2a92qkxRjZ6TRvaC95MYuptc6xwc3EnRUCTxL4Gl1P2yUXUCbGxvJiI1/JlDR151uB9VNcP/yVCbqkOHtAGYqQjMwFnVv89TsprMyM+w= 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:(13230025)(396003)(376002)(366004)(136003)(346002)(39860400002)(451199018)(31686004)(6512007)(83380400001)(2616005)(6506007)(6486002)(26005)(110136005)(478600001)(6666004)(316002)(186003)(5660300002)(53546011)(38100700002)(31696002)(86362001)(2906002)(66946007)(8936002)(82960400001)(8676002)(66476007)(36756003)(66556008)(4326008)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q2ZtT3BsdklMNmpzTGh6ejdYNjJPb1JOaUZQYjg2a0cybWtiblBITGRKdnph?= =?utf-8?B?d1YxclAzT2RCb1ViKy9xY2EvRDJiaTNRTlJ1NWwrL1EzQXJadjI3dDA5bDBu?= =?utf-8?B?TE5lUGZVUGZMZk1pUVdMQnFXdGo0UENhQUgybWMxaS9hbFE1L0F3S3g5UWJo?= =?utf-8?B?dHZLV1lRUTdHdmRkcjVDcnRXTmNRbEczT1ZJODN3QlBYR2hwR3ByTEFGb1gx?= =?utf-8?B?Qk1KazJ0SHVnNkZHeFc1Y3VzaitPUDN6bEZsOWxkTGxlaTlhUFNjRURvTjIr?= =?utf-8?B?QXFSSE9pS0JvbS9tUXJ4cVg5UG02eEJFZHNFUkR2bmV2bTFsZ2lPK24xaHlm?= =?utf-8?B?WHo3dkhPbXpINTJubVNyRTZ6OFZkZXcrU0lQeFhQWGQ5dkZtamRJdWhnaVY1?= =?utf-8?B?bWR6cWpySW83bzMzOVRrM1BCQmg3Q000ZjBrblI5VjFIZWNITjA5eXhXb2NR?= =?utf-8?B?QVJGYkJZMXE0YW1sMFVlODBDeiszYVBuOFlVSmRIU1ljRnZFR0J5VC8wMnNh?= =?utf-8?B?bVV6OHpqM2VTK3Z6R1ZPVlY2MTdCY3BoOFo5bHRIN0kvdWNWSWZWVTNLbHVz?= =?utf-8?B?aDVoVE1GMjVZaWg4TmpGRGNINm5iUUc0Mm9IWnV3YUs0c2tEOVphRTlIMXFu?= =?utf-8?B?c0lKNkY3SVlEdlBnNlBmQzVxYkhydjh6WDd4ZjFnWlpVMDg0RGRsRHR4Y2Ns?= =?utf-8?B?KzhKTTdVNXF0SHROR3JRanZ4cm5KQStRd1Y0WHJ2UVF4dlJndmoyT25mVHNM?= =?utf-8?B?MjB0M2NWcXVEWXNDT0VZQ1ZYUVJxRnAxdVZ4dUFvWll2WTlwL0NTcWZYVzNq?= =?utf-8?B?VnFncVlUNWt6ZzJmVTJwSkJDMnloNFQvcGZ3bkwwV1k5UGpjQnZCNFFicTE5?= =?utf-8?B?QWFCSmsxT1UwenJGQ0VvV1V1OFlGSm8vaTA4OVo5bExKcVNjaUlhcGFBWCtH?= =?utf-8?B?R0phZkZ0UW9Jay9qSDg4dEVnc3RMQkpGOGNuanZNb2xqVnkyTSt0NnpHQUpD?= =?utf-8?B?YzJsK0VGbUJFVXBpU0Q2NUp2RUZlbmZjRmVudFZHNi9WdWxnWDI4aGRmNG8r?= =?utf-8?B?YVQrZ2VpMi9VV3FzTW9rOVFYTk1IOFFLSWt4NVovTFlxV2VvUmUvbVN1cVhr?= =?utf-8?B?d3lLM2NZVlUvR1BMeXVvNVZmSVBBR1ppUVBxcFBwR1RPekdkTjFjV1RqTEpO?= =?utf-8?B?Vko0R1F3K2xwU3g1TUpURHBmWVNVTHh6dHdBK0xCR01HQmlUUkRqdzRVTDh6?= =?utf-8?B?cStpYXBqSTc0OEZFdDhTQ0Z0NnZUc2M0c1FieGZZMEhaZVlLNzFKQ2h3MDJ4?= =?utf-8?B?UUVHNXVEaVRZUmtoS2pXVzBhTDN2d0p3TFdUUER2aVhoWlM2U1RRaDZZdlR2?= =?utf-8?B?RUxtVXNPNmJ5UkRMWGNVSzVxUTNsOTBqaDdCZFZEN3k2VVNqY0t4WlBPdit6?= =?utf-8?B?aUJLc2JWcittOWtMU1FrR3RRemNadXBiSHp3U2FQTFNyUFovYk83bVBIM3hO?= =?utf-8?B?ZEJ2YXJjcXJBNzlEanpHNVFWZGoyek40dVFCZnFWM20rMS8wREJZUGVLNko1?= =?utf-8?B?QTlublZWbzZMMFZQR1lsamlDTGhTUUZMYXNTVWVnY25xcE03ZWVYcW40N2pU?= =?utf-8?B?dmk2b1FIZjh6MDJrL0hTSk1wSGhtbjI0WXhPK0lXajd6N0krMW4rL2x0TjE4?= =?utf-8?B?NzEzUTdremVQeGR3Mkk3UHVNblBxaUptbzRDNlhYTVg3NDlBcVFKVDUyOVF2?= =?utf-8?B?WWV1YjByaDAyMnpYaXpWWUVQVmV5ZmZGL3l2UnlPUGR3K05DSTJWRmI2Umxq?= =?utf-8?B?WWtXaDZNdTBBTS96M2J5Wk5RSVJHSHROYlBIU0VFUWJ4Qk92aEg2MWg4RDFC?= =?utf-8?B?VEN4dVBFNUZscEdXcUNGWHhIRk5OUEtzRzlQYzZlcHhReXp3YVVVaU9mb1Jy?= =?utf-8?B?ZG9jZDNyV3NWWWh6aXFyR2p2QkNRZ1BpYjBwREYvYklZTE8yZExZNngvTG8z?= =?utf-8?B?S0JITU5oT3ZEaVp2T2VNUGlyY29hMHdXLzhZa1ZFOEppTTRwaVZXUlhBU29x?= =?utf-8?B?WTg2SThUM3M1eXBpMG9CaE9RbjRXcXhueXV6eEFqNWhMTTNCY0VhNjRyWU5m?= =?utf-8?B?MTV3MEpMZkN3b25wOHZJbDlDWnBUcHhwQ1k2ODN2YVVCRlRhL0c1Y0pOa01B?= =?utf-8?B?dUE9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 56c1550f-8270-413d-8c14-08db2aa389d2 X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Mar 2023 07:03:28.7744 (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: nKaxzBiTvTzceDKO9BA6aiWbSVkxzPcVXrPIepDAsDPtfNcKO5nZQ+vroENj+/RT+4fkYJ45r/NTdp0vdJS8iA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5155 X-OriginatorOrg: intel.com X-Stat-Signature: o495ungt7uqfwbdard6tbkaxzibmf319 X-Rspam-User: X-Rspamd-Queue-Id: C161C80014 X-Rspamd-Server: rspam06 X-HE-Tag: 1679468613-458965 X-HE-Meta: U2FsdGVkX18TbhynojGhdzgjIuVCSNqX4AdNtdjD292ESJ2KL5P19L+iFO/ehWhxR1na+SzRMue6pv3oN+5lmPOQnpfjf6EgZ3iJxp6JwXD/4lEkRNcov/QfTTYBfMpAZsVu96LEhlkDrYEzjLSaA2CoH298X/hpHSg1W14GAoeXsFA9vQd+b64n4AklsuAddI4cvDoEji7FK3VTlzKP91zttnbDIL/fNgCkRscJ1BYpwCc0LmS9MwiK2GzYdrhpWYbuBCz9YRHUl2ZNZvpE3XMeMy40AtcKgC1G0g60o2x6koEVEYyYAdQqzuZpyRmBoxs2u/fqWalg5DL3IHLpe0DryyHQE7ZtHJc5lI0lhlQYkTuq2LuHMJk/9ZEDNPcT4IHoGiRevaoFEk1WSO2ScXORFyeEv5b4uvDNyQnmV4LLxJWHwcDFjEHV9K9Nlr+SMhxoeLUiWyF8eVjbRM1p3jN2lkRSjCUJ+yOe2OaefFtKFGuUbW2tAQgcTmfHMVqqNyBm5seQ+tDr8ptUAysBFGVUh0IkfbHMqwwzl0cC5WK2wjAUZwW+mVEdekcSOeTLhNgN6sDK4jpGqCJYgDfLs0YzEPQXHFClZBwLnE9zs1SmT5Dv5nl7q0aGnxIw1/h9QU6ASW2KUScLyurzZ+hxWkcjPRgf6aQmESPThQY08MhDFDIwnEdNdT9g3/2F1y19GbYK8OjV3UGQ3lVBB4JuVYhNIWWetCGbmjgl+P/WfVVaU0PLP0mUx0++RXnqdQncvotNXftDMXyrUQA1Ajrc82perd33V3Qw6xzYprytxBy/Z4lxwq/bVLEi9cddNg/OjdhEnd2GEIuh5NIU/Omgh1O8ykJePWSjEm8Rz9XqRL9ojnvYnrb0f5NhJmDkNwJGrWgzx/0BdYOxDk+CqwGG0MhRFzwnIXxi1f/xuRIDcmU8NHQwOp2+xFgNloc3iU1oVRaLJiNsQlDCSm3eCxR 6wGkfX/q wR40LDxIKNwxxOw76peTyFtZ1Q13wClbkzlXYVBhVDiWQpU22d0jR4W6mQRjv3ZYs1cXHAxmsHvKmmlUk+ykr7NAJ2SjSzJbajt+xxvVGIxfYi8J1dEcWGBtoxh0Yzp+fLcKb5kieYH8Oy51JwxGh4PQCvhfJ7X8ABhtxnSgF+fSzbhhAGChKug/vJLP2rJMbBr7sYBGcvKDC9DO0cg9E+MZ7Exo1qyJcE+sW95w3kZt+Y8U7Pu5B+YZ0k8ud5t67A28CLajX8Uv6xQojswpZBhGkQepk9WT8tdlrVWJblVp8omlaspcYlKzaC8mtyb1EBuBR23uKAm9iJFtSWxpO2+CsMhYYtEwHPXs6Y5rPy7Q2pqUCLN5s+ANZocJjzxRwcHEu4tr8xad4qqd2bAyDp8fovA== 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 3/17/23 18:58, Ryan Roberts wrote: > Like folio_add_new_anon_rmap() but batch-rmaps all the pages belonging > to a folio, for effciency savings. > > Signed-off-by: Ryan Roberts > --- > include/linux/rmap.h | 2 ++ > mm/rmap.c | 43 +++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 45 insertions(+) > > diff --git a/include/linux/rmap.h b/include/linux/rmap.h > index b87d01660412..d1d731650ce8 100644 > --- a/include/linux/rmap.h > +++ b/include/linux/rmap.h > @@ -196,6 +196,8 @@ void page_add_new_anon_rmap(struct page *, struct vm_area_struct *, > unsigned long address); > void folio_add_new_anon_rmap(struct folio *, struct vm_area_struct *, > unsigned long address); > +void folio_add_new_anon_rmap_range(struct folio *folio, > + struct vm_area_struct *vma, unsigned long address); > void page_add_file_rmap(struct page *, struct vm_area_struct *, > bool compound); > void page_remove_rmap(struct page *, struct vm_area_struct *, > diff --git a/mm/rmap.c b/mm/rmap.c > index 8632e02661ac..05a0c0a700e7 100644 > --- a/mm/rmap.c > +++ b/mm/rmap.c > @@ -1302,6 +1302,49 @@ void folio_add_new_anon_rmap(struct folio *folio, struct vm_area_struct *vma, > __page_set_anon_rmap(folio, &folio->page, vma, address, 1); > } > > +/** > + * folio_add_new_anon_rmap_range - Add mapping to a new anonymous potentially > + * large but definitely non-THP folio. > + * @folio: The folio to add the mapping to. > + * @vma: the vm area in which the mapping is added > + * @address: the user virtual address of the first page in the folio > + * > + * Like folio_add_new_anon_rmap() but must only be called for new *non-THP* > + * folios. Like folio_add_new_anon_rmap(), the inc-and-test is bypassed and the > + * folio does not have to be locked. All pages in the folio are individually > + * accounted. > + * > + * As the folio is new, it's assumed to be mapped exclusively by a single > + * process. > + */ > +void folio_add_new_anon_rmap_range(struct folio *folio, > + struct vm_area_struct *vma, unsigned long address) > +{ > + int i; > + int nr = folio_nr_pages(folio); > + struct page *page = &folio->page; > + > + VM_BUG_ON_VMA(address < vma->vm_start || > + address + (nr << PAGE_SHIFT) > vma->vm_end, vma); > + __folio_set_swapbacked(folio); > + > + if (folio_test_large(folio)) { > + /* increment count (starts at 0) */ > + atomic_set(&folio->_nr_pages_mapped, nr); > + } > + > + for (i = 0; i < nr; i++) { > + /* increment count (starts at -1) */ > + atomic_set(&page->_mapcount, 0); > + __page_set_anon_rmap(folio, page, vma, address, 1); > + page++; > + address += PAGE_SIZE; > + } > + > + __lruvec_stat_mod_folio(folio, NR_ANON_MAPPED, nr); It looks like you missed __page_set_anon_rmap() call here. Regards Yin, Fengwei > + > +} > + > /** > * page_add_file_rmap - add pte mapping to a file page > * @page: the page to add the mapping to > -- > 2.25.1 > 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B364FC6FD1F for ; Wed, 22 Mar 2023 07:05:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:From:References:CC:To: Subject:Date:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=4Aft93YP2T78xvV8j6+/RBCCyHY9lCkiQheGi+Kl44Y=; b=VZdIWWExzSIlPHGiLscaGUM7I1 tuhj+e9SRKJXdKYjfJRfE8kuBjXlxeFlNZq7dPi2CRpyRdhGO7atqgfUFuQ6wT80IsLDYUO7UlSOn cQgc5g0a0srAr2djllbMnRXH2lwjayR/PzVt6l1cuY5p1vlzhkIWDWKhBCZ6NvQ3DmnMAQWxoo4aT hPTuTvWaxGskgRPZrtqR3TgGhcpTXFFCtYVIdycFHmgLvHe2/PD+FgWLL5Z4xDUmNlZ0bC/bM5XcZ bpM1p24q1su3rZMXQNcH1oYFo3vZW3YG2LuDDMjJOExTqQTlDBXLH3GErkeCeHOI2MRqOssvk/8vk HrgNLLag==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1pesVV-00ExZ2-2R; Wed, 22 Mar 2023 07:03:37 +0000 Received: from mga11.intel.com ([192.55.52.93]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1pesVS-00ExYG-0P for linux-arm-kernel@lists.infradead.org; Wed, 22 Mar 2023 07:03:35 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1679468614; x=1711004614; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=rbmld48afQ5waR2YMaTVUcRrQBrqI59h90LKW2u+Ia8=; b=ARD5qMyv0PZ2mnrBrlgRSCLru+hyvRZegSm/QIcWsjboGVSJiY5nxXyW Mcui1B6vlJVLrDdbDf2kZsFgG/cqmR/12Vgg7NDaZx6s8zY0R+k7CdTCo ZqfNuPP0p11pu7NwiVysbsDYIoY1hopBhN0b9U87ZHPVUPBfnATSSjsmn O7u7QbNtvvg+S1hy2RC8gfD3v8/9/bS6Ld5TOKoRW6Jemvpm6ZLfYJaUj IJlC2wbZWsgwTNreUCkUG/tt6irbbj3SebxnAovX4NwTYJpEC4RrHf+n0 2fm9mPct++BeuaHM50HGBUD8hVIZafkhzg3O7cwH5by5XOxRY2VfRJxW6 A==; X-IronPort-AV: E=McAfee;i="6600,9927,10656"; a="336648577" X-IronPort-AV: E=Sophos;i="5.98,281,1673942400"; d="scan'208";a="336648577" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Mar 2023 00:03:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10656"; a="805718908" X-IronPort-AV: E=Sophos;i="5.98,281,1673942400"; d="scan'208";a="805718908" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga004.jf.intel.com with ESMTP; 22 Mar 2023 00:03:31 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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.21; Wed, 22 Mar 2023 00:03:30 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) 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.21 via Frontend Transport; Wed, 22 Mar 2023 00:03:30 -0700 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.45) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.21; Wed, 22 Mar 2023 00:03:30 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Nor1ceCZG4gfJAs41k4sA9FiqUQ1J75PyCal7HRGExA+GX70aWR+3YW4ye1MmdjLUx18ZMAtLQ08/CsczekZYzDjeu0KL7Csaw2wWpMnTNLguvAt4xBlWgvjTZTmkFxISgFDZ6V3MIN39zNvuUWZQBX34QLO4W3YNbMcuJ7uCOM/LgRsjLZU/dJnfGhzEEHy44yQL5mLicXvg8sMBPOU4lXhbxeDGgMbUXEks1Yge8dFQKCvVL+GtQ95CpYpeWTDzZwPciHPcasLpunYSZektaU5y0qe2ZjFKn8vYVpEQ+alK+B2pFjLeF6A9RE8EbmyewrP8YdhY0eDRY7G5modrw== 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=53voV79KSzpLnOjf8az+3iDsbY0X4mz6Iq+M7wZrURw=; b=DdHAt2i0t4ZRE8zFvDh6Xf+PQiUUVDAlq1P0decRNfAOBpDJomwvN1pK4px47sqpS5v10QvwlWosgR5rn1YXK7+JsuVXI+JED+WLaxg0vJGBfDH9YKyiSR44paID1z7owZ2ECfdJTRxeR3tbNgtaWG85y1RSfekfRDruwNrllaLzm8SqGUYSK2C2hZFEyuJoOxSb8HLvgJw7ZPMbImUdqAknUcvRPdhU4E0FsogMNBqdiJ490vrq4+jJJ2P/pOwsBl8w/R3IZL8sL0WrJr6bQSekRYskv3XNkgZivr+EL6eDHGW9TbVd8s9sPyOi7xeijWXNAj6uHT2TMsDGnfZR7Q== 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 Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) by CO1PR11MB5155.namprd11.prod.outlook.com (2603:10b6:303:91::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37; Wed, 22 Mar 2023 07:03:28 +0000 Received: from CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::8073:f55d:5f64:7c6]) by CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::8073:f55d:5f64:7c6%8]) with mapi id 15.20.6178.037; Wed, 22 Mar 2023 07:03:28 +0000 Message-ID: <19616e99-e5f7-8dce-70cc-70660b96b345@intel.com> Date: Wed, 22 Mar 2023 14:59:23 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [RFC PATCH 4/6] mm: Implement folio_add_new_anon_rmap_range() Content-Language: en-US To: Ryan Roberts , Andrew Morton , "Matthew Wilcox (Oracle)" , Yu Zhao CC: , References: <20230317105802.2634004-1-ryan.roberts@arm.com> <20230317105802.2634004-5-ryan.roberts@arm.com> From: Yin Fengwei In-Reply-To: <20230317105802.2634004-5-ryan.roberts@arm.com> X-ClientProxiedBy: SG2PR02CA0080.apcprd02.prod.outlook.com (2603:1096:4:90::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_|CO1PR11MB5155:EE_ X-MS-Office365-Filtering-Correlation-Id: 56c1550f-8270-413d-8c14-08db2aa389d2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dYMVL6JwN02f34TTNScLzLrgA0FNt/F/H9O7qTK1IExeb6xLL9OCFGzGBxJli/sEdqmEoFpQBft38iH4rNVY4YbdA5S4lpiBJudnFji5ZwPekEaL8GLw5SmBZcYh9dHa+FQnLmddRLJHWMz52o+y0DW0wz2DUL6EADhnBRgO7Z4cSY4sUG3Kd/2/228AogxeZ2rTFSAI1kv8jzXPaIjPshH6MQCL6jNaB9Q68e1luHDc4xjpY+AnPM8uQmwglUUwJnZNgj1HzJDT/v2TOThKywCwLPRF4jfwfqSR52Yu2UjOOcnWIxntHZx9iS7VrVUb9OMBvnDYd7nyOUCnkNYGE7y56ySPbKGhFLtwRoYIttDNU/3Ka1EztOcEU8wbTms/wDm14goWIUzGq3jDZyBJuo66CTFL8XdapDLflBUMQYFSJZMWUVNKYA4zrIGNPFkSTyYjsuiY+AmpekD2JmgEUzXryjTRe3edgY3/mVyMylHq7UY68/f8139YdOaMvKkR+kPX0RxYsHJ9kMAhm4Lza2rPNvoyAsuHapBcNGZGrhyCGca2+cV6w5V/oGYdtj/TLU76u8+ag5YuArK8c09hXC4LrjwjyxjO7O3MZb55nig/hzrPodstSq38WHLwEyiB9or2a92qkxRjZ6TRvaC95MYuptc6xwc3EnRUCTxL4Gl1P2yUXUCbGxvJiI1/JlDR151uB9VNcP/yVCbqkOHtAGYqQjMwFnVv89TsprMyM+w= 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:(13230025)(396003)(376002)(366004)(136003)(346002)(39860400002)(451199018)(31686004)(6512007)(83380400001)(2616005)(6506007)(6486002)(26005)(110136005)(478600001)(6666004)(316002)(186003)(5660300002)(53546011)(38100700002)(31696002)(86362001)(2906002)(66946007)(8936002)(82960400001)(8676002)(66476007)(36756003)(66556008)(4326008)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q2ZtT3BsdklMNmpzTGh6ejdYNjJPb1JOaUZQYjg2a0cybWtiblBITGRKdnph?= =?utf-8?B?d1YxclAzT2RCb1ViKy9xY2EvRDJiaTNRTlJ1NWwrL1EzQXJadjI3dDA5bDBu?= =?utf-8?B?TE5lUGZVUGZMZk1pUVdMQnFXdGo0UENhQUgybWMxaS9hbFE1L0F3S3g5UWJo?= =?utf-8?B?dHZLV1lRUTdHdmRkcjVDcnRXTmNRbEczT1ZJODN3QlBYR2hwR3ByTEFGb1gx?= =?utf-8?B?Qk1KazJ0SHVnNkZHeFc1Y3VzaitPUDN6bEZsOWxkTGxlaTlhUFNjRURvTjIr?= =?utf-8?B?QXFSSE9pS0JvbS9tUXJ4cVg5UG02eEJFZHNFUkR2bmV2bTFsZ2lPK24xaHlm?= =?utf-8?B?WHo3dkhPbXpINTJubVNyRTZ6OFZkZXcrU0lQeFhQWGQ5dkZtamRJdWhnaVY1?= =?utf-8?B?bWR6cWpySW83bzMzOVRrM1BCQmg3Q000ZjBrblI5VjFIZWNITjA5eXhXb2NR?= =?utf-8?B?QVJGYkJZMXE0YW1sMFVlODBDeiszYVBuOFlVSmRIU1ljRnZFR0J5VC8wMnNh?= =?utf-8?B?bVV6OHpqM2VTK3Z6R1ZPVlY2MTdCY3BoOFo5bHRIN0kvdWNWSWZWVTNLbHVz?= =?utf-8?B?aDVoVE1GMjVZaWg4TmpGRGNINm5iUUc0Mm9IWnV3YUs0c2tEOVphRTlIMXFu?= =?utf-8?B?c0lKNkY3SVlEdlBnNlBmQzVxYkhydjh6WDd4ZjFnWlpVMDg0RGRsRHR4Y2Ns?= =?utf-8?B?KzhKTTdVNXF0SHROR3JRanZ4cm5KQStRd1Y0WHJ2UVF4dlJndmoyT25mVHNM?= =?utf-8?B?MjB0M2NWcXVEWXNDT0VZQ1ZYUVJxRnAxdVZ4dUFvWll2WTlwL0NTcWZYVzNq?= =?utf-8?B?VnFncVlUNWt6ZzJmVTJwSkJDMnloNFQvcGZ3bkwwV1k5UGpjQnZCNFFicTE5?= =?utf-8?B?QWFCSmsxT1UwenJGQ0VvV1V1OFlGSm8vaTA4OVo5bExKcVNjaUlhcGFBWCtH?= =?utf-8?B?R0phZkZ0UW9Jay9qSDg4dEVnc3RMQkpGOGNuanZNb2xqVnkyTSt0NnpHQUpD?= =?utf-8?B?YzJsK0VGbUJFVXBpU0Q2NUp2RUZlbmZjRmVudFZHNi9WdWxnWDI4aGRmNG8r?= =?utf-8?B?YVQrZ2VpMi9VV3FzTW9rOVFYTk1IOFFLSWt4NVovTFlxV2VvUmUvbVN1cVhr?= =?utf-8?B?d3lLM2NZVlUvR1BMeXVvNVZmSVBBR1ppUVBxcFBwR1RPekdkTjFjV1RqTEpO?= =?utf-8?B?Vko0R1F3K2xwU3g1TUpURHBmWVNVTHh6dHdBK0xCR01HQmlUUkRqdzRVTDh6?= =?utf-8?B?cStpYXBqSTc0OEZFdDhTQ0Z0NnZUc2M0c1FieGZZMEhaZVlLNzFKQ2h3MDJ4?= =?utf-8?B?UUVHNXVEaVRZUmtoS2pXVzBhTDN2d0p3TFdUUER2aVhoWlM2U1RRaDZZdlR2?= =?utf-8?B?RUxtVXNPNmJ5UkRMWGNVSzVxUTNsOTBqaDdCZFZEN3k2VVNqY0t4WlBPdit6?= =?utf-8?B?aUJLc2JWcittOWtMU1FrR3RRemNadXBiSHp3U2FQTFNyUFovYk83bVBIM3hO?= =?utf-8?B?ZEJ2YXJjcXJBNzlEanpHNVFWZGoyek40dVFCZnFWM20rMS8wREJZUGVLNko1?= =?utf-8?B?QTlublZWbzZMMFZQR1lsamlDTGhTUUZMYXNTVWVnY25xcE03ZWVYcW40N2pU?= =?utf-8?B?dmk2b1FIZjh6MDJrL0hTSk1wSGhtbjI0WXhPK0lXajd6N0krMW4rL2x0TjE4?= =?utf-8?B?NzEzUTdremVQeGR3Mkk3UHVNblBxaUptbzRDNlhYTVg3NDlBcVFKVDUyOVF2?= =?utf-8?B?WWV1YjByaDAyMnpYaXpWWUVQVmV5ZmZGL3l2UnlPUGR3K05DSTJWRmI2Umxq?= =?utf-8?B?WWtXaDZNdTBBTS96M2J5Wk5RSVJHSHROYlBIU0VFUWJ4Qk92aEg2MWg4RDFC?= =?utf-8?B?VEN4dVBFNUZscEdXcUNGWHhIRk5OUEtzRzlQYzZlcHhReXp3YVVVaU9mb1Jy?= =?utf-8?B?ZG9jZDNyV3NWWWh6aXFyR2p2QkNRZ1BpYjBwREYvYklZTE8yZExZNngvTG8z?= =?utf-8?B?S0JITU5oT3ZEaVp2T2VNUGlyY29hMHdXLzhZa1ZFOEppTTRwaVZXUlhBU29x?= =?utf-8?B?WTg2SThUM3M1eXBpMG9CaE9RbjRXcXhueXV6eEFqNWhMTTNCY0VhNjRyWU5m?= =?utf-8?B?MTV3MEpMZkN3b25wOHZJbDlDWnBUcHhwQ1k2ODN2YVVCRlRhL0c1Y0pOa01B?= =?utf-8?B?dUE9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 56c1550f-8270-413d-8c14-08db2aa389d2 X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Mar 2023 07:03:28.7744 (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: nKaxzBiTvTzceDKO9BA6aiWbSVkxzPcVXrPIepDAsDPtfNcKO5nZQ+vroENj+/RT+4fkYJ45r/NTdp0vdJS8iA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5155 X-OriginatorOrg: intel.com X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230322_000334_184079_D13916C7 X-CRM114-Status: GOOD ( 28.48 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On 3/17/23 18:58, Ryan Roberts wrote: > Like folio_add_new_anon_rmap() but batch-rmaps all the pages belonging > to a folio, for effciency savings. > > Signed-off-by: Ryan Roberts > --- > include/linux/rmap.h | 2 ++ > mm/rmap.c | 43 +++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 45 insertions(+) > > diff --git a/include/linux/rmap.h b/include/linux/rmap.h > index b87d01660412..d1d731650ce8 100644 > --- a/include/linux/rmap.h > +++ b/include/linux/rmap.h > @@ -196,6 +196,8 @@ void page_add_new_anon_rmap(struct page *, struct vm_area_struct *, > unsigned long address); > void folio_add_new_anon_rmap(struct folio *, struct vm_area_struct *, > unsigned long address); > +void folio_add_new_anon_rmap_range(struct folio *folio, > + struct vm_area_struct *vma, unsigned long address); > void page_add_file_rmap(struct page *, struct vm_area_struct *, > bool compound); > void page_remove_rmap(struct page *, struct vm_area_struct *, > diff --git a/mm/rmap.c b/mm/rmap.c > index 8632e02661ac..05a0c0a700e7 100644 > --- a/mm/rmap.c > +++ b/mm/rmap.c > @@ -1302,6 +1302,49 @@ void folio_add_new_anon_rmap(struct folio *folio, struct vm_area_struct *vma, > __page_set_anon_rmap(folio, &folio->page, vma, address, 1); > } > > +/** > + * folio_add_new_anon_rmap_range - Add mapping to a new anonymous potentially > + * large but definitely non-THP folio. > + * @folio: The folio to add the mapping to. > + * @vma: the vm area in which the mapping is added > + * @address: the user virtual address of the first page in the folio > + * > + * Like folio_add_new_anon_rmap() but must only be called for new *non-THP* > + * folios. Like folio_add_new_anon_rmap(), the inc-and-test is bypassed and the > + * folio does not have to be locked. All pages in the folio are individually > + * accounted. > + * > + * As the folio is new, it's assumed to be mapped exclusively by a single > + * process. > + */ > +void folio_add_new_anon_rmap_range(struct folio *folio, > + struct vm_area_struct *vma, unsigned long address) > +{ > + int i; > + int nr = folio_nr_pages(folio); > + struct page *page = &folio->page; > + > + VM_BUG_ON_VMA(address < vma->vm_start || > + address + (nr << PAGE_SHIFT) > vma->vm_end, vma); > + __folio_set_swapbacked(folio); > + > + if (folio_test_large(folio)) { > + /* increment count (starts at 0) */ > + atomic_set(&folio->_nr_pages_mapped, nr); > + } > + > + for (i = 0; i < nr; i++) { > + /* increment count (starts at -1) */ > + atomic_set(&page->_mapcount, 0); > + __page_set_anon_rmap(folio, page, vma, address, 1); > + page++; > + address += PAGE_SIZE; > + } > + > + __lruvec_stat_mod_folio(folio, NR_ANON_MAPPED, nr); It looks like you missed __page_set_anon_rmap() call here. Regards Yin, Fengwei > + > +} > + > /** > * page_add_file_rmap - add pte mapping to a file page > * @page: the page to add the mapping to > -- > 2.25.1 > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel