From patchwork Wed Feb 19 23:13:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Balbir Singh X-Patchwork-Id: 13983111 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 68C8AC021AA for ; Wed, 19 Feb 2025 23:13:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id DCDC5440185; Wed, 19 Feb 2025 18:13:54 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D56CD440179; Wed, 19 Feb 2025 18:13:54 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BD122440185; Wed, 19 Feb 2025 18:13:54 -0500 (EST) 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 9843F440179 for ; Wed, 19 Feb 2025 18:13:54 -0500 (EST) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 3CB3AA0A8E for ; Wed, 19 Feb 2025 23:13:54 +0000 (UTC) X-FDA: 83138248788.30.1C07CDB Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2056.outbound.protection.outlook.com [40.107.237.56]) by imf07.hostedemail.com (Postfix) with ESMTP id 78ABF4000B for ; Wed, 19 Feb 2025 23:13:51 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=ch56kDnO; spf=pass (imf07.hostedemail.com: domain of balbirs@nvidia.com designates 40.107.237.56 as permitted sender) smtp.mailfrom=balbirs@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=1740006831; 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: references:dkim-signature; bh=4qDdt93IPGbSB9+3t64seddy0r20OBPqedc1i1uksQE=; b=hHWVomJoZvdneJ6dsn3IvETeCU7osC7JV4R5upU4RcZKsMcb8mDNQ0h8pMPTKGWSasln0l Ll1VcjlPTTVauYcqTUuVjft366qnRXW/hncaIM1nhMCazI6tfY4InGfhd+JEas3vjsvT8M 73LX433VvTZfbre+KCr+w4lu+iHaEpA= ARC-Authentication-Results: i=2; imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=ch56kDnO; spf=pass (imf07.hostedemail.com: domain of balbirs@nvidia.com designates 40.107.237.56 as permitted sender) smtp.mailfrom=balbirs@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=1740006831; a=rsa-sha256; cv=pass; b=dFHV5bKh7TU7KjUwoyL8kyMKT7LKpls/zBFdmlqIcpeqmKGUm/idGhe9TlqCt2BwyDop87 rB0PjueAEKRFOb0xvFgkvfNHRLBuPCh2pRozr1OsQ0lfGgzDVhvxcbPJaIxoSUxeJauy5a +c5dqhPbXaECoeZuh5k63sUekDN7tJY= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TvetHr4y9vm2Zsc1GftBUNCPVegvbmwTEyoziPIWYtF38yRDpqYP9iHOwpnXZO+Du01R6joL1G7c5bwsDLVDz5Zjbfuh6BZq5OdDNa2CfR1wvaybHx0sWkI8Dh4TnaeKVUD2te5eO4yHtqzDMVlmvc+ixah897m0gAV8Ua+J1T+JRvhi3u0rCTsfAS9wRjS06RhAtJ2awvagNJZ1y4NYEZ1Dvkpd4MM182118CnC2mrcD3OiePtR0EUuEo0sdNdjfONU1Kf/Z+5yOhdw/QklyNtH/rO7CkQrjINIqk8mVwfjIxiUT3e9GmE24Rn3s0LPL9cjuaJGP7Kf+Aqzj+qfYQ== 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=4qDdt93IPGbSB9+3t64seddy0r20OBPqedc1i1uksQE=; b=Wo0chOmHN2v2tY+wj+ZM9amyHWkwVId9EiMaP+At883vW9+YQGaTbjl6AUr9RPhjiWWZooh7Ype2t+uUl7HmPUTW5rBuBAmzsLF5uqwOmze/TswoFrRGpthjM92KOOPFfW01m/StQLKZm3GwMsfRb9sKVSjwM8q+NbEag3Y5oohLm1bhDdAy6eBmGFN0RfAyCUgqMRhJiWq4mIuQYpSBtARB5rRdiAdoGd4Ih6BObmx2dGQAo7Z72pPpmt6ddWS+Dx3sJomCFQLA7nWxHSWIgOBtA9LURsH7k3B79odyBkdBXlbjlNR677Kb972mGROZnWZvWFX4ofvJIf/UoXfMGA== 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=4qDdt93IPGbSB9+3t64seddy0r20OBPqedc1i1uksQE=; b=ch56kDnOLL6HWLGozizlfpHEswmfJkUTnLMO4JFlpb+BddsZj6+1I68NPA6xQM+NyFrJ9Cvgk6o8Pv3wFOr/QHffRtWwoYA83RtWsQc7gIx6EFSHzbEtTGU05KOaFI2r/8TNZvhIMuvnAoMaqg+o82HLWBzyDtNXSd/wN88Y8s9Jw29UgEuNiK4rh7+E7U8IAd9YUZqsEGR7VudjMlb55qHTjt4F65x6r+z4jbPS2Mp5fulB28MAOZLn3sBy184GzJLyFtLYgq26QV+QqLuKPFkz1U7UQCSk+RWRqnmUZxjEHscNVEqUh/OcRni/J5Elu9K4tOwj+RPxW1eUciHA9g== Received: from SA1PR12MB7272.namprd12.prod.outlook.com (2603:10b6:806:2b6::7) by SA3PR12MB9179.namprd12.prod.outlook.com (2603:10b6:806:3a1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.14; Wed, 19 Feb 2025 23:13:47 +0000 Received: from SA1PR12MB7272.namprd12.prod.outlook.com ([fe80::a970:b87e:819a:1868]) by SA1PR12MB7272.namprd12.prod.outlook.com ([fe80::a970:b87e:819a:1868%7]) with mapi id 15.20.8445.017; Wed, 19 Feb 2025 23:13:46 +0000 From: Balbir Singh To: akpm@linux-foundation.org, linux-mm@kvack.org Cc: apopple@nvidia.com, Balbir Singh , Jason Gunthorpe , David Hildenbrand , Dan Williams Subject: [PATCH] mm/migrate_device: Do not access pgmap for non zone device pages Date: Thu, 20 Feb 2025 10:13:37 +1100 Message-ID: <20250219231337.364133-1-balbirs@nvidia.com> X-Mailer: git-send-email 2.48.1 X-ClientProxiedBy: BYAPR11CA0041.namprd11.prod.outlook.com (2603:10b6:a03:80::18) To SA1PR12MB7272.namprd12.prod.outlook.com (2603:10b6:806:2b6::7) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR12MB7272:EE_|SA3PR12MB9179:EE_ X-MS-Office365-Filtering-Correlation-Id: acc2a547-6e37-4483-c24c-08dd513b0f9a 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: aG4142xyGJSyfTqBbCKDB8Ssu2XrJUgRPBsOtT9hTArbYJ9WDl0GEKEXgQRZFOJR79jfAOluTtmmOcGGNKLa7igKX4xghvCVy/dhDsc+KS1YUiZ5DXO+fP0f5AJwVDbDTMhmsZ8p3n6gkQsjcM8SYNt6yarqaIbhoDffKQ3aDUxJuvOoeHs0DEhHs2QiYlZ5g6127Y+zf+hT66s5ggYWC1Nwm5vpFUd8GWxXEWAXsYqk/toVxfMp2iumwe5lkTOWFoVha85hwiYMdMXmRMOr35cAUXAoov/uFnmBB+DCPDX7ILCozKT/0AwZsoYGxJCAvCFqk+4MiYEDvEkUwGveH7tntoxYVJivMda7Q2FK2nyg5KOlK6Pk1rfcp1rOJTsK5Jj2v0X9gl7/EwKKLN22U5f3yhF+++p2jj9qT3gDai7ECIiwA97ALNGRhZ6HFjLQLgz5MvAOlZD6tp9d3oSWhbOiz14kSY5WA0i2hmsHWXMhbzWcjHwIkL7tlwJA6QJsjbghhhxqaEz1rGFEUtrR3EBJjH0eD97FRnrS6VIhQpm+V0BJfxqLT9o3DLAsHBSEUUu0BxUeenBZJ2zHPfkd3MOoAKAfXsABK1UWDm1khC/uzhHTzxsoMO/ihJirO6QC0/8Rgyb2qc143H2fEQ/kHtQEzfbjUhBwg50PVce8mrAsy4Bj0YAKF04p5P5OW6ElLk6i6X6Ltima5nCQerL67B2dojN85UAc5bkFZ6sAp5OuePC0MDF0t/FJYnzwlosyBls2L76RgVsuCYfQQaq4N/qH7kMOU8IBUNpAAbEwA8LRWy1iNKngRXBbMXKGnE8Ixvag/6WSkt7D4Z8rHYlCi62nuipsf2ts0SvPerB0tc7Luy+xequxhiy3etS4q9fltpe7wkXnYTZE/igbyZfjP4suP7HlTmNW0jlpchPWuxI8ubliOv2vBu3T3XonV4GA7TmybHbdfxBhresUMeL/xpK2AfQ6fMcqo7bPbuo/t1ydLu2ij6gMgzodfP2UjIFrgoY76d654MqdvR9us1bXSIvAC2jM47qVSbn3Bx6v3dM9p3nydcXhMcKLZKmiAaOzq9eZaq/27vf9f230seRglHTgNGxMY5MMLGF29cSCp5LQn+fIiNqelMk1YsRnK1bbTvkZG2qyd6Fbczeu8xEtEqWTQuNPVv+1oaHB8o0cmTjinYWoDLZUhJp7zJ8F54mPomq3yLmnFFklvy6xZyOL1Q00g92iie+UHduCvRfwl60QW3gaIoCk98pWA9RYO8clUWKDNwrcIzmvVPeTY0qgjvc6Pji+wbvrQyAMk2oEaCnAKT2NTifgu5Lw+ZePnoBj2d300iD79JxkKqP9cH0yiSxDzVVu30p6LWFNpG91MY1mzJiNnHiKx7XRXS5Rili0 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR12MB7272.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: riSqhxzm05avaNFQFBSPf0AjjQqpIZzy7yfz/6K783HksdBXpEs4JnkRw7xszD1cv97hGELOjFpLZmyudzxPIU+mu9A0FoFSAiScW2dRwi0TSrrfe0s4tMSz+rJhW0te2Z4doMjRndxbIn+jAQrT++yCGs8rMdgZ1XLk2LshCPgIaz5u3bSK79wWKztgNcwDc5EorLFHtf8Gro3diihD2D7C6OT4h9TIbeVBTkz3aM2Omla4p3VMdf/1Y3bkZgBUCU0Y330RDldahpIjzKZWs8SG7m7R63nsLvGiV4mPSUcLiV6X02NiXDQ4daJEY//yv6fj0kUGlcRLK1xV5TYYAsn99UsIXhYE5q2IFoj1Kiro5XRLO6aKvkFtOEj6gvcZj4OcL7p5cARDKE1S203TcjCbr5/+s31TJBz/XK9yP2xX7mTbtt+NbgSTEHXK83a3qw/9gY10sFkF3j95x4JI/cRxrhCqpl9OzTY1ySTB/Y51W6M9htfMu2Njct1+l/J8MUyCy26Hr8OTW5gXIQcL4ScP/kIg+xYvqmHSR0GpxgtMXMc2WBXu0zXsa/ppivSoPnqqn+MkAzj5bnPyzwr5zsIphRY1HTYcznUAca3QDDWHar0wFN8B5eCq+/ipIB4tOfRNvOS6FU53ZCG56yl1JCObw0JhYxKuaEx6glW+51rQiJrfyjJp+zdx8ItV/pXKUAfdcWbp1h3h7IBl6ZfFHVraYfu31JoVGjTqwSBa8o75rkjVgad2ijBgd1K3mUc/b38VEfhAVYafnxU/TQOawM4D2I2ZrDqo4Up/ktDEzuqhZywl/iqAHhc4c6yh+FzPUA0TiOWZJB22sqcd42w3a2agHXERALseSA2+etNm8BziouXqb+OBY4EUAer6WetT6Vu7hJkObOjNW1RL4tdE5EuNyxt2yJIxTjUw01zfk6ArTCApR09GRt4pZS7Dq3aYFKaBEI972TzVJ/xyXOrpV3ZB3i0Z9yS4vs5OK96z3xGMxaVt6uXsY5OfbIFa1k7f/Jz/y1Tjlj/aYgLe/Gj3uUAzw4o2wTWOa4tkPHWm3TngpK+SgwGALJjC9YamGBRClAcBOpzkmlx6Qji5yaUL0//tiGfA4SIkDvPLmF60mVo1fT69uiTSe6d7d/rlgFwhxUw5HHNTEm8IJRZMIgKvbjthSYHTmkqL6rVMtjrd2DCMrF6lE6QNvxhxacwhTmDKbUmaS3SXKa2zx79miyGnU3Z3FgsO+ibPyP9m9upv8zAWO7b9lyifN9IXfSP/NNuW8KuoC/RwIgLpVQ/KDCHCDvdRu9DkYgGvhj+z7iNhehVlZwSR/0UF92QKVzi9CMabWXKI4cu7ATVQwmJUv3RqYa2bw05MPFpWK0+ZtBGBHsIlVq1UoRtZMlGjo3poJ7cL46i85FSrD1hOXuGs0AzuDfvv0g7uHKtEg+Ufh/hyULtprfz/DD4NaQlx7knTOAmQfgUAhmNEDyyKiEZ6/RzXShZotr8bHr6l4nIiV92YJ6ELe0YL+/2Hsqe5eOWMnBI+nv+K39911FnZh1le0rZsfXcKMb2OxRUv7l8ESHw7xsvuRKQO120cntYW25fXKEn8 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: acc2a547-6e37-4483-c24c-08dd513b0f9a X-MS-Exchange-CrossTenant-AuthSource: SA1PR12MB7272.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Feb 2025 23:13:46.5710 (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: PqjXA6O74kFhJ2Q2tM1XCZGfOPUMUFB6LWqVFxFxr9ivX5jE7B6MBGjbL5BgAFFbZIq9/FVB/ZGDeIiw54E4iQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR12MB9179 X-Rspam-User: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 78ABF4000B X-Stat-Signature: 3ojk9xtxgq8ywd5kcrusdf4o8pm1kh5w X-HE-Tag: 1740006831-111990 X-HE-Meta: U2FsdGVkX18Y4qL2ETloGXDWIjtZAr/Q8TCky0MxTv6T5TZG1kSjea37zqy9ZYGXnNBRUs2kg7RMI7Y6Q21ko7IekX3ERnj9QrX+O/BqvHix+cUqsh552Rc6gp/VwiuPVAWmMMzsHmBlbuGEoxLinMGstP6xNNCFCjXukTp9Mh6INKzQEcWpN9B2YghAnwnsd+USTiqprUxhuhxDzOJojZAJBOgVA4HAqUJTOHPSAHa7oNdKSIh7GgYpLqzU0waYo2RAJWaxatMosPRWie9WEFtDPMoKfsSwFCx7pUuRt7gYYZlKEOjLCiCKeEGZMH0gUulDby5TYbYCsKFbaxfllajT9Jx877i4R8h/3Lum2lNbdQFZ5bGAkusqp/liT/Gze/biRDnjkCfh9+7a57dRrbN+gGBVsvyQ+X4/sqZSr2W3ggzIrhsUrE8fbUVwJbC0lvUZ41uEEZAaqU5wsiql/3f9HHo9wlZOyGu3ZqBKzVYpCFJO7Hidj5v/Cliiv4WLa5AuqD5IEAIJEnvZ2jxB/QHkzly4MXePDEZFlK4bRHITJC6SFCOAwpV+7aw2tG109XwJeWURQl56NO27tki0/4vI5MVz5kN9XpPGcqxh2Q077XN35Qv+pLCT9e6NwKLsgifoD6yojJDacM4dOi0tiqsVdCjH1BcyNNyUNFUcEGgSOnWbwokyrMuRz/XTsBqYYfJ7esU6M01WXjRwuvedwJzP38iMfglr1FxadN7TWjcmzx9zGWiyjJ/CD8lzOUXx+5lPzYPXbKSzS9WiW178o6QUdEhWBbDpyL7WA0qCPlf+BRx98Werby+nRCovIMZ6KqG2qerOtxV28xvHHwT78uD98dd2hzz8zOkvotHAy7PkqMjqxdKflNVnu3u/iJCkHR7vqphMtRuwV+uY/ZischhGFj9LkpNfS6abdGmQC6wvelk/4D/lnSOQhhBS4vrcBO2gqfis3QvYosOpqUa KyCKfCub shQPDzMjpWuCsIwP1S8WS5cnjwT1CuxDy+QWVVFJC5NliAw6jRWo/2N+TeSn+YJDrnO7E+tkighT66RX3EWajKf0m5mcAWoRGbHbihKqtLezVk5j0+0/IbHTx0rUyoYBC2sKCr3Jr+GWNAbNcoBj42/KcqIU+44qGZif/qsUmv2/VwPlLuo9phGfNp0UTU84r1edwndLRnoxGOGVYb1hrDfKIk18F1fgWaUoTM5DBfJBzyeAvMSywUpLZOOBlECy5d+y/WnDqYrGtSmOh2i/fBqh372eiW7D6axSws860/he39Vo9js+xHPa+iBWW/dA0or73j+AErHJkcgmXMfC5/Owmj125NjddL1Tj27GdAyPL9FwayR59fFQ1vFXvaTcaZnbfZMgk31g77xy9ZpRjss72dQyon1xbFY2p528TfSrTQa5K6tkBjtvDmwWGyZkD+RUR0ItZxrpot1VEnokr2JOCzkCKfimAqOcusiZr04Ar6eQ= 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: page_pgmap() is referenced before checking if the page is a zone device page and this triggers the warning in page_pgmap(). Refactor the code to use the helper function after relevant checks. Cc: Alistair Popple Cc: Jason Gunthorpe Cc: David Hildenbrand Cc: Dan Williams Signed-off-by: Balbir Singh Acked-by: David Hildenbrand Reviewed-by: Alistair Popple --- Fixes: 7f1cfd71153b ("mm: allow compound zone device pages") on mm-unstable mm/migrate_device.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/mm/migrate_device.c b/mm/migrate_device.c index 6771893d4601..e0bf771edb6f 100644 --- a/mm/migrate_device.c +++ b/mm/migrate_device.c @@ -153,14 +153,17 @@ static int migrate_vma_collect_pmd(pmd_t *pmdp, goto next; } page = vm_normal_page(migrate->vma, addr, pte); - pgmap = page_pgmap(page); if (page && !is_zone_device_page(page) && !(migrate->flags & MIGRATE_VMA_SELECT_SYSTEM)) goto next; - else if (page && is_device_coherent_page(page) && - (!(migrate->flags & MIGRATE_VMA_SELECT_DEVICE_COHERENT) || - pgmap->owner != migrate->pgmap_owner)) - goto next; + else if (page && is_device_coherent_page(page)) { + pgmap = page_pgmap(page); + + if (!(migrate->flags & + MIGRATE_VMA_SELECT_DEVICE_COHERENT) || + pgmap->owner != migrate->pgmap_owner) + goto next; + } mpfn = migrate_pfn(pfn) | MIGRATE_PFN_MIGRATE; mpfn |= pte_write(pte) ? MIGRATE_PFN_WRITE : 0; }