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 66B9CC5AD49 for ; Wed, 28 May 2025 18:15:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D5A3C6B007B; Wed, 28 May 2025 14:15:14 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D0AC06B0082; Wed, 28 May 2025 14:15:14 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BD3566B0083; Wed, 28 May 2025 14:15:14 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 9D8FE6B007B for ; Wed, 28 May 2025 14:15:14 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 3C568811A8 for ; Wed, 28 May 2025 18:15:14 +0000 (UTC) X-FDA: 83493118548.09.558E01E Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2049.outbound.protection.outlook.com [40.107.220.49]) by imf08.hostedemail.com (Postfix) with ESMTP id 50D42160002 for ; Wed, 28 May 2025 18:15:11 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=J0aIxp1D; spf=pass (imf08.hostedemail.com: domain of jgg@nvidia.com designates 40.107.220.49 as permitted sender) smtp.mailfrom=jgg@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748456111; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=e1vFD51aS8AmOceSqRiqALSt0yY6TK6n7OO3b3WB/Io=; b=QnDAlV0jSvCDv5kXVuxjBYAuKL5JpgGEMsETT/vxg76h1h6o3vE2JurGkNl2FAeyP4XX86 7FBz2dLLdi0UvN8QGxAqcgYpyWj6yodWxxADekpMAQtPU5dfqgxYkf2Y2M/Io9+ybzTODQ 60jpcSTGugq2TTytFdrK2TyGCh+lcAA= ARC-Authentication-Results: i=2; imf08.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=J0aIxp1D; spf=pass (imf08.hostedemail.com: domain of jgg@nvidia.com designates 40.107.220.49 as permitted sender) smtp.mailfrom=jgg@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1748456111; a=rsa-sha256; cv=pass; b=ei/4Bvo60OosXacx7z7579QQjGQfy8sWxDLpLQ+0jFO6qwbnV5NPklzPgsG3XnGvbAk23o 6LrSxFce3r73E0sJNXxHVcuyRPvC6uOzI88EfWNRyU1rB0E4w1bjCjstsCMblGdjy85h42 dCmXdnl9QXRWFRId7IA/d1FGxZ3iMBQ= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TZU4SykUi22DN1wAO9d/CxzNXcsMwFMz5ijtZmanvuEjfDdQwlfnfuVCewJ8o+2DLFGZdm/JjaKsPALctOvy+kZbggTdVZMJYS6Ay+77RAXbops0Lf3xyTKtVzI1QpcdNiMENl44ExNr7XLb118WstQKMkA3GcS9LKVfUvTGBuH1YGz/tCmKNWlxzucbNELCny3wAgFYvvO8ZGOhtzaLQ7aDUL0I+S7x4xKuAiMLH2Dw0a+JzjMVrIIAK+FqNHAthg0Y8dpVJc3gef3/An1Y2yv/lZIslE03li0Y0SvdNPY8QevrVVM8Uoa6Bc8n2ZqWotvatpnswE69wOf+1eJhlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=e1vFD51aS8AmOceSqRiqALSt0yY6TK6n7OO3b3WB/Io=; b=oigBrJw1CyT9Pym4G+fSMnKpsOV0iKw4z3uAPc0bMLrQKcP1jiiRphvLFWTutCNRxeDovu4vJAPayGPadzJ3zgxh9aIwHPGGkx5mj/1YMJPzNgHhNWoYDhw3Xng+mfsuiUj0tNA4V4oWBt1eIthD9uwu+f9ZyVIJwb+iCUn3e6PiNu/nppmE3bn6RiE6L4/apaysq3XTk1yTmvOXC/8N3KpXmAXRcCP8jmI5ohCDsE4b9TsoMpBUA/rvOGkp3vyoty7A2PgR9ZOWCTihrwR6s3brj8uMlOyvrkwdmJ+K98imWNaab/HJyIi9/ov0x9Tgde3qL6lbCbQiaHrTLmPKFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=e1vFD51aS8AmOceSqRiqALSt0yY6TK6n7OO3b3WB/Io=; b=J0aIxp1DGbzy0h+oxneoBUu/YaJWD1yXzzHmO27cblFo50KVgRsPHCObau4ZHQD/kPgW3bxAnci76iXTcl1MNzOxE6uyL68ohvdy9VQtx5tWvYIPhEKa0Pi4l2NOCVhcmGoPgI9BKZkwROI+UJcI/CAQ8eNSW86KfrZJpNk+d2jkuRXI8YytQOaD6k33gczTc1/U1whSjddThRao99YydVHAVRPcwZshv0a78mp5+Bg3TLDNbQs9fKx4Z3NuQ2tWszO5tBV3CvFVl0nTw7u2S7HvPhmpfsoPJzDWUhEL93jQ5ZVk1THxTElY/f2BN1kebyQIDgyyFUcJoNPh8Y7Ykw== Received: from CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) by PH8PR12MB6771.namprd12.prod.outlook.com (2603:10b6:510:1c6::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8722.33; Wed, 28 May 2025 18:15:07 +0000 Received: from CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732]) by CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732%6]) with mapi id 15.20.8769.022; Wed, 28 May 2025 18:15:07 +0000 Date: Wed, 28 May 2025 15:15:06 -0300 From: Jason Gunthorpe To: David Hildenbrand Cc: Peter Xu , Jinjiang Tu , akpm@linux-foundation.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com, mhocko@suse.com, linux-mm@kvack.org, wangkefeng.wang@huawei.com Subject: Re: [PATCH] mm: fix COW mapping handing in generic_access_phys Message-ID: <20250528181506.GA192531@nvidia.com> References: <5b9f5952-9979-426f-857a-dffa9b7963af@redhat.com> <20250528162915.GR61950@nvidia.com> <8b307f83-6a16-46c1-b71b-64af9ca0f592@redhat.com> <20250528174754.GA61950@nvidia.com> <84a19161-765d-4aba-b42f-5fdd8c986bdf@redhat.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <84a19161-765d-4aba-b42f-5fdd8c986bdf@redhat.com> X-ClientProxiedBy: BL1P223CA0004.NAMP223.PROD.OUTLOOK.COM (2603:10b6:208:2c4::9) To CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR12MB8659:EE_|PH8PR12MB6771:EE_ X-MS-Office365-Filtering-Correlation-Id: f4e4c9dc-1052-4be8-2b29-08dd9e139391 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016|7416014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?81U5ri4z2IehqhUYjARv5UB0dlE4JDkY7Ed5UmR3VJtOD1EEECQJpaaRFcsd?= =?us-ascii?Q?nRj6vqXX5VzuttbkQNAFsTK2cn/TeKGgVTvEyABvloc+GS7cMyHHUIUm1X9G?= =?us-ascii?Q?I8VE+opYxQruOzcSdHDwh06HJbAp/HfxCJmqPx8y8x0Uw0ScdcX6/paCwksw?= =?us-ascii?Q?Uy0Z5UGx8VT/RcB4LnUV50EHsmdi4ChFzQansJFZQ5u7Hlgk0vGuvwfdRtLu?= =?us-ascii?Q?lGsM+tBdnWf+AAvOw9cg0sYQlPP8MXhci6Y44YCeT3hwL1rXOOsNpuIVI/5+?= =?us-ascii?Q?blKxndvRZ7hY+SVJAf7QCeMNoUsaVpj2V5QVWJLaVwQcWfuLEvs0dDehUzPE?= =?us-ascii?Q?fjR2MR1h7B/f6PHTZCNYKV9xHhBcziaYhU8IuTf9ck384oQ8jZlCHHJtlI5s?= =?us-ascii?Q?64tBMpF1fxBejOl3Gghnwks9BZxwxDDjcTnT0WQ117Z5jZ9Wd2OgffY1HAc1?= =?us-ascii?Q?pznnkyS/4J6C4NIGg59K+JIUBvgX2VHCd6J+9nZ4EuJi9PIdeVAJQGKC+sq4?= =?us-ascii?Q?TNuwByqCSBeWd7fv1zeJcHQu+8HlzVOXwj16g+nOKF/8W4TmHrNQl1xUWOzK?= =?us-ascii?Q?RrRT+7Q9E3zMUsov5/jOzqVetoB6n6wP010KbjjEOm2YK6zD8ax9j2o2dsHr?= =?us-ascii?Q?iPRfztRRsbK3u87yb1TEGXmOfCTLqjp7H5s1PNcWzYPakRqoMXaQ3DUfJxWd?= =?us-ascii?Q?Srgrcu838GjjD5ca50HXPToPLFPGhjagM6qeMHzsRVloDWTb6GznBYSAqbj8?= =?us-ascii?Q?ihh7w8m4d8FYpUWRUBgk32hvrTS1hW07tQ01l7alqXXh0skGzCFPylcPqS7w?= =?us-ascii?Q?zalKbvr6lwvOWn6xl45I/6LBDazB22/jEVCma/zECdHvRdRUgtCS6Uv8PPCZ?= =?us-ascii?Q?9wQFFvLOwpcRNdOorgjfILVn/HE6t5C/Sy7sfNtOS5g6iv2Ds9msYV8Y2RID?= =?us-ascii?Q?iG4MHvt9hM6JtB8ydody7CaYw+i1KMTRrN14Xc0Z6/nNvdhIpPEMTcNYbnc4?= =?us-ascii?Q?tL3AthJJpkcCLJ/Gf59seNPXt2QAWQI+LAZw7aK5f0FxiKX//I2aYUhi88wU?= =?us-ascii?Q?QuuMXlGr0dTE15WCi+aEzD7NV9zxUmYlzbqsUWakaY+MNUMQKL/oqK/mhLX9?= =?us-ascii?Q?oexnn9ZI+GwsxKrx6zquJufYqBn17It8r+CeXLHG4nDtcRc1HMIsOj5b55Cf?= =?us-ascii?Q?e9XI3ADThS02SFuPVeFtNeZVHuGGR80/gsi6nstMopALcrelrOCSzvXs66BN?= =?us-ascii?Q?/+YHx5qiz/d4woCytMsVQ9c0NtiteEvh+XYHaxukuaxEhml+ug6LxB8CLrLi?= =?us-ascii?Q?if2b9JsOwNK+Al0XhHRnVWeB2ykK/wn1OJsjblLBN/Q+F9FEDEdjmsgqy6Pi?= =?us-ascii?Q?fVMGSdHNegSrocpQShrstomJYK8QjXmlITHQpz1MCjytnYMDbig8BgLl8nCU?= =?us-ascii?Q?aDD7VwjjoOw=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR12MB8659.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016)(7416014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?TNJnl74HuHZ1eH6XECCUicYM7a+EQ/MSaX29ai3J4RfwbAyWg80HwX9IdTuh?= =?us-ascii?Q?yerF8sNvCUtfEs60BjAvY7WC0N3d73wRoZq8vLyD0qRAi7Lkt5JqnjvY6MMi?= =?us-ascii?Q?3CLKhsUIHvCCJNa6z+vOqS+CHsai+devifb78QYyDjlVEwpPneIruWZ2rlUN?= =?us-ascii?Q?JTCzeqKYqV2zX7magb/3IoSIVZxYAZqYjKrhMer57ngoflR1MBdbsL39eEzi?= =?us-ascii?Q?JbydwYSWMM9eJ9F7PZJ7Rydmt7I15rHcd8fy8gmXh3SvIc7+ZMJ/CB0293Wm?= =?us-ascii?Q?8k4EEykVupGxZBZ2IBTlEHLqNpDSwLsUZ/Unv0eS2QbOiqiHxJe+YNp968eQ?= =?us-ascii?Q?uqmsB0Fz4fKCNOolUg2lanDNt1an1ZHdHOVxVkECAgeiu1AnEhbo2zxGQxNj?= =?us-ascii?Q?dyRlIWbtIP+xHfvDtIsvdoomp4pgiQD2O5tjc+5gr02Big1hoamwJxEc/yRm?= =?us-ascii?Q?xewB989Nmoei6Fghv4uMZt0vsn9AF+74QYdyMdHuYN7nFwfX8DpGRtLxpKt6?= =?us-ascii?Q?ww/9PypNHT/e1xUQkjRNJhaZqchN0huwCWhqa+Z0KvNMmlXCBEoJcr9LMoXG?= =?us-ascii?Q?lkOC9eVI0Sp8K/OjZbnuuYZMOkPBKzQkkbCJce6KnoXC/NygwSVL2WPyya1M?= =?us-ascii?Q?BntvWG4gEFTfTmwa35D7xNKMU0zZML523d33r2mMC6RlBt76q5UcnkgqHU4P?= =?us-ascii?Q?wTsUJt8Z58d96I3v/b8E+WCNenOOl9rcvLBmo8RGwBELUQ2DeEsnX8sy7gFY?= =?us-ascii?Q?LFVeYj9vqHesSc3lpVr0BmkrEJrI7rZ0sIPpeOgx09SIysggnaikFijaUo78?= =?us-ascii?Q?DBCUmIDrSjx+zjDWBOdB02Aq8OPVALo1SPYjKUTga82JhSEO1SiPazoP1E05?= =?us-ascii?Q?z47mhjwIEEbmwW+GWW0Y5+ax0hz1dWEMNtu0n33CVaJYLDvDPe/0gPEHvaLE?= =?us-ascii?Q?eBTpnJPiktG876IbKPI8CaqbUGzzh+BAzxLyjBpPu8eI81FUtQwymJwsgqUW?= =?us-ascii?Q?tS9NlbUL6bJJWI2sDkNod0MBQEyH2syLOypJkcmXA7S0FrN4RtkDaaWHr/Jr?= =?us-ascii?Q?6Gw0bBLfc1cjcU6xv+1I3ms/tFZs5vD3K9jlh+ySmIjwoPdbZUUcKn99zQ2d?= =?us-ascii?Q?pbnu6guV2A7tUUaf1hJFbFrkOccsITEOzsTiiIxOo0LDLCLMSOs2k7BMWx3k?= =?us-ascii?Q?xJI6ZrM3W3ZQJP7+B8etvtPacXSNsBbfaTpUMaZTTMJLDjIRnZ8vvvq8ibqi?= =?us-ascii?Q?j1zIyCWsROZyEsugrhDwXH08QNQHcjGq1oJEDZsvh6RzELUPymp5JZQ7xw1E?= =?us-ascii?Q?x7ZDUGwBuGvgipe9vVFYa7cFFmtyPslTk9cZxFIMnKdh7Kfm4XvUGW1yU/Qi?= =?us-ascii?Q?NGelDYwIIt2gltwMjQObCx+UKVQy03yjUD3kpWUfq+2rJU+ZJP5YNhUbRiFa?= =?us-ascii?Q?zUyCtotLxT4MWoJ7CIBJxTBKcjdR/iXn0GCmpdK8lI7B057gN/+KeD4yny3V?= =?us-ascii?Q?vABvolp3i0xWPXAYsipVjxSR4Jwb7tUEHMYpNxtb8UACdPuemowq3boqRaic?= =?us-ascii?Q?lDTbuslxs/WA8aRnmrzYGNw2b/HPQkmWNOpa5vVx?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f4e4c9dc-1052-4be8-2b29-08dd9e139391 X-MS-Exchange-CrossTenant-AuthSource: CH3PR12MB8659.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2025 18:15:07.5534 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: wDwzqcGC2xXyXBIDj/Yuwx3ISitmoCtUIAXceenF35CjWWCuTOV+oagf9Jibvb+P X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB6771 X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 50D42160002 X-Stat-Signature: n6z3eny7zsmw6mz4dm86ztwdpgp7qrnh X-Rspam-User: X-HE-Tag: 1748456111-325758 X-HE-Meta: U2FsdGVkX19EtAllhkTpVL8iQkeZlTyKWZMU6OIH7ctPnNJaQbb1nybnLPBqMS0UvRdIGRBXApx1f9jwg+WeA/PltwliBzuZfCdoOJPQKaSFbOQjABIjhd+yuBsZ2qIB0PQezITscYrguOTdUwICxni9SaB2/EXeQMTyMCsAsBH8ilHNZf+bcff54AjuvK9R49Q3bUgoYF+58EYG14ArDPP/OiG8P9X+3LCCMLDJDKpod1+cNhkHsoQe/33J20uQqmETjJ5iaUOHKCN9XvMJ7iv8mQ9YK5EDcYSY83GxdqV87q6ZCYfRxA8IttVG1C24v+15+avoMSmIWUo1e4AIlbQbdHQue4YQbrRFzp0GwC7oXZ7fkGRREQlKJj14NJvNH1dA1G2qVk3jUCXMk1JgHObK2okx23S0rv/bZlVZsaUZVYqAvX0T/xJcjuaeTtLXnRql6dwp/fvPZPwxsnyDNL80rjRRprIM9L8B6iIjNCcavzt0rFbaLb/xFgdBMLUcll04HVA+clor5cqe7namVGW0PXQX2sSde3ARlPWmiksk4El2tPEJvUStiroCadg0Om4vh//3duvGVs1P1AgM4KJ6GuNqzm6tJObWCbg1IhXqlWo/E0SFWjkcHaOq65zC5RW7QklZrTCzxCVNQnr0903TP9s8zzuBNPBuQj/t33CJaXUg7hVUKMGSgRCC8C6kCJoAzOxQD7AQdvFDStiAKVXsJQAjeuvA1gb4new/PDJcBocj8ZO3p0iACvvFTjvzPskcnObhwbnIT9t1Fxo8D9CgziWjfWN17nAo8Of7Fo+xjKpv4Mr4+QnwE9KnP0qXMgRyj6dYbyaGXrzn2VjZSNfVr4O4SgenCPCTPW9vNgxEBjTydcD57OGJP6mpSczDh1jwAwKUhfFMaeWSZDW8I94MiRYumcw+dRS+HP11afKt6Jbh1jyHosOS8k9yUXS1+6PX6Mm3ugvi6vkhhR0 GEm00trh MNbE13gGjC17yQ+ozqHBgVjjQnkJzbxjoDKhckCBBkm9sGMNjlvJonjMypqWtaldp1eVqftOp46+3AkYAAb6YU4HmAAicfyvwFiB5xTf9Ad9D5Vz4a/rbQ3YwpYxoeQH8QBAUpKL1ODHKd/1Uh1FWZMSXkQmpdGULv2Kl1q+DJjUuptUCKj85pgZ0KUjZDwVYlUDuu9fDe0ANJu1ECO2/RnieIJ1xiRFuxdZl7dl8J6BLW5TN6Y3wcKmh9M/Aj/sdRPfK/fsjTBEqzl0ioXVfhVXf+eRNYcz4KYKfTp/P/trBtZKDQN4menwWX9lgv3hidy2US9hwqJobQUn5UCiFFxHq9jODDqiTAkslZeD9PCE6Nz2VweUo2sD2+SBfwkONOdgG++6HfgOpArAzIdb1MBb14QnUOW2aD+6/xAo2mqKUMRGDn6+FiphXzSEqnf1y28/QcA83c1JhvxvRDdRC5KySXxEkh2qyBbJv/ayrc2r+3+Nac1O3AwwqX7SQlwAfZOrC 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: List-Subscribe: List-Unsubscribe: On Wed, May 28, 2025 at 08:00:34PM +0200, David Hildenbrand wrote: > Having refcounted anon page in a VM_PFNMAP doesn't suddenly turn the whole > thing into a MIXEDMAP where other things with a "struct page" are suddenly > refcounted as well. The special COW rules for PFNMAP require a single linear mapping so that vma->vm_pgoff can encode the "special" range. So the only way to get struct pages in a PFNMAP that also satisfy the COW rule is if you have a single contiguous chunk of them. Otherwise they turn into MIXEDMAP on non-special arches. Which is a little detail I wonder how many DRM drivers trip up on :| > ... and that should definitely be changed, such that MIXEDMAP is really only > used when actually having non-refcounted things in there. MIXEDMAP has to be used any time you can't meet the special rules that remap_pfn_range() sets for PFNMAP. Really I think we have three special cases, not just two: VM_MIXEDMAP - The ptes can hold struct pages and if they do the refcount is managed by the core code VM_PFNMAP|VM_SHARED - The ptes can never be converted into struct pages, nothing can ever refcount them and you can use fault/etc to store things VM_PFNMAP|!VM_SHARED - Must only be created by remap_pfn_range() and can store exactly 1 contiguous range of address that cannot be converted to struct pages and will never be refcounted. Probably can't use fault Most of my remarks are about the VM_PFNMAP|VM_SHARED case For arches with the special bit VM_PFNMAP|!VM_SHARED == VM_MIXEDMAP Jason