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 3D2C6C636CC for ; Fri, 3 Feb 2023 08:57:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B8E366B0073; Fri, 3 Feb 2023 03:57:49 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B3F2B6B0074; Fri, 3 Feb 2023 03:57:49 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 992396B0075; Fri, 3 Feb 2023 03:57:49 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 896686B0073 for ; Fri, 3 Feb 2023 03:57:49 -0500 (EST) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 63067141130 for ; Fri, 3 Feb 2023 08:57:49 +0000 (UTC) X-FDA: 80425377858.20.2A075E5 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by imf05.hostedemail.com (Postfix) with ESMTP id 6E618100011 for ; Fri, 3 Feb 2023 08:57:44 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=IiB+OiBc; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf05.hostedemail.com: domain of fengwei.yin@intel.com designates 134.134.136.126 as permitted sender) smtp.mailfrom=fengwei.yin@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=1675414666; 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=z1tBKHhK0fU8gKpIgTjVcoJZCogZVjZN59Wc2iddOFY=; b=3z8x9iUDjxmvMsijNCRAEp7PQGzDzDMnp6UqjFaJS+vvCh9/yi5xv6jEDnDR79Pjuz+qvA j3nrElYkqKBpKayqgJfKt+S8w0puVt2BbUQFQLjIE9jsls/xPGR/lGcWYTopTHi73UQN/L DK5pZJP62N4f7/1oF7ERvxnPNc1tjI0= ARC-Authentication-Results: i=2; imf05.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=IiB+OiBc; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf05.hostedemail.com: domain of fengwei.yin@intel.com designates 134.134.136.126 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1675414666; a=rsa-sha256; cv=fail; b=pMKKyRp7EptifKdSl5O0uJtpR7TlXY1YjW1XeQeefg9hwu+m79SOOTWTjRsNiY77UZIDaB WEon9DkpAUOj9cLGwweSNoyVBxrW89yWz93X/TVe5Qg15UsNaOrP3dncdpJKkrcva1pJWt lKEtVNVhmX2AmBHTZiqwozVQn1YKHFQ= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1675414665; x=1706950665; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=8faYu6mDZBgQtdFKq/Iwvx/LyXVh8azXcAGKwubf050=; b=IiB+OiBcVPGOK6B88SNZiVnPYA2kEucnFFtUmbVEp0WsNTa3z7Bq3Rr4 kJ3iRZaO6ST6t1cvmoXc6Q7nBeFKKVTmiEiZba6ldAHijm34b60JSQldm 73pY+54CN+79U2S+nz7FWwZUrpi+YZky42SiETmSGQpryQFCEoWjHYUKy G8xTfCzpedIFbm8uu3eGKqNZ0JCHoVYtnCRau03bA6JqMDdLbYzTq6w7I Oy+wBkIeNHFBfWs4NApkYsx4RpxhiV6GK5LHyAJ+Ba/cyGF2qNxL6jV7r yt/5R14u95IELEP+lD+EEJ0jLRCfSypl04XZ3BS5HIoC+PbO/oWTw2oE0 A==; X-IronPort-AV: E=McAfee;i="6500,9779,10609"; a="312353960" X-IronPort-AV: E=Sophos;i="5.97,269,1669104000"; d="scan'208";a="312353960" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Feb 2023 00:57:41 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10609"; a="729202962" X-IronPort-AV: E=Sophos;i="5.97,269,1669104000"; d="scan'208";a="729202962" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga008.fm.intel.com with ESMTP; 03 Feb 2023 00:57:41 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Fri, 3 Feb 2023 00:57:41 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Fri, 3 Feb 2023 00:57:40 -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.16 via Frontend Transport; Fri, 3 Feb 2023 00:57:40 -0800 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.171) 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.16; Fri, 3 Feb 2023 00:57:40 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RQIXUu/TxUZeeR8JPlkg9b8m5e5QK/QDbdJdC2gB1F7R73ALkx07djUGC1EDkFeB1gBnjkP6tR1T9MwIYpUliXth02czaeHocL/Ay+5h9AB1nIm5VPoZYPFs97bu2Vpth+AtXrZWR5xDC9t5eZP264T/kHGLEUA22LDW39YsWQKWmDNJxQJetx1BR0n12BU9Yzp/2kHuIT+48jqhDqMf3CD1q2QB2T4EkPRK//Pm2aw7eASavpCR9B7TPttdOpfdPHgvVFSZX75WMtfkyItANOvK0tmfxcPM6NuAwj1rE7/S27A3m2lzSWDLWndwGO6hAPH+cIRdmI1v9S5RxZw8bg== 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=z1tBKHhK0fU8gKpIgTjVcoJZCogZVjZN59Wc2iddOFY=; b=d0DjN/Ql1K8w6ZpNm+EgB4Yj6X5AsGrr7nD2uXNDH6mkN8XOZtGdqj86+C2i7s2MLbXNTbHS++yrDGUWZURr5hIqcu0IVul1Cs6JQLjG1r7FZSJg4Qkalhvpji9n+iqc8Kuw/4aUgLtrpblgcPTss88T/k2bGXqKsedG4F7OZg0bU5MqdurHgFp+TutaWtv5o9PpQonwzCnte01nT8YFFbwVKV8CrCGuOlivJfUQ5Vk290fvvGoONMScFho89bgBwsaUckj/1EQjEUKn0LeVxGcurFZ9ua1RmJFsYxBvVx71NbEiWlyVkerew3kSKOxiaw/nUR/l864QWpcygRop9w== 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 DS0PR11MB7803.namprd11.prod.outlook.com (2603:10b6:8:f5::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.25; Fri, 3 Feb 2023 08:57:33 +0000 Received: from CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::1531:707:dec4:68b4]) by CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::1531:707:dec4:68b4%4]) with mapi id 15.20.6064.027; Fri, 3 Feb 2023 08:57:33 +0000 Message-ID: Date: Fri, 3 Feb 2023 16:54:44 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: [RFC PATCH v2 4/5] mm: add do_set_pte_range() Content-Language: en-US To: Matthew Wilcox CC: , , , , References: <20230201081737.2330141-1-fengwei.yin@intel.com> <20230201081737.2330141-5-fengwei.yin@intel.com> From: Yin Fengwei In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SG2PR02CA0041.apcprd02.prod.outlook.com (2603:1096:3:18::29) To CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PR11MB4820:EE_|DS0PR11MB7803:EE_ X-MS-Office365-Filtering-Correlation-Id: e38a0c58-f634-4f81-346a-08db05c4b04a 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: 2SDZ0i+F/WiSVwky7H9uzaDdwYxBgMkVHSJNMiwMDm92syp6/fQdfz3IkPeuACEnhbgaPzOPtxKPxmcsd5FaH3LRgeVMSteYDShymwHfpGW0YKAQyJrs54dkH39o2tODlkaM2+iWEcO5kv47XszZuQyV+iojQLUUE6aMsjUm5YLQRyY6FW8eG2rnh6ZbtIOD45jMvKTLB44un7pCrhI3J+NXdLWo6qNUjZYtQN5JZVGzBXffrNFUhvBmFb+3iAG4lBG25NzW+bcineGxtpel4Y6kChCIGhGUCQPsRsqgWmSCQcudnm1RI2zo+qqPVG4mF0nBcaHq8TbmkTaQGWluXmq+1tasse9yTlPPr1TM0x6iBv6vxRsOGwOb8wr16MtmZFzbJVrIXT03aKLZvAHPPWg1245bUYSn8to3QOs8Nv5KzD89KQpfEyw8o1OXA5eqTxa3cC4eptQ9vm7afEmojRTd6Pr3wb4uHJ8n2e7aBhB6Zx8th5Uiv4Xs0nPknhkc2JvnZ7Jdeg7JpBuuOm32FVFodccSLCb1sr70k6THDJp8wSN1wnIUQXwozl8UvV1rJINqhEgHpaujag2S+xAk1WLt8LyYrVHhC5JKleesp0Sfnrh+A6hswrTDX9LSEyNKQ/BC/MNgtk+G1dEhlM/M0b5CrPKpGU4xnH7HYx8iBosbk3Z+Zl6rMo27iBeVZTtmNUxLUa96/IObP5UCUMvXNwUAHZdZRgAnsfHmZmmSHh8= 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)(366004)(396003)(346002)(39860400002)(136003)(376002)(451199018)(8676002)(478600001)(66556008)(6916009)(4326008)(6666004)(66476007)(66946007)(31696002)(53546011)(38100700002)(6486002)(316002)(82960400001)(2616005)(83380400001)(26005)(107886003)(186003)(86362001)(36756003)(6506007)(2906002)(31686004)(6512007)(5660300002)(8936002)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cHp1YmNLbU1aR2c0VTVhbHkzREdJemdWZDVTanlHVWl6ZFREbXpKOU5JQkVv?= =?utf-8?B?Q2tXL0Q3TjFMRktRK1FwcDRGaXRla0JPVUtscE1UdDhxdEZCYjRJV2Z6bFFP?= =?utf-8?B?SFhjL0tXWGxoNDk4QlROYTkvbFpnVWRsNkFGVkZ2cFVvallxdS9SUEJ4K0Z2?= =?utf-8?B?cFRLaEp2VXk5N2RwUnN0eUhFVjA5TEw5SkxzNDJtbWtSNzBqc09zeGVBMXI4?= =?utf-8?B?cVdWS3ZzMG5tcDFpL1hiOWpZTkQvOU5Sanh2QlBaQ0lsS0l6VTN4bUVONVBr?= =?utf-8?B?dnJsVjMrbWVyR3pMNnc5TjM2ZDEwTVdLdmdlK0J5Y1BtTFhsWlJpOG0vMUR4?= =?utf-8?B?MlN0STVJamJ2M01IWWRIa0ZqNlJzNC9oNTJXT0hWenlMR2VTTkR0dTkyb3Rr?= =?utf-8?B?Rk95SkhtUU0yZ2t5K1Z4c0ltRU52aXoxWVUvWncrZ2pDaGF0MmFrL0RVNC9v?= =?utf-8?B?Wi81Uk93Zm9xcnQ2akRONFBJQWh0b1orekhGbGovN2N3OXhFKytIZ01jcFFi?= =?utf-8?B?YUpJSVpzajR2bGFNS2ZSekxTNE1jRC9NVFNrSW84R3lFT2hZOTdCQytzYWpV?= =?utf-8?B?RE5JTXZrQWdxdlg1RkR5ZVBMR1BBVzQzNjB6bmxSRnUwd2ttankxVlExZUZm?= =?utf-8?B?MDJKV2d0QS9JS2N6QXRkbDhscWVqbUZ5UGJVYnZpQ2xFMmttMWNybTVMRGln?= =?utf-8?B?a1ltY0U0QkxwdHZqVGFJd09jbTFDRjF3RjR1UmFkM3JEeW1mcTFva2lGK1Ra?= =?utf-8?B?ZnQzVzV3ME9IY3ZIclJsWkMwZVkybkd2L0ZJTFdJTzJ3L1BZL004aVFkZ2RT?= =?utf-8?B?TGZtaTlBSkJ5bmxrS2NqVHVnRFB1bnExdUhYTVZhanhqSy9wa3lqb0ZSalhV?= =?utf-8?B?UCsrSnhBb3N4aEthOEk2R0VRZ240a3hTNFVwc2RtMitqUTNwRVJCb1FJYUpv?= =?utf-8?B?TytwNXZHZjlFZGpVUFQvUHd2RGZLbjlqSVBiVGRMSEdsQlg2QklUZTBzRnpT?= =?utf-8?B?SitZSUlpODZqNFUyQitMZXVUVGNLMWxMK2ovRGRFQ2pMTjk2MTdmb1V2THly?= =?utf-8?B?cTdHZkxqTXhPREJyRnJ4NjFjdmlVVE5rWkhYdG1vQWNwWlpTbTMrbU1LYXV3?= =?utf-8?B?OTRzdFFXaWV1anJpNTZ5LzB5UDNBNEhOaFJTeU9GVFJwWGxLVHlwalpvSTB3?= =?utf-8?B?Um1EMkdDdzl4ZU5paXN0SDdQQXRjQU5mTEErK3Z4LzZtSnBrTVU5Q2FOT2FO?= =?utf-8?B?OCt1RjBiZkk2ZThrNkhyenJhQmNLeGhMUWp1Q2g3SzhLWlFVaGJ0Nzltc1hw?= =?utf-8?B?clUxdmNpMlFjd1ZldTNKemY1QmQ4NnFwYk03eGIyK3lGWHpqQ2pNc0E0SVpY?= =?utf-8?B?UE9xaUxqN0tUOHpBaDM4ZnlRYXlXZWpDR2poMnY4VSsvd0tsUVVPTTVXeGhY?= =?utf-8?B?QnF0NFBMRXIxN2k3MER2aDJTWlI3ZTdIcHZ1cm1oM3Z5TVZ6UmNMWmNQa3lt?= =?utf-8?B?Zlp2UmRpQVNGU1VycFdNQUZYZWFJbkY0ZlRWWk9QT1RkYmVxbDN3YXI0YU03?= =?utf-8?B?L292QWJwWjVHbUxLNm5QQjVwcXFiMTdJYUJJOGwyYm1nQ0IyVzNJa1Z0RkR1?= =?utf-8?B?WlBQTzg2WVpqWEYxVTYwRUcwaEpFSndJTjB0d2hjUzhyaklTV1BhK2pzWG9t?= =?utf-8?B?WkRlV3ZVNHpzWHVmUGFIc0FmekJBK3lPNDAvbGxMcmZCbEwvUlhhQnZQQnh3?= =?utf-8?B?WmJqTzVDVjYyaGVORWFvalg3M2N3clE2OHFqM25iN3hGWHVnTTM0TGxhL29i?= =?utf-8?B?a0tjL1RkSDNBaXJtK09FcWtJOExhZW4vZHhJTWU0Rnp2cXhUcjJZZXcwRHFy?= =?utf-8?B?M292bHpzS2ttNmU1a2x0bXArOGR2L0FaVjhic1ByZHZMNGhDZWt6Y1ZNL1Zt?= =?utf-8?B?Z21aOTB4b1FkR3FYZ3FySEpQekxPQXAzclVzM0lDbWJ0eDRiMnhYUlFVVkJl?= =?utf-8?B?YzQ4S3orK0lTaXJKeHEvTHhtRXlnNHJHZytoT25kOVdJazcvWVp5K2xhYjdB?= =?utf-8?B?OGpTKzNtcWRqNTdHYkRMQ3NaekNHaXByN0FZZ2MvVlZ1SVZjSWhDQW14TnRK?= =?utf-8?B?ZGtaT3JZNEM3UkdTdlhjdDNHZ2pjR1M4VE5zOWZhaldaYmd0K0FmZTIvaXR3?= =?utf-8?B?N3c9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: e38a0c58-f634-4f81-346a-08db05c4b04a X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Feb 2023 08:57:33.6188 (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: JdOtMcCFHk8za/OV3k2aWcAzVnA/iWq7+ZJgaTxYe7T7yXxpLGGKQSeQehj6KrDFIGoLbAKRbHIh59J8hb3vIg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR11MB7803 X-OriginatorOrg: intel.com X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 6E618100011 X-Stat-Signature: q8skqh8bywbm1yb7aoq1kmjgcsnn653u X-HE-Tag: 1675414664-368559 X-HE-Meta: U2FsdGVkX1+gZ5uHuhiMUYAJeqML3dqOKcxr2vYKEyVbOp0T2w8pCmT/l4kw3I36EVYAx/tFmLX3dVQntq192h3ZTGA/IBEHRdwXY+uUWLFwwbAHfN5bMSPSOQ+S/PCP2b6X12dpk9TFbBHZc4vcABLFnNPzT/hIjPxTklwclRFNU0jZaqv3EJUcR1YvUeJrXuoWcAo6RphW60dE2BJcU2uYcHRe+nESYp3DDF03+Zf/PPLWIX0l+YeNE3qWwe2zGH2kQ7QsQnjSx8zZCzM3TgKMHMogolgTWXyJ6fZAqLPfzVtHp11xEYw9SiBnoJyhQXVAtmMuZYfO6kpDr/qht8qbeGXixw+o4rV8zKfiB2tfd4p81TtXsDd0cVUdu9XZS5IkY0X1L6TCs1fRnAfCe/K+OH2N/KVXAAx11LH2aaAsROrNXGFBn3X1tRDoKVn1w0zCkjnR7kUzL1eWP19ZkajVPQxhWhach/Ep+FCmAGpQNi9TqIXqZi4sde3NOBKWQqZO/PlXqvBLla9TW1NShSihS533VFVv/3bFKXJz5S4esv28jECTU+ZJxbo+1TPd6iUCc7FCj8gb6KUA1qS5zNZVKvXdISzsBwGbEFg7eT9k6Sdd7dokcZivajHxUGgSAwhFAYrwPMm26ZoapiXdSXAWIfM9VV3e943b46RT+1TwAvubtxDB0kfqFbCh/7/iuh9XgOsjlI/ZCRjikcZ+O8Y5NXj1bUikfJG5i3z8/A4M1BC5SDtZfx9haQJzGvbMVPQdqP89nSUyb2H1hwjt/2lGxeBBEBodhtaeHa7z06fAb/Zngy8olEQJ3ZThepEeFZduZXiYlbHwZ3+8hev8GUU9VTjuvCHTUXbjNTIQLGRXNU0Ys1qW3OYONFTkYddjG51YkhYE+6hRD/LYCFlljPK6ldtjaRCFAzLfRsLrCvcbfX/Xby9r1zV8F11/rToVaka7ZQoDaceEtai3OSb 9FImEsPr yxR/QxKAcYktVxz0u1DNCbn4C5cYvFgTPnZT9kVfMDdeWQhdPDzHvig62aUKlPwjC7GYAMf9rXGieDh5dc1lQ1enVZtHKHq/fhH4xxHv5ZCXbJ3mNMyTD2NK0rw96ejGi/skGtJ4ZiaNEz3F2qFagYXAark1TdatwNkVQf87tR6Vq7OfaOX+R5N7TBU+uDuZ+uo0vEbnHBqneswT5gTIfTmAuUUSZAbQRX5BXxn8waYWEMryMZRULq3WBnBRtX21O1kGgBsI2USzmBKVfX9AYLS2ClKZ+1rUfm/BlrIOqmPVdmdQU+oqUTUsN57EcaKoEkwhnJklRgiHM1U/lrn790F4jmA== 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 2/2/23 01:38, Matthew Wilcox wrote: > On Wed, Feb 01, 2023 at 04:17:36PM +0800, Yin Fengwei wrote: >> do_set_pte_range() allows to setup page table entries for a >> specific range. It calls page_add_file_rmap_range() to take >> advantage of batched rmap update for large folio. > > How about something more like this? Yes, we need to define > flush_icache_pages() and PTE_STRIDE. > > (we could also do for (i = 0; i < nr; i++) flush_icache_page(...) but > given that some architectures already implement flush_icache_range(), > I think they may appreciate being given one large range to flush) For flush_icache_range() and flush_icache_page(), the implementation on riscv could be exception. According to arch/riscv/include/asm/cacheflush.h #define flush_icache_range(start, end) flush_icache_all() There is no definition for flush_icache_page(). I suppose flush_icache_page() does nothing on riscv. Using flush_icache_range() may not be good choice for riscv. Regards Yin, Fengwei > > +++ b/mm/memory.c > @@ -4277,15 +4277,19 @@ vm_fault_t do_set_pmd(struct vm_fault *vmf, struct page > *page) > } > #endif > > -void do_set_pte(struct vm_fault *vmf, struct page *page, unsigned long addr) > +void do_set_pte_range(struct vm_fault *vmf, struct folio *folio, > + unsigned int start, unsigned int nr, > + unsigned long addr) > { > + struct page *page = folio_page(page, start); > struct vm_area_struct *vma = vmf->vma; > bool uffd_wp = pte_marker_uffd_wp(vmf->orig_pte); > bool write = vmf->flags & FAULT_FLAG_WRITE; > bool prefault = vmf->address != addr; > pte_t entry; > + unsigned int i; > > - flush_icache_page(vma, page); > + flush_icache_pages(vma, page, nr); > entry = mk_pte(page, vma->vm_page_prot); > > if (prefault && arch_wants_old_prefaulted_pte()) > @@ -4299,14 +4303,23 @@ void do_set_pte(struct vm_fault *vmf, struct page *page, unsigned long addr) > entry = pte_mkuffd_wp(pte_wrprotect(entry)); > /* copy-on-write page */ > if (write && !(vma->vm_flags & VM_SHARED)) { > - inc_mm_counter(vma->vm_mm, MM_ANONPAGES); > - page_add_new_anon_rmap(page, vma, addr); > - lru_cache_add_inactive_or_unevictable(page, vma); > + add_mm_counter(vma->vm_mm, MM_ANONPAGES, nr); > + for (i = 0; i < nr; i++) { > + page_add_new_anon_rmap(page + i, vma, addr); > + lru_cache_add_inactive_or_unevictable(page + i, vma); > + } > } else { > - inc_mm_counter(vma->vm_mm, mm_counter_file(page)); > - page_add_file_rmap(page, vma, false); > + add_mm_counter(vma->vm_mm, mm_counter_file(page), nr); > + folio_add_file_rmap(folio, start, n, vma); > + } > + > + for (i = 0; i < nr; i++) { > + set_pte_at(vma->vm_mm, addr, vmf->pte + i, entry); > + /* no need to invalidate: a not-present page won't be cached */ > + update_mmu_cache(vma, addr, vmf->pte + i); > + addr += PAGE_SIZE; > + entry += PTE_STRIDE; > } > - set_pte_at(vma->vm_mm, addr, vmf->pte, entry); > } > > static bool vmf_pte_changed(struct vm_fault *vmf) >