Message ID | 9cc175f877358da2fcf1b2b769030d457c16c5dc.1739850794.git-series.apopple@nvidia.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 37441C02198 for <linux-arm-kernel@archiver.kernel.org>; Tue, 18 Feb 2025 04:23:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-Type: Content-Transfer-Encoding:References:In-Reply-To:Message-ID:Date:Subject:Cc: To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=VENjcw892hS6S6Ehnh8sjwSOcKFsy/z5WoqOWPzB/Kc=; b=zgZqEeoYUDVbXwh1ZRYCTxURFF +X68KtPZs3E8OjWcwznJrrA0vRdOSLyfUqBChmxfLFfXRMMZAaTs/Kg1jHk+uIcy0QQnyUhBXkFDt ZvLREmmKBUIAtyGDRrDyBbqGrMgiGmMWzJUsyt7y2mFt/Nzq0jp/Ow/cAsm7EaKQ8eqLweQDFOhtd ZLmSqDrBtSmDD/1yeDOLuppn7jgIontI7wh67VqDAd1f+jpBUqnpId8yESMSEtLWISMB2eaU8Ca2k qQ+NnTkXyC5/EgPcuVK0i3WaHBDljtb/ZmzSVAES/O92uxVj4plkGGXWHgUNWZEonDs9GMxHdEOtT f0F2wxzA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tkF8F-00000006k6l-3AlC; Tue, 18 Feb 2025 04:22:51 +0000 Received: from mail-co1nam11on2062d.outbound.protection.outlook.com ([2a01:111:f403:2416::62d] helo=NAM11-CO1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tkEje-00000006fiE-0oCH for linux-arm-kernel@lists.infradead.org; Tue, 18 Feb 2025 03:57:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=u0JMNz6nM1+LJRi2GdyGpE8rYrj/aKHWgLLtlLasdWoox/86no7Brf2Y/PSlDO8csNxHlWukeXZyXl2ucJXQkcEvkaAj0K//NQsBvYx06RTkkzvYYppqrf+Pye9BuUub1wWiIoX0gGErp3Sy6azX5h2Hh9VAClg6NEjXQjgLTAFHkcBXPRlqDYE/+YTLBsQgL9IcpJuOmZEJV8hvA+zUuTApThxfj06YpRXgK8DWGhgsuCR0rRyjnthkWmTnrhWSbfsuq52EY6D6Hm1NvUncA+mgF84RXPXUfbghjSdCxIJC4DFb12wTwVLuOK/EkiiQiW2Mw2HQDlhlqGJApPGicQ== 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=VENjcw892hS6S6Ehnh8sjwSOcKFsy/z5WoqOWPzB/Kc=; b=lOKenUJz0RumIR1kmtb484o0agXCnV3RZOP3t0HGeyvxk+/rqJLClfSeLa1SIfv1E9nMl1GRMfJ8/hJ6Z2oGpYyD5i2TyZxRwmX17WkPWNfZi+x45GbcuChWl4pYJEixGNrpH9eh0eVb1eFlYJ6pyP74g3/FtC98QPjAvET1qWO7y3yntvbHlYaLvG0GzbZbVXJn37+tZ0tNSn75XRyzcVhQknlN0T5I9D7v7ruPmo5UHe/D0Sx0HRQtTQy1QuTh0CDkXivqCH1PvzoLbvnSQ6NekBaV4wns0QAasXAB6Fw+yyvhBAQSK7q8WPqDAqQ0TgIx4GPHRUSbt8paFltwfQ== 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=VENjcw892hS6S6Ehnh8sjwSOcKFsy/z5WoqOWPzB/Kc=; b=PsFAQY+UmmHvg+C968klRHvK0jg6L3RU/fID07uMQ17GLQHGphQK80XisDQVb14Z3P6CL7W2KYRkbkgHbAdWf0gkC9fXZc4H419UuXI3UV8qX1SRRyhEvUvStmmmP4lB+a7DsE66yrQVLd155gfgfCaWW5TqYlSBuIbVuy7F+R36qh/h6wh677z0bH8SWU3Z+22TbkZJYiJ7NP6Kq8mGdPhgXw0sX+CCe1afDSW2xBlOeu2+7aReEyXRH4YeS+hzonf2wQAIu4ILE3h9SHU6c0GZW+a2k1q0q8tMNM1t/ead/NJp7v66ZseF4IfA9NVOlzU0aZ6DwJcbTgPjzLXivw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS0PR12MB7726.namprd12.prod.outlook.com (2603:10b6:8:130::6) by CH3PR12MB7593.namprd12.prod.outlook.com (2603:10b6:610:141::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8445.19; Tue, 18 Feb 2025 03:57:20 +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.8445.017; Tue, 18 Feb 2025 03:57:20 +0000 From: Alistair Popple <apopple@nvidia.com> To: akpm@linux-foundation.org, dan.j.williams@intel.com, linux-mm@kvack.org Cc: Alistair Popple <apopple@nvidia.com>, Alison Schofield <alison.schofield@intel.com>, lina@asahilina.net, zhang.lyra@gmail.com, gerald.schaefer@linux.ibm.com, vishal.l.verma@intel.com, dave.jiang@intel.com, logang@deltatee.com, bhelgaas@google.com, jack@suse.cz, jgg@ziepe.ca, catalin.marinas@arm.com, will@kernel.org, mpe@ellerman.id.au, npiggin@gmail.com, dave.hansen@linux.intel.com, ira.weiny@intel.com, willy@infradead.org, djwong@kernel.org, tytso@mit.edu, linmiaohe@huawei.com, david@redhat.com, peterx@redhat.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, nvdimm@lists.linux.dev, linux-cxl@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org, linux-xfs@vger.kernel.org, jhubbard@nvidia.com, hch@lst.de, david@fromorbit.com, chenhuacai@kernel.org, kernel@xen0n.name, loongarch@lists.linux.dev Subject: [PATCH v8 17/20] mm/gup: Don't allow FOLL_LONGTERM pinning of FS DAX pages Date: Tue, 18 Feb 2025 14:55:33 +1100 Message-ID: <9cc175f877358da2fcf1b2b769030d457c16c5dc.1739850794.git-series.apopple@nvidia.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <cover.a782e309b1328f961da88abddbbc48e5b4579021.1739850794.git-series.apopple@nvidia.com> References: <cover.a782e309b1328f961da88abddbbc48e5b4579021.1739850794.git-series.apopple@nvidia.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SY6PR01CA0158.ausprd01.prod.outlook.com (2603:10c6:10:1ba::6) To DS0PR12MB7726.namprd12.prod.outlook.com (2603:10b6:8:130::6) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS0PR12MB7726:EE_|CH3PR12MB7593:EE_ X-MS-Office365-Filtering-Correlation-Id: ba988643-06b8-4cea-a580-08dd4fd0580b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|1800799024|366016; X-Microsoft-Antispam-Message-Info: 1aLv4yCLz2bzH0/2XPEileWU1UF5G3LQntK8G8TQ3jvJrKdyYsNXq7ydVgHuu3yd+d/KBUYZz0XTn3AdwKLEjPYxhGUZ5vuiIu6ALFnW418n1plC1h/SseYPqrXgKCJ9N3wUQ+UTe9AOQ4fDbHPNUhPfzP0Di1b/jH1R/pZ8z0M1SKWIpyN0qDO+id3mDf39uYzU/qBViXwQXAunUAY4b8fyidLXdOdERoG7q68Y8l2QZvQJDyt/FTv1gw/z/f6CiGg5AZG20nS5RVg23RiF9qWJSQnQXihHIbMuV1THXDINhr1cPQ9jkoOq/walCSxzbqDth3udeecTD/msDpO+m4Z649dwLPItO6arFwep+OrvZkWNXxkXBRybtM/vhiK1RNZBVnG63TlkVQzwQEOiZUFcxbjTS2RyUZONmMH2UbsT4h4P9R7WKImQHsASkDe0pxDepTayZuIyyiiBc5Wpo0P63deKsaS6VXfbGmoYvKQjk8KPi9yasLl8df1SkeivjlJZ+O/W6X2JxW/mz5uKCnL5l2Mc2vOM5vGup3T4so0DQ4bKzIf9Goxvnzqjqxy8KtvjBhmNS/Bwq/d7+MJalUsLKOib/ttHRu5xI4i+3p72MGAm3PDb++qhrX9fcf2V0eb/bFbzz+4g/RcMFBHHFNuDGqpyKTTD3STl09vg6ASBNeL5zCdI7cIugq3yZInYeKm3x34U7t/7XRhbRuxjGN7P9tkJ+MBgCW6JDxfYMxjKHFTEMNMSxi+ZA/MFmekROSGg9i828oxInjotiNsAkh2TCIR1e2IVeFur5rExg2sheanZsm1Lhs36vsJGd0GO4+fzp5DeCzYDAqv068VwlGaY0oJosc0HSQeui/Zr5ObH6VoqcqDCLDvU6F8JkWae5AC+fzQ68ZcKb+fA+sZYxwZCk8ynbVtoXzBjfOAgJC4Zn5FZFdB8XS0rJzio/7a97AeVGKo5DM9h3D3tCV0Ozam1F39ktk21GCDfj2XSUAwU5p1hZGZQfXQLpddZGASAtIsPoDoaKTvUwLPoU9oZWdZR4FK/aZzO4iq9QkkhI3lb7c4kT0HoE3q0fmoNvYuf/Y5GS3QGE1JmKHQh3FGG8EBE7oSr2A2X0ueQPnkfu8um8gHPr7obsNxG72fmhs0gywg+oc3ZGX0XnKrTYubAhAQ+KiEOP56uIYyYzsy9cGfU2l+nyVwDlnHIu2F8wrziuP/CcKio4fk5i6qJZQfqOyeoiwEoqbVc7yg9q+PGmLujwlUFjURoxMEQq7PB5AVPoQXZYt+EINJuEImTLg1tCm8z+lfscfaOwDszyoFbqotQGsq5unlVVkkkCFHwVMKnsEk6H76iSqrmG7S/SI8tPFQgXM57IwNv9eA1KVp2txSM4Af8dw2CFvB3URM6x+GK 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)(376014)(7416014)(1800799024)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 78ezF8xB1qAbdsZ57PepyzZFnn67AHx99HmY0SC/LFOfIRT4DOSvwYQAiZnf8i/KF9rnNA5OwxIvEbOQZiyXgHLxUT9D5mEoJKf0gAK0LH12ceTYHVbCF4IQAqfJWcA23R2s/eFZyHOV13Zp1W2bvTaoj8j8+jkzgqJM47vTLAZgcbF82zcG3VBeRfN8jf2b/VjDmXnYNz/M/e3x6MVyaHjs6hSK3FS4q/NlNuOeOrG6azIICpsUzNvckWXSebgCtfA6iNNo/6LiXAeZKk1ju5nrq75WpKD/3/SeGJXFP5qjNy8tQrDhdCohf/7OOWm2GevvvnzzU1bLC9TKIdN7AL4d8trVYNQv6ChFZ/NZfRMgKj+ItJCQxfCWhFnlNBJnCvRwmN/nJeCvCYAUj0fMyHVYoJfdchh+R6xzWEe0SDGKcGJp0QvorVr/BE8Cp0Tl63M+ebTdogSWBQtOYoVNJ5K8/SaBb2WXj75oLlquDF/9VqeEAII1YW7MhBZ+Do6i2WV6CMpmgRd4b21mHW12cHT4yMLqE+ZxMBFNuJXuHzioRtL/jdxLGQ978wI4npS+gYxtN4E6qwewtf6xtCW/jHcNiEWUXxKPyH2UvWJnSKqDCsX2MMneylBB7H0p5cuUpxBCm3ls+Cv3fB4NYU7i3CFRnDFs4bHOM/2HhHomwIiFcRCvfUTVSRUplAx8mQ3nCTv6E2QonNbxIApbrnss1ZdLHWuS0HmNDnPpuIBnnFfCW0gYOe2qnAH/1w9WEj7IGC8Ppy90KlyXSDtIfOzm2BYAKzfI+P7xdvHBItY3J2OwmSkuYf0n+ESpxLxAOvbeHNf+YcFf++K39xGwdNrYW1B+SO99nQj8SPjlYrYxsAVxdpsR3rlHT6ojDQ9BduJmKXmddTkIeRMn0LQT0ud0a9dlDXJoGbTc56crzmDKjwCZKer8RlbcUhMNFD8gTl2Wt0O8CtMlwG18DlYeKvH1MN8Tkj4UIb9Qf27cb3paZui0yXrS3hs+aYWaB8U7/fZwFT/Vh4jwnp7GwZYWNCwFQ27JDubve7i/wKUF37DTrVgD+WaoClFR2IaaIGjGdsZKQzoNrZpbe89fHHIh64AD/Qc7kF3kUAvP7V3f/JwM+gf8+iuMSnJ0xxiGhF7XOMG/JPttMgykwEf+amJsb8Cf2g1Nn6kI4JqlpgNohK6EyPISZfWSOwc28RCzxiuQMxTSPWKYYqRDnRtRC0Gdmgw3MVCQ0/2Ql3BmuLucgfkRZIasuF+ph/1gMBH3iCcFXRbyQrDJumbM0yCxgeLstjsev2ZebwuFiBx3KF1WHBDHgdz/mB0Zjfxmh5Jh6N8ERd2tbv84JASqyW6Y3Thp9+BgJ3ZrUEJBFQsnOvMLSDiJuH9IG8YUUq5FD/xub3u1J6HKO+58Gg2/Fq2whRPKdibwm054JXrSUiMZsdFjrJ8orVk65wHi2AU1CjVYATjwoq+wXSRTgT6SJOhSdxDaxSFZ4F6eEBlfknJlbbu0qlQDYNebO3CfCYBgoJs5PNdyohTetPJRZyn4LmXnu/rvXLR0yUNd24PWq8He12ioGgeE4iS8uHkYbBPaW30cUjJrfc65 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: ba988643-06b8-4cea-a580-08dd4fd0580b X-MS-Exchange-CrossTenant-AuthSource: DS0PR12MB7726.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Feb 2025 03:57:20.8466 (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: iOQlpp3/9Y35FBNRUJ39N6zZcKN6+61qJMZYaVb+d4rJEcxcCCmcGtPwyMFzYI944mpOHtwrWmSf6rRqPqsvgw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB7593 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250217_195726_238030_FA1B1516 X-CRM114-Status: UNSURE ( 8.61 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: <linux-arm-kernel.lists.infradead.org> List-Unsubscribe: <http://lists.infradead.org/mailman/options/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe> List-Archive: <http://lists.infradead.org/pipermail/linux-arm-kernel/> List-Post: <mailto:linux-arm-kernel@lists.infradead.org> List-Help: <mailto:linux-arm-kernel-request@lists.infradead.org?subject=help> List-Subscribe: <http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe> Sender: "linux-arm-kernel" <linux-arm-kernel-bounces@lists.infradead.org> Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org |
Series |
fs/dax: Fix ZONE_DEVICE page reference counts
|
expand
|
diff --git a/include/linux/memremap.h b/include/linux/memremap.h index 0256a42..4aa1519 100644 --- a/include/linux/memremap.h +++ b/include/linux/memremap.h @@ -187,6 +187,17 @@ static inline bool folio_is_device_coherent(const struct folio *folio) return is_device_coherent_page(&folio->page); } +static inline bool is_fsdax_page(const struct page *page) +{ + return is_zone_device_page(page) && + page_pgmap(page)->type == MEMORY_DEVICE_FS_DAX; +} + +static inline bool folio_is_fsdax(const struct folio *folio) +{ + return is_fsdax_page(&folio->page); +} + #ifdef CONFIG_ZONE_DEVICE void zone_device_page_init(struct page *page); void *memremap_pages(struct dev_pagemap *pgmap, int nid); diff --git a/include/linux/mm.h b/include/linux/mm.h index d1f260d..066aebd 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2109,6 +2109,13 @@ static inline bool folio_is_longterm_pinnable(struct folio *folio) if (folio_is_device_coherent(folio)) return false; + /* + * Filesystems can only tolerate transient delays to truncate and + * hole-punch operations + */ + if (folio_is_fsdax(folio)) + return false; + /* Otherwise, non-movable zone folios can be pinned. */ return !folio_is_zone_movable(folio);