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 2E410C83F22 for ; Mon, 21 Jul 2025 00:11:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C5C8B6B0089; Sun, 20 Jul 2025 20:11:34 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C34616B008A; Sun, 20 Jul 2025 20:11:34 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B23066B008C; Sun, 20 Jul 2025 20:11:34 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id A01196B0089 for ; Sun, 20 Jul 2025 20:11:34 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 58FA510D554 for ; Mon, 21 Jul 2025 00:11:34 +0000 (UTC) X-FDA: 83686342908.17.7C5026E Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2066.outbound.protection.outlook.com [40.107.244.66]) by imf07.hostedemail.com (Postfix) with ESMTP id 9A95B4000B for ; Mon, 21 Jul 2025 00:11:31 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=mi4uuqKM; dmarc=pass (policy=reject) header.from=nvidia.com; spf=pass (imf07.hostedemail.com: domain of apopple@nvidia.com designates 40.107.244.66 as permitted sender) smtp.mailfrom=apopple@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=1753056691; 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=plwQglDZFwQGXvph8gEHsQrTPjvEBq42Afbc7x39MBY=; b=QkkFmkH2b6qcBO7fysms8h4+AqI5EQl6k6RP+I+7NF5XH9mC5uOy+Bl9am0Feyhfk/BvNL /m9j1VKlgAruqCCOdVidNXVm6hmxwRkuKk0nDa9WM9DRB2Or68MU8U76M4TJDh+Or9HOkq SsH2hYqd2EXgF94GnjBY9/Dt45UBV8M= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1753056691; a=rsa-sha256; cv=pass; b=t3NnDOD7/m5HVFOZbV7p6XxDxTJtiUQdeNDKnhkoUoX7QzEhI+Vwjt/v2sWCp+veavBOAW FclAuge2dKBCd1BaIQXKUKOET7VpoWOHXQLgsCh2I9lYHpLote4XqDaBwCV/vPi4iBmR9d zrBPrGazCp6V/lXRJBrl90FzkEVz3Z8= ARC-Authentication-Results: i=2; imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=mi4uuqKM; dmarc=pass (policy=reject) header.from=nvidia.com; spf=pass (imf07.hostedemail.com: domain of apopple@nvidia.com designates 40.107.244.66 as permitted sender) smtp.mailfrom=apopple@nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=e8JuE8Se7BsJmEinTr6ZfxqlU6oo/c0+/uI5POYfJbAMzSCzuCHmFRrW+PnSK54k+N7ztnR2zAjaYXVsSBV8W2dlWvOkq+rHH/9dFLs+LXLAFFElZoCtgUp7Z3Cx83jgqN2FGVjkh+RWGSO5FQ40+vO/qcbA7OHQWVC6xRnj8Kc0YWxNRVrgqIgITLs1PSQ9YyNBzgQz0Gi3uZ9FtRPoF0ss1I5eg6R0ht9in7MsnnZAL6SDJg8nJzYg0i9lmm1LVDicb//9LKGj04KVl3zXLuV4pRtdu1OUVMMAFAZdf7YKWa0Jh4KGuy3879dZ8fV8kF/sL95o82Mkz38/xTZItw== 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=plwQglDZFwQGXvph8gEHsQrTPjvEBq42Afbc7x39MBY=; b=vaKcJW+PE9XaHKf3+qMcvnHCsI11gSfbou0cHKbvER/kNMLP+Zx992JcUp5E8M7f/GbeFPejwa2gW5+N1PslcoY1SBgC3JApGp93rdGxrC6IIssZHSWjl/n8uCkfvq+w+BhzdIA/R/ToOJDiCeCt+WgNNLNw1cFgFfGkWmpSVcyRRlhRtrPB3vzw2WrMhTiAmxKl5E5bk4YkGgPjxvGbn+PbxLrTmle9GwTu7CgfA45zNWDJTtLov01pEJTPINxLe1nXT6bu3EhJkmP0woCKUK7UyjNPV2By7Q47vAr9aoycAGPq4IGEMSkpmt39ERvFLsmM+kr89KXM4Lm+PQqRtQ== 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=plwQglDZFwQGXvph8gEHsQrTPjvEBq42Afbc7x39MBY=; b=mi4uuqKMAPQ8p3nXP0ftETdKKLX6PQ6ADN7LF8aL0xFnniG93L1w/w9AQcMjr0z1s1H9tB11uSa6w6aeTbp54YSfUkcxKmN5r1KHKaNh+CkInCG+ODP8flzzvwc/RtyKkCCOgAOLILeUFcK+72ZvhBdCvIcj2H9uNOYaFTQv82WL+urpKlDVGepSezM78JvrPeN/ztH68OmnnXVl8r8NmDrJfWMhm+voOASfnIaVqxabuD8RUlkkvGioaaiAEdkjCdNV9CPyHew85E5wnRaGKn2nZJZIbZuVHws3LFY3xNI1mOLowQTbT7kvxXHdmjcxNzownKu9sL2rq7LJwvTMHg== Received: from DS0PR12MB7726.namprd12.prod.outlook.com (2603:10b6:8:130::6) by CH3PR12MB8403.namprd12.prod.outlook.com (2603:10b6:610:133::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8943.30; Mon, 21 Jul 2025 00:11:27 +0000 Received: from DS0PR12MB7726.namprd12.prod.outlook.com ([fe80::953f:2f80:90c5:67fe]) by DS0PR12MB7726.namprd12.prod.outlook.com ([fe80::953f:2f80:90c5:67fe%3]) with mapi id 15.20.8943.029; Mon, 21 Jul 2025 00:11:26 +0000 Date: Mon, 21 Jul 2025 10:11:20 +1000 From: Alistair Popple To: Jason Gunthorpe Cc: Matthew Wilcox , Yonatan Maman , =?utf-8?B?SsOpcsO0bWU=?= Glisse , Andrew Morton , Leon Romanovsky , Lyude Paul , Danilo Krummrich , David Airlie , Simona Vetter , Ben Skeggs , Michael Guralnik , Or Har-Toov , Daisuke Matsuda , Shay Drory , linux-mm@kvack.org, linux-rdma@vger.kernel.org, dri-devel@lists.freedesktop.org, nouveau@lists.freedesktop.org, linux-kernel@vger.kernel.org, Gal Shalom Subject: Re: [PATCH v2 1/5] mm/hmm: HMM API to enable P2P DMA for device private pages Message-ID: References: <20250718115112.3881129-1-ymaman@nvidia.com> <20250718115112.3881129-2-ymaman@nvidia.com> <20250718144442.GG2206214@ziepe.ca> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250718144442.GG2206214@ziepe.ca> X-ClientProxiedBy: ME2PR01CA0083.ausprd01.prod.outlook.com (2603:10c6:201:2d::23) To DS0PR12MB7726.namprd12.prod.outlook.com (2603:10b6:8:130::6) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS0PR12MB7726:EE_|CH3PR12MB8403:EE_ X-MS-Office365-Filtering-Correlation-Id: 7ff38381-0032-4700-4b45-08ddc7eb225d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|7416014|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?/WM2Sjy5Iaugzv9Xhln1e7kBrTPRt548lzsq3+OwEOse4tuLvNb8MUW47duV?= =?us-ascii?Q?QNb/i9obcy/+jFEWp8lGB0BNsXdcafAPCuchUbXg7jHnQ12T7lgP/i6tAh5F?= =?us-ascii?Q?BsgA6JgI4YChjZe+pHCbCH+9KZLH6Si9uSMhBON8ppC/lTIia/VM9T2Fj3cd?= =?us-ascii?Q?73aNwCGnRQjKwnS5lK+GMBwhfqkdYLe0zW2eS6XGiRWtnQz15oD6OugnYpe0?= =?us-ascii?Q?hk3okqh8eS5FlOT1snPAOnguG8AXoXv6dB9MnafiRvjHgE3M/ZknFDnlqR1N?= =?us-ascii?Q?YAcjTqgrijhly52npS+Q8lL8GGFnricV8gZZDyJ6Tfz5dtOLWovPGctq3Rue?= =?us-ascii?Q?lp0GwQgNj2sGmBvu5tAk3uEIQBLwnwYjpVMuLM19l4udBDQPn7G6rj4tPieb?= =?us-ascii?Q?MA9KgBbgeEKH71KVMuHa9WKBHL0k1M7F4+AqjVnF+GVa6ybtLpzHbPm10e4q?= =?us-ascii?Q?9G7obV0wDkIbGTm5pByfIzEHpp6IWKCg4uuZaGeLR11+JA4Y3vzL6hl/84wJ?= =?us-ascii?Q?1ckASMNt3A+VRA4OTNpb1Q1kD1sd6VLLtPPbZZGuhYMfEauzciSKDwwuOg72?= =?us-ascii?Q?4WgElLLLdXYSBzH+bCk41CJJanT3AnBTqdyBZ+7O+DSWy0Nx4oaTd3RpYqB4?= =?us-ascii?Q?H3I5QsyrZyuPEmL/OaPzq4RlU44xawxdy0z0cQufqtXLnB3OAZPQFN506uZ+?= =?us-ascii?Q?jheN7HzN/GZ1pLdLLlRUDiaKUM2DDYi4+n73yUGVfZgYQNF/XZ1NYTb6vcto?= =?us-ascii?Q?zy/k5y2Csau10ngGeEWuQxFQZGEQqP/VmeSj9O8UXc5TK2NgSY03wGI3rwci?= =?us-ascii?Q?+GzlI1SJD0R+2oGmynQaiVXOJNVq/o5zHJjN6rF7MeMAcREEoKxUeKLYefZp?= =?us-ascii?Q?Jj9Q4mkiQ/comFdkh51CeEJEJoZZq9C7rQTDG04il3STTDuhhHuyHbpDP3qg?= =?us-ascii?Q?WBZaaUrEypor7OZReqq/aK3qgF0bgpQ3UJHfhhPDSsZ7TRUO0ROiU4L41byJ?= =?us-ascii?Q?6nhqIUNA8h71RL+kf/IKUe03ikoDBQHXRqJ1U/GKUavUOGVndVkeuYJseuZR?= =?us-ascii?Q?BFHWrA69lghn4gxAkC68nkSe3CEKmA2qcQ33PP1kDTbZfID6H9RUMrknn+Rc?= =?us-ascii?Q?fMzFBSivOTuupkbwjk+vWzTxqO8n6TdjM2mep8SwMfkEhEGXJHHvd71aV5qd?= =?us-ascii?Q?fzq7t56zczBlApMSZS7EPnolaYrrOoOQRNjmz2DZk7z6CeEMEnDjYfYKsyYJ?= =?us-ascii?Q?R7lNX2DRvTX/AADF4Hgole3RHbfNw+J6NUhnACG9rWIf9flwHjK1d6txvSxS?= =?us-ascii?Q?DACf2wimNjYlBBc+APnQ8pTSQgKngTxrke/SZDl4VL39JFafuHhJu7JL09GH?= =?us-ascii?Q?/uMpCFIsGGw/lK/+B+4lHgEPjql5PXxuFoCQHM6C+UP1eVXROnHOwY6E/IfA?= =?us-ascii?Q?5ob8vbcT+r8=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS0PR12MB7726.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(7416014)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?hHJXgkEltv5OVxBUeLa1+4qmX2LXOerWfsvrtML1Gj/CIyE8KvDwB3h7SB17?= =?us-ascii?Q?bh5X5iB6nbcM+EhB6c1fB8YRo3VanwIGFUM060p1e7BqJBlzHxwmv9y/8bLv?= =?us-ascii?Q?xPetYHn9VgdQsTAaleK6KIaHrA2sx+tDXorkoNYFOUSidocMHTquxG+PFnKf?= =?us-ascii?Q?WUKC9wL727v4LtxE54sCPrZ/sjR97JjyVo0pAEWgSRGrvvqFi1ULQwUqJo6x?= =?us-ascii?Q?ooNtxekojdAnkvtnyGZ0bE2XWxRmpqDjL4RIf8+pksgpxhvv0DCunl2JTxsL?= =?us-ascii?Q?sSaIIxCNJT38BbQzsVZRYN7AKdByIA5fpUSNInEronXNO/epmYdA8rJlqKkS?= =?us-ascii?Q?1tihDk1QOY2+orDOwFPtYB4cl+NEMefc+dsTGm6pn6/NZ/80DQmZKB3hmb0u?= =?us-ascii?Q?0Sf+Vl2nctrEoV6Gv0PGKuUIQpNVYVlOdQa+XweOqUorZr83kZz0rlpeqO/G?= =?us-ascii?Q?XQT4YwiWwLaeyw6T8Fan97mCQlYVZl+OzaIpfDgN4pRlEJufyQQZrqbQT5GU?= =?us-ascii?Q?oayQbRopuNRKHd0BoCnlrgbGNPzOvw8p7M0sXw5xAWxHTkPnBGjVn983LdWA?= =?us-ascii?Q?6sxFYKvxvMiG52V+h2mFstDZvaZm39BgxbTdqDSD8KJJEnkBE+rAItb7tCMx?= =?us-ascii?Q?Fnc3zskdejwnR6AVKxJ2OpnmyQyLKhTyvi3BQkmEDt+Sfybike/XLonxCqeJ?= =?us-ascii?Q?H6kPaL19RK+a2pbWF/qkRTVA/w/VrzriNJf8bnLwULbTeRfxOpChDFcInGNg?= =?us-ascii?Q?qAlAQ6l+GP1vZLZD90efp+kquFl/D72KNy6rP5vQSOncEzz5iK2Xpko6YCMQ?= =?us-ascii?Q?DgaF9pUdheIYWXdX1T8F7OsOBdNmxD+gy6zfL1teuJ3Gcc5iYQs2fqPRlQJG?= =?us-ascii?Q?Ma8XWOzOdo+o810KKTkC844Qh0tROEvydBEDKf5ywdfzJ0N1IE3I7A9y/VkL?= =?us-ascii?Q?uMo2+cC0Ktg3prVyTt8wokXL5fvyvgaT2pR5feMjwjdSUSFTchN9oteYiOH2?= =?us-ascii?Q?znw4CWgxKEWteBQL2aCmlbU/KjsCRQWESZYTdgpQAmucbJus9UD0VGRFoJH+?= =?us-ascii?Q?gpHiK5r8UOoAW/lkLunLOl23n5HH5Go3VWbKW9XCqOf9yHmCL4NKrPR61OGr?= =?us-ascii?Q?2b2o0JEl9TDZ4xckrKFUEvkLWPaYXfLztKTDngQ17/HJjw83Lr5sqOXVp+UC?= =?us-ascii?Q?JlNn7qnsFME2NVU99grhVVwejFqLqdAHVregf0phMILUCLk7CILZtGOkKXFq?= =?us-ascii?Q?dtr4pJ/hiv+a7BHwNh/uheG84pKErK29nwH+ASAi19eHiZo2EAf/BmlJyd+X?= =?us-ascii?Q?XPn1tYqz/OkRckHV6EhzAIPRvVcSY2ipDNHJwQ8T/C/2LRBYPHKrcZDyBvjL?= =?us-ascii?Q?tNM3AzpIhBSV5P9z95TJZbzX1f+r+yoyVYsUMPZJqzhRivCNOQ5z8XEzcHJD?= =?us-ascii?Q?5BbzV/4TMgeLhcquOfM0pzWzjICLbxk5lcEE4EsnBo1mUJyeI0du5SA7aizi?= =?us-ascii?Q?JSsuRzF9pQ5JFcjUwvAWLoubi5J0N+C8gdlH3S40+dmOTNlidFFc3ZF7aRRE?= =?us-ascii?Q?8Ik5AiPJw7Z1x0XsmTgB+bb4D+uK5vXC4qlNEFvN?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7ff38381-0032-4700-4b45-08ddc7eb225d X-MS-Exchange-CrossTenant-AuthSource: DS0PR12MB7726.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jul 2025 00:11:26.7278 (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: 2YY3Jl7ntp64GZnRAGC/HcHjs13igjK7lfAyft9wrB0W01+QCA6nJ6sDn1rfIfKBiIMlG7Qa/fmg36ajeJpC/Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8403 X-Rspamd-Queue-Id: 9A95B4000B X-Stat-Signature: epeh8mohesiudirf5cocp99pqe9a77id X-Rspam-User: X-Rspamd-Server: rspam11 X-HE-Tag: 1753056691-71487 X-HE-Meta: U2FsdGVkX1+s64qgPX/xTuAMb+sbh4b5bsPVqfBNu3ZmdQR60tDzUPIgzgZi/uovAOWjnIhMl7sbyM2m3AtzxV+17MA6ylmtg9fEB2Vj3jHyskli0lEMTtFmYoObkYe1ewg8gcyHYU8Jw7IoyKjSdlDL7n18DCA3Y/d4CEc+0CSGOI9haMAvuO5bZdI/wO1OScl8Ew6A8LguZ9fDGPovKK8B1dzEYxzR4RtuVtxKsVStTCd2fdzOw0v3miG48sQKC8Bl9b16YqSd1djN3vcZBviAPTipErSUo0fqeQq+qKnMivR8K3QpORoyBXfpPnDARqpJnu/P6osXqDJfhLQgF3Ef+vivsV68Et15LhLqiHkaQt9/W7vDGqesQjIoUUoBvYsXZNV/JAf+0zHYJ2gv7z9puPQFduXUyMSthHcaROFP4YfMNHmMjbRWfnJgjPeDXKyHhgMNV+LcIaO/wN45zLkMnzqmQRublDq8JXhsRhnik7yfIZZVb/H1BV5u8U+CpwoKLr9bx6xdEME2bbfN5uWYGe8fLGmnOQobEOM8d4S8M210lOZRhtM110MlasTzmv+63DMNUdixBmViFC/Qr24l8gUyZ81gKkm3YR+dsSobNIm7esvwQtmkA5jz6pII01Q6v+KwZ/jS0p0ZZfs8U28r/oqY6HG8jeOf8heulZrBq0qoqf3EfgJFl8rXFnOSjRa4Zz96z6tBARWQMG5p3QhFcAb7oL2Fn5/HVisRHwgq62zKGi2sn4qcaQSiNUI8DTilEgjbSDjFcQsf0J4xQaXZtppahvYvG34lq665tnhqpANS6ZRfiCP6BVUfoJXizRTPa/RSuOO2XzAj2PDbxC9KHOEjsQccFPOFwM9cJfW2wjLc7ZGDcMgdK7Axyw9IWJAgvTWrCG2chRsf4hbYEW/pUEf0NGcFfYPMDnifAIOfhfvsVrpzA964wOH+hM8li+SXkrH7FfrRM6IDPbB S1qbTB/j mCHvrnzB38/IMvWO8JOmTePg1S2ryuPUTAGitIkoPdk7z8UA6KBwdpAiVAKnO0TWO8rM6Km2lLdLOcB8NicBXKJzRN736ai26DQ2RVVs95xzA2iJAbRjOVPQ6HhT61SUBMkrQGE77XWlgBwT9d67M2hhZSmtKjOMWiJn51n2qP26se0kED4cRZRSbp4HGxCYuo2/7hTonWNJH6xs5z3gf01gCgb9Is3ABTRaskkyQ/jTA9bdd9Q0lywPusacwM89/AjD3gNJ1Wcnry+D9NC/v/E99JxP2tCQFcdI6vzvlipEZaXaz8xi4l0PUrhqdedqqIjK2Cjw3hLskR+G7zF0IqNHCqzHI0OeC31qdDZydMe7BUd4E08HxT50Vprmg/xU1S5s/WJLJrG0HWYNDYxfg8nulnQHmB97UlfEvzJTG1+OdKoS6Nltq2qg/cNBOErB8lXzEK+orGaIZkH8= 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 Fri, Jul 18, 2025 at 11:44:42AM -0300, Jason Gunthorpe wrote: > On Fri, Jul 18, 2025 at 03:17:00PM +0100, Matthew Wilcox wrote: > > On Fri, Jul 18, 2025 at 02:51:08PM +0300, Yonatan Maman wrote: > > > +++ b/include/linux/memremap.h > > > @@ -89,6 +89,14 @@ struct dev_pagemap_ops { > > > */ > > > vm_fault_t (*migrate_to_ram)(struct vm_fault *vmf); > > > > > > + /* > > > + * Used for private (un-addressable) device memory only. Return a > > > + * corresponding PFN for a page that can be mapped to device > > > + * (e.g using dma_map_page) > > > + */ > > > + int (*get_dma_pfn_for_device)(struct page *private_page, > > > + unsigned long *dma_pfn); > > > > This makes no sense. If a page is addressable then it has a PFN. > > If a page is not addressable then it doesn't have a PFN. > > The DEVICE_PRIVATE pages have a PFN, but it is not usable for > anything. > > This is effectively converting from a DEVICE_PRIVATE page to an actual > DMA'able address of some kind. The DEVICE_PRIVATE is just a non-usable > proxy, like a swap entry, for where the real data is sitting. Yes, it's on my backlog to start looking at using something other than a real PFN for this proxy. Because having it as an actual PFN has caused us all sorts of random issues as it still needs to reserve a real physical address range which may or may not be available on a given machine. > > Jason >