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 E1D18C43334 for ; Mon, 25 Jul 2022 09:40:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2CB2D94000D; Mon, 25 Jul 2022 05:40:15 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 27ACB8E0001; Mon, 25 Jul 2022 05:40:15 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 11B7894000D; Mon, 25 Jul 2022 05:40:15 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id F30CD8E0001 for ; Mon, 25 Jul 2022 05:40:14 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id C9076A0477 for ; Mon, 25 Jul 2022 09:40:14 +0000 (UTC) X-FDA: 79725126348.03.E406738 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2077.outbound.protection.outlook.com [40.107.101.77]) by imf05.hostedemail.com (Postfix) with ESMTP id 41B0A10008E for ; Mon, 25 Jul 2022 09:40:13 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F+M2/t3hh9RVpLldnrjSQOFol68rhJkpt9+8uP55PzayvpJmPTrjEqN/7WQBJpP/F+/cGwFypdEG3yVf8F68XNGNmTey2Gmfx0JktUR7QGEUs6AU5fdoBzBfeU8dcrCtgOcGIXH8GFZqxrS4lYbQ9Da+862pouOMz9dvor1e/x0cTwCusC+tjBOIp2qk/wFthDEDp5AIDaxPILXIzWoV3LHH7Wm/gHvxUASqRy5ppmUBxiWBiTYDKIMtK1RnD8CNzoYtK32z2wmrcDmAswBXJwxib6o/2/1auyClVE3b6CVXAlTz6MPy2jG+kLgKEoQmS29FfQa5EGN5M4NpDhEQlA== 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=40ArEgbz0SMOD7TOPvcMGAA8cZs9dBbBHnswNjB/DUU=; b=jCe2tgr/kRbEU3kFsJSApcAhYK/FOBuh80B9gnOQ+++gPaNVw1bf+ckbqJU9iSJQKWonKP1B8xesyxaZvxKK7os9S5765s41xtxGDuzXcDFbkhYF6dBFWZ6BN2Y/yNaj372Q3zjbouzuwjSbq5xwEJtxsLzIj8p5jmLHmb0dMfOTprAqui2rAE2jHBIfJDozUbGxBYMNTSwfuICRm/bN360MCgkJpv4COKYbr/IO/ocHqVtxP/H2/Cr0GNK0elmyrIBZ+TyEaZmcD3O54McwfhtZ9wekzCUrHTCvYIaunuo9+s/+KbtdJ5N54kYoezL3TXGrph24Egyn0hWrrfXlIw== 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=40ArEgbz0SMOD7TOPvcMGAA8cZs9dBbBHnswNjB/DUU=; b=YzwtUh61Z5URgcZ0mf/p6YWfsZgjQp6VWg9Md4bLmK0Ygj9oMrJ2HAAXkqPyYLGgGV11UfFuY4ein+GH72HUgSLa0+uR426dJIZJcxBUdLIOfiBQ31YvepPtCGVuAMuHW9wdcG0ClvPx82BxwDu/uwmdP1tyFShzFvFedp9XPpKOreKGrI6eSm1WkP47sH0EpjhrcNx0NrxOlFBdGwCk3ZZQPRltwJDXNLIXliERWBgv7BrE47ljvEN5QKnb7Lk9ov8CSATv83Y7uenLhgk1n+XRtSuQHge0g8L4VBufr+IekipxOGUUR8KHlakKU7WstPyFUiTctglA9gsCxUmvsg== Received: from BYAPR12MB3176.namprd12.prod.outlook.com (2603:10b6:a03:134::26) by DM8PR12MB5462.namprd12.prod.outlook.com (2603:10b6:8:24::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.18; Mon, 25 Jul 2022 09:40:10 +0000 Received: from BYAPR12MB3176.namprd12.prod.outlook.com ([fe80::eca6:a4a7:e2b2:27e7]) by BYAPR12MB3176.namprd12.prod.outlook.com ([fe80::eca6:a4a7:e2b2:27e7%5]) with mapi id 15.20.5458.024; Mon, 25 Jul 2022 09:40:10 +0000 References: <20220722225632.4101276-1-rcampbell@nvidia.com> User-agent: mu4e 1.6.9; emacs 27.1 From: Alistair Popple To: Ralph Campbell Cc: linux-mm@kvack.org, Felix Kuehling , Philip Yang , Jason Gunthorpe , Andrew Morton , stable@vger.kernel.org Subject: Re: [PATCH] mm/hmm: fault non-owner device private entries Date: Mon, 25 Jul 2022 19:32:46 +1000 In-reply-to: <20220722225632.4101276-1-rcampbell@nvidia.com> Message-ID: <878rohbkeg.fsf@nvdebian.thelocal> Content-Type: text/plain X-ClientProxiedBy: BY5PR16CA0007.namprd16.prod.outlook.com (2603:10b6:a03:1a0::20) To BYAPR12MB3176.namprd12.prod.outlook.com (2603:10b6:a03:134::26) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: bcd8fb8c-740a-4e84-b0ef-08da6e21aa9c X-MS-TrafficTypeDiagnostic: DM8PR12MB5462:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: b+vc58IA3mSDwuWEwMYR/Tw8vojoXi7Rxiqw4j+aL5UIHPThdyUUEfLbgYhaadkISeHdpWqJIJKENj/QGsYvAc/OOaKcHxzTM8IgaFTUsVx/buTKJLLMxiOJhvEZjSK1GJUFz94kAdC/NfZHVUx5iYYFvmargnsBE4o7uY5LCZWVzJZmfeAc1GTrOrVHEGGJQHhlsVXmckqM1sMlE25UJBTl+r3wXZO46quBbs/zjbjQ0MsnaIsWtl/+JaHJnSeEvnLo9xGGV/TeB8zWzwT1MeoyDcS1LlVRrRlJN8wAgwtgrCLPJ7TPna5z5BXyz26/hUXQbqOAKYAH6Y2aS1ydVeoljq3sRIkoGmbnsB52P32brAvPDwFV0FZUzyZ4304DKppVb2sXHiuP5OkOBUGiwhuHOdGvoGCM6hTyk5EC1FIbc12mPI4i7LIseAvnVPnne6i3NX0pcIPwAuuLci7HCdijxCY0pOyNLstfo9tULn6e3vh58gWr7dIV3KtdDcyWuDFne2QYp3qRSKXQkVmUIlbo+WD2qwyOJ1FqmjP6tSCggi80mIqCExOslQ9/U9GUUIWNtPUi+k6oQs6gIemnf5ZtBb0I+K95lKQtC4pfeLTnwCtx84bNVkyoj4P2cKMBZBCHFR2INBpi8dOH4iH7GeNk8Xc/in+OVj97RCf1L7liXGr2c2aQTuIciKEFXht9MTeywCh02hAtHwM2KxIQ9CmIb7Osl98zbKokYeYkeNdW7nz9hy2vu7SbFKL0acbE X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR12MB3176.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(136003)(366004)(396003)(376002)(346002)(39860400002)(38100700002)(6636002)(54906003)(316002)(2906002)(186003)(6506007)(6486002)(8936002)(6862004)(5660300002)(478600001)(86362001)(41300700001)(4326008)(66946007)(66556008)(66476007)(6666004)(9686003)(8676002)(26005)(6512007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?z/hArmHS3fhurtBT/RpO+3TGdr2YPn7EMkVc0z1RlaFDgbttVvIDl7gxQWb3?= =?us-ascii?Q?9QbATTR1Ok4wpO0AWHtDsYZq+OfwxKV+c2Aq1+rb4mL4Xkjl8oIlBOSk8yQT?= =?us-ascii?Q?hGvknB/JLVtPYkADjlqHGNLNnwOvv/Cso+K4MaZWASzfwrRfwHRt66LDQ0mR?= =?us-ascii?Q?Pg+YC8CJFLHkhX5U4WCS2pgsHJxgKEC114Co29gurbjMXVwOA3ovHjMPD0MT?= =?us-ascii?Q?9pBFNg5moLKLrKqSRF3Q3BoXuWTykWV+PSg8h9n4Vrmwq4F/rj2ymcVRtXe5?= =?us-ascii?Q?bUq6oGzPE7fcTYxow55QH5/rMLuBbYL/h/W/C8P0cV3W0m4a1cOK4rG8KlP5?= =?us-ascii?Q?Y7ykxaIPvmXUcPAopZL3rJiNsOUG3kZKEYXKWuNAFux5a+3jYo2fzltQaW5s?= =?us-ascii?Q?nCwQWxjC51zByrWSBrC7eZAR1FnRpsxzBOoVbi+9FI9XUjxtcB0BbKzio/ur?= =?us-ascii?Q?YAgm77XfkII7RAfwo3FunF96szzZOdDkW54l/JfG7Z5ltHKEN2b8kxhkW+PX?= =?us-ascii?Q?PkzrPgpuF7qUeSnDh0PyB/L5zC4rXkd6oSsLi418v7tl3RjeOkYcq0232zRm?= =?us-ascii?Q?SUxuH3Gj/YXLnhEmQcj6HQ19aFW45+1fIesPRJCGOHmUEggwLgVMQAJLbF6y?= =?us-ascii?Q?uYDvsFjGFv6zDccjwXHmp8TaGE+8DUYEy8wYmYY2DzDPYPffZEPV4+cLLWON?= =?us-ascii?Q?PPJRbA9NCZWe0ld9Gpn+dypV4OW0x6VodjgaWo0kMy+gOFsA99J03k64xH+g?= =?us-ascii?Q?fs+YPeBWaUmJltOZQMOO77obtZtE6PpsWIEvM1v26FmgZtAtEs+X/MF328LV?= =?us-ascii?Q?Z8H5zXSij0wwWbpWLTYzjkPNj8vjhPh4Ble7jUoFbAm5J9a6bKs/ZPgijj5w?= =?us-ascii?Q?mDgl8obSYLzsoZocoZTi1L46edKKiwatkRKHfOREmUVqvvnRJ5XEAdhhTtPq?= =?us-ascii?Q?Ve5BZfRvNyMNYZqI0HRBW3p4zmhrNXy6Mk7X1FMeNN1ULhT/fdajbXeqk+0j?= =?us-ascii?Q?ZY/d3UYCHd2479P5S5ZrfvQriqXlcqd6obCNI8Ld1o051sYLpTOUMNcUzd18?= =?us-ascii?Q?ASCvychXeLQhQbSyq2bHLgXyy6SOv4Yszh2vSWj/sgridcDJ8ncTj7ky4tpU?= =?us-ascii?Q?wtkW2LK8Dqyj8xhSkUKdWR1hw+Zm9gQC3LS8F7Zb5Jm0hI/5Q98IfLvTlyKr?= =?us-ascii?Q?U7wMIVWOBX5lnEgAbqAj2gvdqrsAe+r+TsKdLpYxwNeOE8Bvy2zCQIMD80O8?= =?us-ascii?Q?tsJNTgnw088erYnY7DtQMN9Xn5iK4KfmjWc/p6s4zAlYWOMwQqzatZsWyV18?= =?us-ascii?Q?US1n6SH4P9pa8KPU53q22+e9z+1icw9img2DvX8XxpeSjaz7F8MbKuyjHNEf?= =?us-ascii?Q?YhmX3/wkhLchvJcZRDWmjJGlSQOKat/qV2Bs8svhzcKFZDmaN2uzL4YKKUFN?= =?us-ascii?Q?rg7EFMnJOUaFcxmEG4FHcRqFARYQ0dwECnT+dcokiB1rwWUcq6erix7ICLsE?= =?us-ascii?Q?AcIgOZv1HnHDPkqOYZMXNZudvmR8UOTGYHh+unN1epBinXsDfdNl9HFxgc4d?= =?us-ascii?Q?pUbhlN+1KDekpcoT3gTo8YCY8MFXs4y/vqOFi8bj?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: bcd8fb8c-740a-4e84-b0ef-08da6e21aa9c X-MS-Exchange-CrossTenant-AuthSource: BYAPR12MB3176.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jul 2022 09:40:10.3436 (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: d2hh/5VIs9QcKch0iS5HnWEvf5evPtgEcfQ+JVOkPicJYB4fVE0SD+E5h6Ski63Pv0R8pJGjYnlqoyBb1oMLAg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5462 ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1658742014; a=rsa-sha256; cv=pass; b=v3eo+Cs57n/pej6LRNu1f2cIqJfO5w0qfXp8H4pxQgvpzem6nUm4EZ9tYJXFFW8yk6HeY+ yTtpPu2v2nZXzpJrYDB2yUwBsmuK3wW5pMLe5doJfiIYIJDo0KWdo2dGbK5rvxZhB8R4pU gAeGsYOhXuuYGZkHKuTIDlqwK8YYi5M= ARC-Authentication-Results: i=2; imf05.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=YzwtUh61; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com; spf=none (imf05.hostedemail.com: domain of apopple@nvidia.com has no SPF policy when checking 40.107.101.77) smtp.mailfrom=apopple@nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1658742014; 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=40ArEgbz0SMOD7TOPvcMGAA8cZs9dBbBHnswNjB/DUU=; b=3sLqyBFLXvYyXxgaovqn4Ye4RZKCjhksVhC6YQjo4/T5/9kxt1ki9lpry8nzDgNyiELJxF lNcIIvLzCaTOwqWW7Z8cAC5lzLdZk+t+b/1187jKoKoNuIZnr48SOLO9Ko1ys/Yf747FvR zUflkWkt2BgYUPaDvXQZoKBcgv7MREA= X-Rspamd-Server: rspam12 Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=YzwtUh61; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com; spf=none (imf05.hostedemail.com: domain of apopple@nvidia.com has no SPF policy when checking 40.107.101.77) smtp.mailfrom=apopple@nvidia.com X-Rspam-User: X-Stat-Signature: 8srpb8iopuqpfsx8gxz6eaq66ti73ju9 X-Rspamd-Queue-Id: 41B0A10008E X-HE-Tag: 1658742013-315364 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: Ralph Campbell writes: > If hmm_range_fault() is called with the HMM_PFN_REQ_FAULT flag and a > device private PTE is found, the hmm_range::dev_private_owner page is > used to determine if the device private page should not be faulted in. > However, if the device private page is not owned by the caller, > hmm_range_fault() returns an error instead of calling migrate_to_ram() > to fault in the page. /* * Never fault in device private pages, but just report * the PFN even if not present. */ This comment needs updating because it will be possible to fault in device private pages now. It also looks a bit strange to be checking for device private entries twice - I think it would be clearer if hmm_is_device_private_entry() is removed and the ownership check done directly in hmm_vma_handle_pte(). - Alistair > Cc: stable@vger.kernel.org > Fixes: 76612d6ce4cc ("mm/hmm: reorganize how !pte_present is handled in hmm_vma_handle_pte()") > Signed-off-by: Ralph Campbell > Reported-by: Felix Kuehling > --- > mm/hmm.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/mm/hmm.c b/mm/hmm.c > index 3fd3242c5e50..7db2b29bdc85 100644 > --- a/mm/hmm.c > +++ b/mm/hmm.c > @@ -273,6 +273,9 @@ static int hmm_vma_handle_pte(struct mm_walk *walk, unsigned long addr, > if (!non_swap_entry(entry)) > goto fault; > > + if (is_device_private_entry(entry)) > + goto fault; > + > if (is_device_exclusive_entry(entry)) > goto fault;