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 08B6CC05027 for ; Thu, 2 Feb 2023 03:18:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 87C386B0073; Wed, 1 Feb 2023 22:18:43 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 82C376B0075; Wed, 1 Feb 2023 22:18:43 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6A6D76B0078; Wed, 1 Feb 2023 22:18:43 -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 5B5786B0073 for ; Wed, 1 Feb 2023 22:18:43 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 29D271C62F6 for ; Thu, 2 Feb 2023 03:18:43 +0000 (UTC) X-FDA: 80420894526.13.373E744 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by imf19.hostedemail.com (Postfix) with ESMTP id 421F51A000F for ; Thu, 2 Feb 2023 03:18:39 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=b4M5APl0; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf19.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=1675307919; 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=j4/e/6OsyNovbTjDiBFc3w5//nSCF6S8fAF420G/XLc=; b=tBPtgmG65r8lFUL9D1/Em3CohPFCAbW1iTKf9zj22GyDz0rpAhdnKjWcaLnAl/kskwcsfn j0u7tkCFBdP9I/OmEokm4hQiKTYSpSPw25qfPJFt34mi658+h7Ge+/sxMnn+4sKCJlZd40 S2G96dwRGHcXmwRyD+BFWdm8ilbP5tM= ARC-Authentication-Results: i=2; imf19.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=b4M5APl0; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf19.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-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1675307919; a=rsa-sha256; cv=fail; b=5Kb7oaNKr0q1fcTpZM2VqSHIqFl7ljDHdURSAzJAZQ6m1B3RBIFJUmP0Ke1+fzVwVp88lI HBS0WX+BCxhGi/VeLFAiOb2kkPQIPQM/Oaol607OABoHpDzH0H5NaBqhWsoBV8SlNaJpJ0 4k1E3k8VfaoYtHO5QOTVh6HiOjf8RDI= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1675307919; x=1706843919; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=1UZTYV4oWwcYdMgbYktiRkKzzbs7hpfB62w8/fALmMQ=; b=b4M5APl0G5QjOa4zHxblzG3HYy8EzOLfwYF7GC0GGK6AaQfFasMPqbBa wRS5qzKLgvbAaHTCPNcUigTcY7vUNmBZlM0xHjoQ0KN3YAasWrcwcQbhy GsA+PQzF3+fW27Gb6FXXGZKbGIHc5ysAm4Tgg3v+FF2oits8uaB7oLrUL 7on0Es+uomKioNF2oAS1sGizOS9ZaqD8B6437UWQ14XuAulCbWJptHLBt 2IeLiw7q3zgrFvg1dM8EkKFma5jWI2ctJE4Je8Y8ENWSq7VFhSUsujhx+ /V+uCqi4JZO7HlZhrYuOLpW4NYm5fM4aaH7uPMXmKXjYmp20uoNz+2+hK A==; X-IronPort-AV: E=McAfee;i="6500,9779,10608"; a="392919334" X-IronPort-AV: E=Sophos;i="5.97,266,1669104000"; d="scan'208";a="392919334" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Feb 2023 19:18:37 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10608"; a="910556651" X-IronPort-AV: E=Sophos;i="5.97,266,1669104000"; d="scan'208";a="910556651" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga006.fm.intel.com with ESMTP; 01 Feb 2023 19:18:37 -0800 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.16; Wed, 1 Feb 2023 19:18:36 -0800 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.16 via Frontend Transport; Wed, 1 Feb 2023 19:18:36 -0800 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.102) 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; Wed, 1 Feb 2023 19:18:36 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DWpqEwn9HfCdpLEZKKTyowaJPys31j86vVSyEpC8YA0o/gxYjbRp7Nkk1KaKTz3g4Lcj/oZKm4cPTxzVs76BlCvMz49MLAim1JMMrrt6V+uN0vODxa2dwhx33/QbJamcqxbWmg1RPQzzp/m2sznTVvpS2I/EEzJk29EHERSxBNlvvRVW891UNx94sHPTCT0/JjMVsHmy4EXXfnwan2wGuS5ogyhNoFJvotC8UhGv6OsgYNFDpyKNIwfxE7awACXQR6znAZI+o4melNdObQaUTdujgl6M8oBY8FJKw6eIA909KC5wk/vOL8t8XCHWOZ6WkTB48i02SOpt2gDTiHO8Xg== 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=j4/e/6OsyNovbTjDiBFc3w5//nSCF6S8fAF420G/XLc=; b=FRcfmX02OjPuWBeWOrVeXc4ldMQPFTxSR1mnBLzKupEDvFHGNcn00aG3BarnakEYihOyKODioVhnIKIWy/fWqqz4wKlI9dAKfhhgXxLIop6oskcNc1VIlffNfunl39aHBHc/bTfcZL0sGIj+bGa55PMJznl14eiy3EecR0+kPoyRvF2ku4AJOFDL9u5VqhP9wv/kXcL+3O3eOqAycf13B6+YuenBomQ5h2CWe7Zo+T3+x9UmWns7w3aAGS4V0qpj+QgMZTDq5iQzglQ30Ned/sqAQv9ZVHQmGz/y1JAYZpcCRJBcRWvcoVmZcF2d1sZp8jUEvZQfcuT7y96hBygKog== 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 PH0PR11MB4869.namprd11.prod.outlook.com (2603:10b6:510:41::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.27; Thu, 2 Feb 2023 03:18:34 +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; Thu, 2 Feb 2023 03:18:34 +0000 Message-ID: <1025f980-296e-3a3a-3000-b82a9c9a49c7@intel.com> Date: Thu, 2 Feb 2023 11:18:24 +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 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" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SG2PR04CA0164.apcprd04.prod.outlook.com (2603:1096:4::26) To CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PR11MB4820:EE_|PH0PR11MB4869:EE_ X-MS-Office365-Filtering-Correlation-Id: 4af3e1af-e256-4126-9d32-08db04cc2aea 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: 5q1CAhLsgpr4NGsMyTWISB0UxUOLUY/JBrXmnzCsffEY9aXbZIG0CPp+58cTKW8eakdRaI9k46WasvfFbmDHkluWFTz4r7Rca/3CiFV8OYkRB1sdVIfRrxXwxZJg3r80fsFt9ZBSojuApnRLoGrWyFovoYG26WJ9VOcnGWca295DZ79wPddzfyQpr0XTvPEr7Vs9HJ+/BHCbatBTRwv7TR4VnxscCVJxE9LGUSqflNhX7TLdz3fYP9pswW7kYuAGtvBXLLsGsRK1jIBRBTX0eLfDtffU284nEa09fduRC29NlY3OTXoo+uAvWhgFv+gdQ4KbYS2r0HDf5Bep+m+9aCtS66Gjw2egjepgWt0wxX0uAvXEfx+McZRGN/BlKLD9n1ac2v/Wg16HpriCspuixoUxQDtyPbuUzAoyHejp3Zr8SByihY9Jn+VNpDfMsrQ/58fLLyypiqxjr8lqcb/AYE1R4h75h3ujTbD76/dpDRrqYr38j4W1o8UeZbk9BH+cgrNH/83jtdICwy/uSQlXYHJ5365gqHcKb8ZhGc2wvZ7oRdMXA60xd4AkbUwaockdweEa8AAJsoUNTFKSzUl0kp9K38fpHhIP4aWujfVYU8AfN4D8Q9m51dWDBDXi5HhdhLGv+W0OAEA82DUKMZRNGuUulaprlIF4rCCy796DQyHiZncF4wBeY4L/CCRC2M47a6j1OAkBdch00kT2ajpWAWQZg7Y4/lEa/X4Yul21Ixw= 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)(136003)(366004)(39860400002)(396003)(346002)(376002)(451199018)(478600001)(6486002)(316002)(186003)(26005)(6512007)(36756003)(53546011)(6506007)(107886003)(6666004)(86362001)(5660300002)(2906002)(31696002)(4326008)(66946007)(6916009)(66476007)(66556008)(8676002)(41300700001)(8936002)(2616005)(83380400001)(38100700002)(82960400001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UXZhVE1TeUpGYStPdFFxNUhqU3lsNDFiYjE4cVZRbzUzL0JVR0dPTldTM08z?= =?utf-8?B?TTR0VUttMUpUZVpINmJWQ1J2ZmdjSVBTQmIxWXJCUHQyQlpLak5FT2ZISk85?= =?utf-8?B?VDEyZlEwVHI5TGYyWlpscjJGNnZTMnV4eXUvTGlRUk11NWE4QVptSS9xbCto?= =?utf-8?B?VlpHanppc1dSZW1NOSs1azk0NExOWnN6Y1NwMng0QkMyYklOc2FHYjFmbXJq?= =?utf-8?B?ODBiaFBsazM5TUxoWWRubzI0S0h2RW1NSXhiUm1SSzg1dVBQdThTQks2QTRU?= =?utf-8?B?ZVpOSnJKL29iUkFoQlV4ZlpybURoOEJibzVhTzhPelNaZGtmVzQ5dHhSWUhX?= =?utf-8?B?MllkT1U0WEJKVFd6c2QwcUIxazl5YWhkQUduaWZIRTdJV2hkeDhIMzh4dE4y?= =?utf-8?B?d2dUeEM3d2MyTjM2Smd2UGxxRkV2ZWdFK0tPM2lBM1JINzhUUXNTM3k0c0xq?= =?utf-8?B?djF1M2ptSVQyMGZCZ1krRTZFYUZ5REYyeTNIUWlqMnZtSXNtS1pGUCsxV0x2?= =?utf-8?B?dzRLQWFWbi9mQ2J3OWtnNzhTU1RldlY3VDFyWkN5WnIxYWZhRjR4WXlHYklq?= =?utf-8?B?em5KRStIV0tlVncwR3pVU0UvNkdXbnNKNThaWTVnd3FHR2JUQW01L2FaYlVO?= =?utf-8?B?KzZhSUdzZFJ1MXpxRTY0eGh5a3puTDB1dmFLa1liVk52bjNyTXQvdGtCNEFz?= =?utf-8?B?Y1ZWY2F5eEpaeE5UUkFUZ243U2RRK1JaUCtQdVllanVaL1VJQnNFdnZva1Y4?= =?utf-8?B?bDlaenJTZmY1SHUzdG9uMXdmdGlWVWx5TzBjcWZYYlpVcmMyMmo3dVFIQW1N?= =?utf-8?B?Y0RVcXh4UVhURjc4WkdjRTE2RnNuSkUxZEFpeStMZE1adUJTQ1pTeFlRbnVG?= =?utf-8?B?RWlmU21XZVk3SDNXZ0lpSkIwTXhFbUZuMktuZ1B5cUFNbEkvZmxSSVJhVWUy?= =?utf-8?B?YTd2dnNITUZVekI0bXNHdFZVMzJhVUxrY3F5V2tSSDdxWnE4OXRpajhrM2E5?= =?utf-8?B?K25iR0ZBWm1PSW9HNStkL3FpT3M0R0Z1cS95bkRwbi9lUm5uSjVVeU1oUXRN?= =?utf-8?B?OGd4aG83VGpOY00xcVlFZHVNeC8xemNiTzVGZjBEWk83cnVSSFlpZVlUTVAw?= =?utf-8?B?ZmNhb1Y0cU5PWkY5QXdyaHJjMWh5YTlsK0EwVEsyc0pjU0xYcGdFTUdRUEFT?= =?utf-8?B?a2phUEk3NUJLQ0xtb0NLclFXalNCZVpMRDdySEU4bks3dWNNc3YvZnRBWTFD?= =?utf-8?B?WWQ0RXVJckQ4emlLeXNua3JIQUZxcS9zWFdOUzMxdGNYTWovZkZleUd6VVF3?= =?utf-8?B?akY4dTd4Wlk2dGdUb1JnRG1TRzFVSXRYZE5ic2lWbFJlWlY5QlB5TTlWMHlj?= =?utf-8?B?ZWRYczJ6aDU4VWhPZS9xZEdvMFh4Mi83Z1UrRVJQakRCYjVsUnVLVEtMZHFi?= =?utf-8?B?Y2t0clFvalVSQTdBU2FOaGdvVU5SL2FEK3NBN3FVeVRTMTNIQ3huNTRyNkFp?= =?utf-8?B?WjROZ1pvblhXVnJpa3E4MXFxUGZ4cVlOenNKZmFzbnFaSzltL0NQSmVPdmJ6?= =?utf-8?B?K283ZGJWMWxNak5PZzdhdndhSGJMTU80L0tta0doWHBkNUtaZUw1bEI3UnVo?= =?utf-8?B?czRhLzQzSytXVjBkRkRlQUNIcCtud2tkSm42dG92bEVkUGIyZ0lJK2FGMTEz?= =?utf-8?B?ZTB1cyswRjJDVlg1UzRiNXNMWThPeTFFU3JvN0FzbXRCTktrU2J5VGFtdWNx?= =?utf-8?B?Vjl3MGdaaFBac2dmVUliQzVBVFJpUFJnanRrNG5IeTJOZFFveGI0Sk83THlJ?= =?utf-8?B?aUR3WExlMC9ZbTVoenhlNU5FQzgzSUVlK3AxRzVBYiszYzZPM01RR0JReEha?= =?utf-8?B?blVua1pZSnFjMHlJZFBMODREY3IwZ3Nhd052WE9JMnRCZ2NWN2RaRGVobXls?= =?utf-8?B?Wk1LVjBZMEZlSC9oazIrblVZeFlodWNlN0FzSDdjNE9wZ3pvREN2WnlrMWNS?= =?utf-8?B?TjQ2algvVlZrZTBaZFJmWVlOcDFOQmtKQmhHK2NxSGEyUnJXRTh0cDQvN3hj?= =?utf-8?B?ZXNSa1h1T2Z2TTYwZWEvdGtHT0JSbTh3alVXckh0U1dGNndwNDVKdjR4RmxH?= =?utf-8?B?dHB3RmV3Z1VVeUVxZHBMNDd3QVJlb2hRZWVsMGlKV1ZuelhsdGVrV0swRjJ2?= =?utf-8?B?ZHc9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 4af3e1af-e256-4126-9d32-08db04cc2aea X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Feb 2023 03:18:34.6508 (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: oF2LtwpYNzDBwHuREn5U9b9zLtqJhXGy+zPv6ZMfVIcCraevFj3e4uiyO0yq7ZO+YVY2NEH1z43iDShLEQEhbQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4869 X-OriginatorOrg: intel.com X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 421F51A000F X-Stat-Signature: pxxo47bhzzui9zcpomh4hosyyk4ssiub X-Rspam-User: X-HE-Tag: 1675307919-789640 X-HE-Meta: U2FsdGVkX18QWjHFKcGqxFl8+pfoAjqGFmpISwqTAZ03AIRUGJzKFH43WZmg5rZUrshMP5dFwAm2rRjsmqlPlh13WVyTnLlyOpnYH/+DW6Ke4UVYBsCGB3A3E+8H6cjA9AjrLe8dKNQLT64O/HdQiS/IMVtvqemiT9rXGu0UQJsm0kBXEYND/vnUHlbrx9hIWay1aMHoO09oz4+SzxdaH5AA8R5MHrl4TaCaaD1SGvfwbRRkdd/cG9jhz23IhdWBXTfeVKByWmtypI1Al7/JejyVgweBYGg1QUQ9oq/32AIoroPfRL9uBlKHKkmUmzO47v8dGewJNnwf+N5LfStjTpxP//rQoC0LrflAPMwwaFwK10FtFb3T0/sYOVqRVDwvxy4CVEralzqHT7wtctQgcemDRQH+ov9rVsxtUFeCf7GnLx1a157hLD526g0Nq4SiJKPtFlQhqxMYC/1jqVVopPurxuFTdujahYrqWpHtXqAaQMGRXHPMOsG8LN8LTleVlSBZc0q+9tfxEHJUChTGRhoORRRJPt/Oxsj5lElk5VheYxqI5zMnRu66GkJfdxJQEa18Xn/xwhZTYlYt0sH2M7bipFuG3mSrF+R8v7Luu/l2IKxSanr0qSXv356YUTjPMd08PMAIWNK5ltkccnY6UQYH2m6zF/vj0Z6IxGtdUsGbsDyjRnAd0Sd4I25McPpFSu0efNSe/Cpk2SMSG0lKdxLvrSt6iHOJTKtzd0n8HGQI82Gzk/KVslDEVO/nZcSWzfh/WRSMGcvecA+dMGuvHzVVTJslSScuCgqCvRQS4zBTAydPgkv0jHfFYIG/28c8C0wpsV25997bRi1SKjxHNB477PYZyB5oKRUFWsP9kwkW4sJ4j14fnQZ7qPP72suYoh0Vo2X0kpKViPjbgdqt8nM8Je40jVVU11kcx05tcuqOzDxaWBMPg3y2SHmJ+4ObsAbijlKvfFaGOIIC55H Us5zZEHD UwS2TNKwk2nC3p0AkrkwFz26lCmxPjBN1hhxs5zEVxyrj/eI0xK4JHRQcIgcBLHM19j8qvA5ODMln+1XUlWN0Hndk7yUMPw6uF4OrdaKptNW/kD128RxreR33nBcm2hy9B7n2R3ACBIWFNb6DdmuVl3RLERSWOEEFk4rPyhcWgbdrjnTqtKwULmAG7ybl4pzEqDLQ/RqQ22PybTV0qq3OCw5+dN5YQbhm2sO6WEu1+5Bg9Ex3Lfbt8ZPaILtTk4ZLj6O+Kla0iQmgC/nY0cZerQQxciPotr4sgtSK18Fn7wCsQ2MbxrHsNTjO5gKqKPiSPJ3Q3mvuoD9PaOSZ9XpDPMZo/w== 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/2023 1:38 AM, 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. Yes. This could remove more duplicated operations here. Let me try to add flush_icache_pages() in next version. But for pte_next(), it needs be added to handle all architectures. I suppose it will take long journey to make it. What about a followup patch for pte_next()? Regards Yin, Fengwei > > (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) > > +++ 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) >