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 5E719C77B75 for ; Sat, 13 May 2023 02:06:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EE3C06B0071; Fri, 12 May 2023 22:06:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E946E6B0072; Fri, 12 May 2023 22:06:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D35996B0074; Fri, 12 May 2023 22:06:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id C2E256B0071 for ; Fri, 12 May 2023 22:06:35 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 85DA1A06D1 for ; Sat, 13 May 2023 02:06:35 +0000 (UTC) X-FDA: 80783592750.15.FB9D767 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2068.outbound.protection.outlook.com [40.107.92.68]) by imf09.hostedemail.com (Postfix) with ESMTP id 6B638140003 for ; Sat, 13 May 2023 02:06:32 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=Y2GjO6ZT; spf=pass (imf09.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.92.68 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1683943592; 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=oG7JYvn61Q12HdENJ4dw7LrDt1HRLBd+mOyfbd1FJsY=; b=WBXirReAADnSPjtPXYAHixVwRIgNbcDTWG2Q43XuvXCUEadAsBhLLVXIC0j20R0wV3I58V Aqz7q/DU/EcnHC8n6wHgZ85+UXQmZAxZhIcssFjfyBp1cwDl8l5JAp0525W3DNIs0yATMB rT4IMyoMEPvNLDn4H2KuUyNhKj0nS+U= ARC-Authentication-Results: i=2; imf09.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=Y2GjO6ZT; spf=pass (imf09.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.92.68 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1683943592; a=rsa-sha256; cv=pass; b=SG5uZ8+Ptn7o21ene3SIoixTA4XqJ6pL5VBBOGEYvpu95uGPt1IyomfVa4ovJ+GD7fWhI4 Ynd8X1WNoYPACQv/HmOPTl8k3m2aS7IlE/p7IZZ7zRkVDVfOVoWLBhoznuZifj+uno0o4H Nen2mnCqEhqzPfzmBlpflDl9u/UFBWQ= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iLJw9/Yrsia6eTM6roCz56CHSHn8V7HDsY4NaCS/TdH+/IVNaWGWntlGzju3VSqLPh39Di72TyfnzWuxBB4XNcYLi9P+HAdvsNmmkvCTlNeQBWucN+nlqSu8ngAGl//ATVDQqBmoTw620ANLCeluXASNWuq0khe+G/2HQn0u4BMRt3oQLVRwbJJfVp/UBLEHvg+cOcm0Pn8UPd14UfTsReGl41TB0kO2qhGpV6+6FdxOIwFCQJP7Nyho6bazQFVkoD/6DyKTjH+tEWVkFZrGnh3XBUtvktUAP1TdEG4OjpJAllxPyW3ukEO03yGABp/79QU2PxqVtronuhOnfI74+g== 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=oG7JYvn61Q12HdENJ4dw7LrDt1HRLBd+mOyfbd1FJsY=; b=WTgqBLR+RixfLUm0IoOqc1PigR5RFFhIt5Be//4ggrwI3Zix2XXK/XUF8c5Xvb6nAPrNGcuqvPy5snFsE+uMzVE6qndd17zaEBF/Gf1v+LDS6yVByuDPBlwY/jo5Rk6jwe2QuNANjXF+qonYuPnV1SmcUhb5I1/aUnI5OAsjnm3C+tfh3AGrW/78IyNyGW4cuuwxM5Cwk6dmWv6KUfw8ZlaDyVhtjY0NEznW7A+axW7aCIIYJVlWuDxGSWOA0O8FCg3OYT6Vjp6tEQqP7WAVS6AwPWSeD3VxoPcTG/7vgyuXzfX6cM6Ib8SLjaQRqfYa2pydkcbW+2ybuyKUujVWRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=kernel.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); 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=oG7JYvn61Q12HdENJ4dw7LrDt1HRLBd+mOyfbd1FJsY=; b=Y2GjO6ZTahdtYqIXvfiEddqgPnIW5iiNr3KqQ3toZUU1nfdsQ4VGgeUe530qd/MSUXRwVjkV76vmlOGNLIZUymiyzwfhP3oe1lPUdnR5jxbxYPqWzZN0VCEHJyFegYAdBAUSj8Z/bbw2rsClMLcpDxlrgGKDow4WndqUoiX1fp8x7GcgfKLaKEvtykZBuyXZVBx5dOXkHvAyeTaRg9yyl7JSVXe59JKc1T2e9FeS/YpI9HUORp6rXfBYC0u5PW8rLrLedyHN2NR6G+rq8JXLzH5/QxwizsctGcN5E5aT7kPw2D/mRYh6kbXTkCVQcLHHcJMsg9UsEUdU18VtpNie0Q== Received: from MW4PR04CA0205.namprd04.prod.outlook.com (2603:10b6:303:86::30) by SN7PR12MB7371.namprd12.prod.outlook.com (2603:10b6:806:29a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.22; Sat, 13 May 2023 02:06:30 +0000 Received: from CO1NAM11FT034.eop-nam11.prod.protection.outlook.com (2603:10b6:303:86:cafe::d1) by MW4PR04CA0205.outlook.office365.com (2603:10b6:303:86::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.25 via Frontend Transport; Sat, 13 May 2023 02:06:30 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by CO1NAM11FT034.mail.protection.outlook.com (10.13.174.248) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.27 via Frontend Transport; Sat, 13 May 2023 02:06:29 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Fri, 12 May 2023 19:06:17 -0700 Received: from [10.110.48.28] (10.126.231.37) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Fri, 12 May 2023 19:06:16 -0700 Message-ID: Date: Fri, 12 May 2023 19:06:15 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [PATCH] arm64/mm: don't WARN when alloc/free-ing device private pages Content-Language: en-US To: Ard Biesheuvel CC: Andrew Morton , Catalin Marinas , Will Deacon , Anshuman Khandual , Mark Rutland , Kefeng Wang , Feiyang Chen , Alistair Popple , Ralph Campbell , , LKML , , References: <20230406040515.383238-1-jhubbard@nvidia.com> <8dd0e252-8d8b-a62d-8836-f9f26bc12bc7@nvidia.com> <90505ef2-9250-d791-e05d-dbcb7672e4c4@nvidia.com> From: John Hubbard In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.126.231.37] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT034:EE_|SN7PR12MB7371:EE_ X-MS-Office365-Filtering-Correlation-Id: 0dc4b180-bd07-444d-1376-08db5356aac6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ofkLTJzhw6xT4ycMzyQCbOJSgxI1u9UrGLbNRz6bS7j8BdCw/vndZtwDKNy/DAviUBfVY4HpQbhWK1/lVBI1nUQ9bd817zH/VXhOoStMaYmoAISW3IiBexwfa9Y/hLZPpoo+0w9eGcyS/2dT6xilTOVO5pD2iqxHbxv1WHSnTSAl9MMkuygr/4DTbNnoV2YOPDivz2pjTJJuhiONKMpzebWw/6791NWXe/juvFBLoyzAnwksP4Fo1QqyL+dPkA6flNXSOicasPmlxT+VDU+L2eyIJZIZY36mROrhXgUfGchE0ve0GW200qZfO3EN+H4RbQhMk3TJrtXSCjrgKIPMaSqfuh78YtEJp1gt8gBfUwwl2gibuPWGfXFRkrVygSNWyPITXNTRBTiwemEk2ggzS90r3qfFDFGcv1kOXUEIDityIBpf0BrQd6jMvmKfxbJ9F1+XfG6U2SsuN5VBpMCPPiUud8GtSw30RrPeFxRzWnRWS1yGPyDwDzjVexuZ75G79QF4Wlq/L3MUPQPwCSjMOsiSp8Uc+9diMQ+lrXEbj3klWkf4TpommI8mkci10BNK6W2MSzb1Pidweq1xiKYv4qSz66UAs4kcUHe+ZQ5E8qpK/IAQQoKlsz/MEubOjIeVgxDOnatt9y7JiPtXXR+6iCL3GtQZuzgC6t51+QaOKxOs67baoiPZWo8tACsKIXiIE6MwHqLtk1cShr3UwiuG5fqNgBaDwNS/XyIy3xDWcC8ujVrHgrufUMgESOHE/oxa+ZXwjrHxJ66HiT+8IrzNag== X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(39860400002)(376002)(136003)(451199021)(46966006)(36840700001)(40470700004)(36756003)(478600001)(86362001)(31696002)(54906003)(6916009)(4326008)(16576012)(70586007)(70206006)(316002)(82310400005)(40480700001)(7416002)(2906002)(8676002)(5660300002)(8936002)(4744005)(2616005)(82740400003)(41300700001)(356005)(7636003)(16526019)(186003)(36860700001)(53546011)(336012)(426003)(47076005)(26005)(31686004)(40460700003)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 May 2023 02:06:29.9520 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0dc4b180-bd07-444d-1376-08db5356aac6 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT034.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7371 X-Rspam-User: X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 6B638140003 X-Stat-Signature: 1y9jh639wax7eyf1k4r9zpzmuk8bqacm X-HE-Tag: 1683943592-257042 X-HE-Meta: U2FsdGVkX1/021M3IPY0XfASoLkfUEO2CAp0Y+sviDEKFZRsZ2V0v5Ag2+kvwkEXgAP5+C3j+L77eZos1ljIuPmtjV+4Z+vVIrAgcB8JCC9niShQ/mEMd+VFJ10tlVDn2TYHQ0DTE5thmzC3MUYiNmwFHclDRLQq1HVh3yJD1yhnm8a8rKPa28jqc8gWZVqOt9R6jaKiJy1Ht9s28j365wZ9hwOSIe6t3ak2UdNGLefYOGXOalrx+qzwoaUrEOrKNlOuDLd0bBE7loDXA4qRu4bWSqsPYINd7bOJCHbDD9BSarDQwt4M9mB/wZK8+pmjEAkqFsgdOqPVlazP8y/7srn9532gJ1E6ydu2fv5Ny/BRBACwwnEp4ZMoA0Si9DF9HfNEc+nwW7FNuInzpz8QZ1cjRw/S8zMRSVpcEgkuY+L3hQi6CqNGVOVQAAro54UjUXnJzP/dTUA2ia9k1Wqluil6JYOVEJh4bfQuNqZf/TLEFMWt6TKiiU541KPWRjquJz2Ls7Q8Ja1yujRnhXsPJFGUFARWQN2Td+xAz4+QohGd+ajskRmG+xFiUCk6+4NUbD8lDWm8EZM4zur/TVAFFhlbIn/tJVmLit32EMc/AW+dWsDT3elOptq/XZiBYud9BYnqrNIHzq6UgKQ5W4QfHFIhjCjd9jVHLf2a2ggUGVrito99hnFh+JAAa62ARpxg1YEPuJUC/UZngzlzpfGRHisYHubbJP+9xMfvgrn8bNngab5J4TZ9SlCD3lj0HM39/o8OQPoOhK2B7QYEYmfDIU1YkmJde45fXdwt4erZd+sflhhXeIn95/t+Lf2WCuU4GQ/HUhMdDnY9OsmELYZS6Xi7jB8dHKk0MEN/gJ7I+85GT0n4e4m0kN9Z3AJQYTbX/ZDtpNKgwFpkOSLutDgq/yt4g6SrLNqAUWstIzFdIRsOR8th0i0I/zhAxIz/8WfMJlV4rBiTTV/i3rs5jCU 7yOhgera 6S8oq5i1xBR6aSc1VMczmiE4ubidYGDoQrZoMa8Lf+InjTIqlXqtpWDzcUMCMpeSglOw1Sq/zg9zIGG2qcJCoZa4pvMo6W+Bhzno3Yvc5unNOS5Vy23jGyQhhk7ElTC38+uXjguyH6cMcJrIdCUd7ZV40zkDQfFxyZBVCGpGS+nt/DhiNcQFZp7FmNOU3uY6dPlL6fwqSGrSdmEv99TZDo63UNE8fhieRhADnOOMKVd4mLjw5z+8el+Z/anHSEhxNw2cfwnu6Cta52NucCksEvdFSww== 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 5/12/23 07:42, Ard Biesheuvel wrote: >> I'm still not sure of how to make room, but working on it. >> > > The assumption that only the linear map needs to be covered by struct > pages is rather fundamental to the arm64 mm code, as far as I am > aware. > > Given that these device memory regions have no direct correspondence > with the linear map at all, couldn't we simply vmalloc() a range of > memory for struct pages for such a region and wire that up in the > existing code? That seems far more maintainable to me than > reorganizing the entire kernel VA space, and only for some choices for > the dimensions. The vmalloc approach does sound like it should Just Work, yes. I'll try it out. And now I'm trying to remember why Jerome didn't use that approach for x86 originally. If this fixes HMM on arm64, I'll revisit that question too. Really appreciate the help and advice here. thanks, -- John Hubbard NVIDIA