Message ID | e935f82d29f8289862f611c15d28c4504aca2a82.1742099301.git-series.apopple@nvidia.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> 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 4183BC28B2F for <linux-mm@archiver.kernel.org>; Sun, 16 Mar 2025 04:30:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6BC9228000A; Sun, 16 Mar 2025 00:30:20 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 66AC7280008; Sun, 16 Mar 2025 00:30:20 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4991328000A; Sun, 16 Mar 2025 00:30:20 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 22E1B280008 for <linux-mm@kvack.org>; Sun, 16 Mar 2025 00:30:20 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 402B1160600 for <linux-mm@kvack.org>; Sun, 16 Mar 2025 04:30:21 +0000 (UTC) X-FDA: 83226137442.20.3AC0754 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2049.outbound.protection.outlook.com [40.107.101.49]) by imf20.hostedemail.com (Postfix) with ESMTP id 46C001C0002 for <linux-mm@kvack.org>; Sun, 16 Mar 2025 04:30:18 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=TNsLOfxU; spf=pass (imf20.hostedemail.com: domain of apopple@nvidia.com designates 40.107.101.49 as permitted sender) smtp.mailfrom=apopple@nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1742099418; 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=RDkIWDdnH4drh8UepiLUBz1wE+6cm+QfrkBbplMcEWg=; b=gxIZ6b4DuekWT2lT7tc+SDdDIChGWlw4k7uVdKXSxkUPFz0qHJQPnCwbcHSt+oXhIwHSlf f3UVKeQHlU6trBTCVBj/3HEACklMK8e6vo5mTO2WnnK1Pewauro4GnVF2ldxHzY0Z9wiD4 no0bO96gob0Wbjd7OPGzJb0DPzUu9UU= ARC-Authentication-Results: i=2; imf20.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=TNsLOfxU; spf=pass (imf20.hostedemail.com: domain of apopple@nvidia.com designates 40.107.101.49 as permitted sender) smtp.mailfrom=apopple@nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1742099418; a=rsa-sha256; cv=pass; b=jI6auu22zJfY7VUJNFXD1D65OPVA+b4HYRscDLIn/TlcIyhNQcJtcAr5KH6S7rwsHJHjsN 0xdRSGCwXbuJFi5qbEJ0kP0P1ph5ZvY4g6Jg/pgbUEcVxhOHtfY2N3kIUuYex6GGbfv/k4 0+vU93ZfTtT2pbyjLp7lxcNHBm+vSt8= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=rBo3+onBNBTG7rUzIdMFMVJeG+YCP0Unb2jWesCz3mtsM0tQOOCBbPxgjB4oUWtr61V6kvm/FhodgIituP529P/egQY0i2qMFQe+ipckIX9RwBfGwPRQDTHnf1O1yMtwitp7rL/ZPTmpyvYSGtsmOGP8QxYu8HcyvkekcjQ39y2ldWY2kewrsuXpSrKd/3hUMAhl3Sqb1RkL9WuTwjzGrJ9nMDNtAy1lVcsXyqYFicHgHPGrcJeOdBJF+icA9BrHX8WRYGtxpmhFayTGQF5FTw2orB5Y2Pj1VxXgyLoSMEwrOV0wTC1CWIGxXISbhdHpeKHN8+hNPDbU5VWAMR6Keg== 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=RDkIWDdnH4drh8UepiLUBz1wE+6cm+QfrkBbplMcEWg=; b=llCqIVgUV0nxHObatFHgpP5xuCtOBkg8eokmeFDBHAihFO5ljXzCbVMCUP66svp/YWhlLhXQLTMOmQm6r7jb98hT6ViunTcYLVTbqGg5rHYJajeI7B9cLUmq3nJl4mW2bCGy3+x7tsVX6UKtnCA0mWR/7oTUZ1PsKCseugg+w8/Nh2EYEq9TCI99Me3rqYCAwvHtikkQGXgkmyRLXHIy80nKFmF78vOipZQaZLkYL9AhWb7zfx8mPmpHxVO/p+PTV0YLzPlY7mvBFVbIUG4uXJIyNI86075YkzKsaCLyme7wpSgwn+6TvVa9lSAAM3h5Kdtx10/f4lknKjJmGxWXHA== 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=RDkIWDdnH4drh8UepiLUBz1wE+6cm+QfrkBbplMcEWg=; b=TNsLOfxUD+BRzssiWquZn1tNs4AyhG+gTM3Ta0US+IQE4xarIn0rikji3rYjqOn8KEe/BFktL3tJS9UKwe1hZs+W2/lBgPHFZrssmAbDJii7Z1q2IBNYUKTmMPVP/NtGwPKG60w2NRFN5OsAw0eAicPrm1MEvWLF62lQbyGM8r15mrsL3jWeh/mFO43KvdzGtKysEFjEbkjFQ98SNV6G9paywNy2VcPD/iLZ1lhnug+6/6xBb8PuBwxVcPWrGLNSiUg4N9ppru7e/o/XkuB8QIUdTjBaekE+nbE9LeAMQCpNueMB+FwUvMPu2Z5GHwyhtF61sKLEWoFLq5r0ECWXng== Received: from DS0PR12MB7726.namprd12.prod.outlook.com (2603:10b6:8:130::6) by LV3PR12MB9260.namprd12.prod.outlook.com (2603:10b6:408:1b4::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.33; Sun, 16 Mar 2025 04:30:15 +0000 Received: from DS0PR12MB7726.namprd12.prod.outlook.com ([fe80::953f:2f80:90c5:67fe]) by DS0PR12MB7726.namprd12.prod.outlook.com ([fe80::953f:2f80:90c5:67fe%7]) with mapi id 15.20.8511.031; Sun, 16 Mar 2025 04:30:15 +0000 From: Alistair Popple <apopple@nvidia.com> To: linux-mm@kvack.org Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Alistair Popple <apopple@nvidia.com> Subject: [PATCH RFC 6/6] nouveau: Add SVM support for migrating file-backed pages to the GPU Date: Sun, 16 Mar 2025 15:29:29 +1100 Message-ID: <e935f82d29f8289862f611c15d28c4504aca2a82.1742099301.git-series.apopple@nvidia.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <cover.24b48fced909fe1414e83b58aa468d4393dd06de.1742099301.git-series.apopple@nvidia.com> References: <cover.24b48fced909fe1414e83b58aa468d4393dd06de.1742099301.git-series.apopple@nvidia.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SY5P300CA0019.AUSP300.PROD.OUTLOOK.COM (2603:10c6:10:1ff::11) To DS0PR12MB7726.namprd12.prod.outlook.com (2603:10b6:8:130::6) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS0PR12MB7726:EE_|LV3PR12MB9260:EE_ X-MS-Office365-Filtering-Correlation-Id: 019146e4-27ea-4314-ed08-08dd6443401c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: tHVe8scBJ6g3yb00fTlKRJjS3dQoydpfi1oIlyTwhGu3j+kqtHb9TGJU3w5WAUmVm6/cXdojntrCpUa+onLAmUzBql7LW2EPnZYhdhGIBdcGvkzznJxGCAKcGc1iaCAcpmpbLmSyR0aZiMdnS4LBFa+4QQnEEaWTehuKkCR0CRVCHPCgI3qtij5REgGWID3ocH8VoZt2xn2+JBCKbC/uGDGeQvVs+u0Or/I3isRkfdeQonJmPf099/jxIIKLXvxamg70sC601iQBThJD2y/MkuWa8xr0ek1M63IXOdeg/fAaegx1WpMo/vn+tOM1Phyng6m1aQ4VwDgBDihkmHr9za9j/AktzYYBza9hgbo1ll1Xdrvu9li9p0ZJXLbz2wFezVuq23wo/84rKFLTuGAThgChcIFTWNYBbuKRL2k38EKi55XhWcl0avxvFqeN3fcq1SzZkUXXCIBgJOSQg44fgC6+4N3zzH2Dtst3l3xmDomaQorNgtDOdsvqNJQtinxFgXpVcGrmulZhOxW7s6TXDKK5HO6iLWhcaJSwU1tEGguqLk5yD3D/c3sjYkAuXujUwBAlqpsGu8YpiybrkhlzAJUslA00RH2xVxpHI5B3+HEZQhfHGBB260tiChX/8obAq+JJk+KG4i1nyN0kO9jPVwCraKGzzUpHaReFzfMKD4oJdrvmwR3kbGwH8WseQKdfKY9CygkGD26/lIsEFnv1wXPrjV2yKklvmcpzq0ltNuBbQ7hbDTWCJ8OzRTjXojII3WXqkiAdIjaqsRTA3Xjo8pCymxhL+jh5+6T5nItJNuFkKtR51ubtLvgvNJz1qVskHOnTUFKao2V5UUD8DqCkQwgMohaLvmvWOV+tw6jFM/WVg5LT0vIgHHZwnftZ1qjye0xND6GLiHZcOEONIahrNC9AUNYDiNvCK7sLf8AU/REo5Vqe24H90l8XkzDrp1bs7+kPHnRHKs7n1LLk5FlOvHVUGtWJMABonnBibxCl7g31lI9z7CAZ1+8lm7M7YwO77NFyPuk6O6IKX1x6ZUe985ku3c1jYk6ETlJPD3xx8Yx4cZymuvKECTh7JtCS8VteWAblD5/Di2TNK+2NAoIzAKIvKc9g/3RrCX6kXRUaxEuDNxEMT/ZFz0lezcyU/xPfGB0XpXOdVXHwmscD2yo5CWCIY/I/scPt7ZUxXElifLX9Eo27gIlNmbr5EHM9+Rqvj/Qe9/rSTszjvS5vioBc4/tkQ1yJ/aqzNWtFCh97IoyNc+i3VCuxju8wzSiX1GNc3p/+YNINOfzYIUhhHimEcaSzT4+aju2M14fA/Kv0ERLfHXJP2wNMVL+GrtlUP4dt2mwRoEKHjcIhqVNlE3iuVeVrxfl9juB2TeylHh5dvgtPB8N9A6BCEJ+Wjnv0l8WU 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)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: tzpDAJjaOHymwU3HJJr1dyCJd72SFoGiyGDbuNJfWgfnCZbGDLFa4ch6Kckm7NqPdQNbe/vjHoGEEsr2W9oaf0W+SS1JAHcZjiQOx4bTA0xxOSgVFRdZFlSV8NM3rJedIzu9eygJ596L6VS4DS7n0mjYVLefWvTy5XnBNfhdUkLXWhYcvfVh+sEwJTOZgI9JW9V+M3UNMWPQqKCxlOEqVcSTXo9KoEPEzeqBXbaWmxNMcXORBBxSV2AySPgw0erenRi7CiOHaslYOQhD+zBtLSY+/I0x+kT/W8DTKqYzdlgZ6wN1I2r5F+kRGFCrXQvwLBi3r0+KKyGfcMtPx0Oz4nxRn2dEVcsWwp+8nx+krb4c7TLtds9yAlPUx7DWp7nm17MnlUZW76L5cZUEu0LWMBLg1rfWtOSuVvO1qULQWMDqT6Y9qQcMzHJoRTvgnWkf3yRXr7LOUCzGPjd+bA2EoSQctvH8hD3O9uhL4OwYlXs9VblmMvmymnJRRBXGnvgj6CWXySRq/7bPJ/+whMOEcNqpd5WDBnOkg43AYF/V0GTcBcFSJ5ldUutlB+IB7gnCJDgoL/g8aYqg+JeWq0hQAROQy77G50OOx46moXRMKHokKIG5RlYmrKd4q3yq2SetzQo7zMeTdXVD0HTV7l7qy+gYHPP2Rfw/2qvoOg03d2l967zRgdCMahNb1lZDokht2KniHW20Mryhl5a8VN8Xp0jP+dYvQu+/m5l/8qow4b69s4ypM4ACwrHHh9CZ5upIVFTiLlcSvLxsBfe1Uh+9lMW70sjrPt/MNbwRa8qIXl9e3H6NlF202d73dCOoEEmILpfpON8RxIpYRYNMqhh3DG1OJ1uEgAUzUKWl90fVXZ9H/g+ZOsYqscetTMrCBlEjqUKOaCoPbCcUuWS5sOFVAP7IssQQ9R5lUEornrk92CzEkEP4JnQl8ywu+sz5/Ij/xZjXXDsI37bzvZqyoMCj/paBEq3DWZHf8c6vLPeRNjEEDybOAXpZo6xZbusXa6GzgbR+bO9rsta4oVlBCX93wDCW3+8FdC4GZRDgUJoIR1rvcWsllzrac2r8YNiVt+pdJhsZbDLkd1HRJIoNuTKFKdgDWiByYaB2jtUb8bIqunYhYwB0KMBcHyAOoX5czS+UJRrGclyueK43aP8F32NNAhgf4XM0YyV0OTXiGGhDQ+YlWpoHIcqrMBHlS6y1aiLCmXCm/MkVuxn1yuGGvpDWMMHjwd5Pe7VEozthRkuw8jsMhb7+RoIf7QgI5wCbRU1YsRJgrU2pJeLMu0N8MNDKxYtJsl/dXIl/QPdw25ZV1j92yzGwfoCCrTt6OsmhcU7Opdxh+VfcZqZJAtlyuoSywTfFkhtxC/IWrggpum4haNpq/6bIcenGSRgN7p3cVOcjM2FidITD9GTExRQfShfc1dPeiUk7muqw2OAC1VqTizYZ0dBJQdwdy+qgypxFCajeEsjtiFQ573UbRBXskJhqn2NLJ74sfPz6fRLEyXBH8qZ1ntDFl0TTE6DZCrnVW52tVId2/49rtFbPpUO2Qqe0ufjkpOXtE2uzrpVNTUnZkO0HuklWXs4G6fhm5lfR2aPx X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 019146e4-27ea-4314-ed08-08dd6443401c X-MS-Exchange-CrossTenant-AuthSource: DS0PR12MB7726.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Mar 2025 04:30:15.8840 (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: Qtnb9QJ3zI2b0wBJzD0/uvfokdoYLRUSlerU2hIkRMY3jtK8kRD43TjbsabEcIhVv8Md5w1idXIjRyVWn0c26g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9260 X-Rspam-User: X-Rspamd-Queue-Id: 46C001C0002 X-Rspamd-Server: rspam08 X-Stat-Signature: gywqcdoaxq361strhrzwtzxtqactf1uk X-HE-Tag: 1742099418-14628 X-HE-Meta: U2FsdGVkX1/zphDf/jytVDcLr0Orgi+zExbBH163l40p0PQhXtrrFgmFBOC6kyxWbvtvpMK2PtSmpfWgyo5K0sshJ//dt9D0LvS5Q4DWEWsddvnyo17QUcYnNJPXINyR6x+UYevDQrLWu9O7du+f1aas5Oq6OpvC273XPS/J6B1QFdFjY4myMtSq2I9sD91STuOZxoh/newAvv8OYrLbeuSkI4qRpaA0nJe/obd6oVjm2nl8VN6hWtiyOuhiMQzokWoW+pT+IfsQZ94e0qs7uPWSrNrVU4pgzNsfkMPu0mT8MsB+3KngR/M6efMV7ZICW458hbrRbWyEnuTO7EbqsWFOQdaOLeJTOZtCQtSDKsNwRpcHGM14J3Q73JBIRJtLnPwhAMQP8BupuKtxeNx9myZiqzcp7ty8uU7uDieUrSjFQ1WqcoPVfng/Lz7xQE/VfOGKLRo2MT11urW/sL1eFNAdoTZLRiJMoBdi8ZkgW7//pCgD8H/j5VtV26ieEUQBiCtQhgc0eD+jgAdRs0OJokJf8+h8HzsFhWAnCE8GVGqkuh52HWUGDChgDtyx2vcnsK+4s9RrmGxl/iSId7X6LelIgbV+qBgkE7V6l9IcwRqpJoFOCrOB4BmT738w9FbBm48N+G/ZESu10hPDTaRPDCEY/0UpmcrLrR7+OudP+uJ2zNJkFfIwW2WJjwfy75FaRTNAq74cJDc71Lo5dQUMArYp93YSW9fRst19d+NYKWJrLx4+v3cJDGH+0lgzyiAzd5l3zqfILDfnKYFMZ1fovNvlH5oXMtR1IaPh/LI5PuqJExEY9JwKkuPkyEyPSojmdYYxz/C2fGBVnm9bSSHtTdHSk5XhKG2k9xB8oblY42gwqYEoab3HSWsAwbLj74Vos6E/rjnVtfmrhCzt99ZJR+xsxx5kxF5rVvR/gLLwrQPGgnR0S5oNlRtLDRB6JjRYjOeJ47KvMikDe878Hj4 VreL5H37 o9BoFrIs0UeUpDhn7q0lvpOb1GtMoDWq6U9Er/N/6+n0sGY0UFCp+W+pAr1SlGtMqlARQeqCBjr0pD+Zwyd8K8UmPquRAlHfKcRDBlzq9z2BZ01gKO1sUzG/vdXxlhtBbLTrhs19Vi/0p2vHb0N7yChJZfOITSEUDwt+DcYmAKMhh6GxyGWZVSIiL0ZXb1dVs3ULq7IARx0mx2jdxWo8P/doeIyyrD3pWz5zAtynKSA2CHa/RuGi1pLD7+eP0R+vkMD5Z8PnX82aYv/A7jAW2Zm+pHP2Pn8cMx36L4KOyiI+SGtbb/U6wHhn4VJX5wk8cNmvrNZ27X+rsCmGZWRazQV9fxwMYMwJC+bzp2w5oWIVXw0BCPDhx5BoWNhjpaw7hjR0N 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: <linux-mm.kvack.org> List-Subscribe: <mailto:majordomo@kvack.org> List-Unsubscribe: <mailto:majordomo@kvack.org> |
Series |
Allow file-backed or shared device private pages
|
expand
|
diff --git a/drivers/gpu/drm/nouveau/nouveau_dmem.c b/drivers/gpu/drm/nouveau/nouveau_dmem.c index 1a07256..f9a5103 100644 --- a/drivers/gpu/drm/nouveau/nouveau_dmem.c +++ b/drivers/gpu/drm/nouveau/nouveau_dmem.c @@ -218,9 +218,33 @@ static vm_fault_t nouveau_dmem_migrate_to_ram(struct vm_fault *vmf) return ret; } +static int nouveau_dmem_migrate_to_pagecache(struct page *page, + struct page *newpage) +{ + struct nouveau_drm *drm = page_to_drm(page); + struct nouveau_dmem *dmem = drm->dmem; + dma_addr_t dma_addr = 0; + struct nouveau_svmm *svmm; + struct nouveau_fence *fence; + + set_page_dirty(newpage); + svmm = page->zone_device_data; + mutex_lock(&svmm->mutex); + + /* TODO: Error handling */ + WARN_ON_ONCE(nouveau_dmem_copy_one(drm, page, newpage, &dma_addr)); + mutex_unlock(&svmm->mutex); + nouveau_fence_new(&fence, dmem->migrate.chan); + nouveau_dmem_fence_done(&fence); + dma_unmap_page(drm->dev->dev, dma_addr, PAGE_SIZE, DMA_BIDIRECTIONAL); + + return 0; +} + static const struct dev_pagemap_ops nouveau_dmem_pagemap_ops = { .page_free = nouveau_dmem_page_free, .migrate_to_ram = nouveau_dmem_migrate_to_ram, + .migrate_to_pagecache = nouveau_dmem_migrate_to_pagecache, }; static int
Currently SVM for Nouveau only allows private anonymous memory to be migrated to the GPU. Add support for migrating file-backed pages by implementing the new migrate_to_pagecache() callback to copy pages back as required. Signed-off-by: Alistair Popple <apopple@nvidia.com> --- drivers/gpu/drm/nouveau/nouveau_dmem.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+)