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 EF611C4829E for ; Thu, 15 Feb 2024 14:56:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B00578D0028; Thu, 15 Feb 2024 09:56:22 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A8A4A8D0027; Thu, 15 Feb 2024 09:56:22 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8B5688D0028; Thu, 15 Feb 2024 09:56:22 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 70E4C8D0027 for ; Thu, 15 Feb 2024 09:56:22 -0500 (EST) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 3A640120A39 for ; Thu, 15 Feb 2024 14:56:22 +0000 (UTC) X-FDA: 81794339004.24.5959AFB Received: from mail-ej1-f41.google.com (mail-ej1-f41.google.com [209.85.218.41]) by imf12.hostedemail.com (Postfix) with ESMTP id 5ECD540013 for ; Thu, 15 Feb 2024 14:56:20 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=ionos.com header.s=google header.b=EsFUwL8O; dmarc=pass (policy=quarantine) header.from=ionos.com; spf=pass (imf12.hostedemail.com: domain of max.kellermann@ionos.com designates 209.85.218.41 as permitted sender) smtp.mailfrom=max.kellermann@ionos.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1708008980; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=xRvSVsODNSSWpBrjcPj/MUDqCBoUjFcr6NI1MGfkDG8=; b=1K+9lucIEzdQu8h5vXxSXuxERQn8zRk/1oAVTSIWCTVWY4JHsomcPjFPuMZNDQlu6bHNiB XP9ksAjqIkPC7ImEgsiTM5LktXnO9EQuN/6kiCIRh9QPHeUzbgX+i2IkTg7VKJk/T0sG+M iTSmXhSAIUId3gj6DB95T16tXPDY8SQ= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=ionos.com header.s=google header.b=EsFUwL8O; dmarc=pass (policy=quarantine) header.from=ionos.com; spf=pass (imf12.hostedemail.com: domain of max.kellermann@ionos.com designates 209.85.218.41 as permitted sender) smtp.mailfrom=max.kellermann@ionos.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1708008980; a=rsa-sha256; cv=none; b=xeL40JuNYqJMtFeHKS1ZSl0pESUMBehYSUgoFz4vnnpxbEIhLdC16c5+iCYf2qEiW/vNxq roWZHkWg7zLw+lfbK+lk5v3Z0Rr7AUoEP9/fipOLksabZf5xmCxr7CMUbk203UexMPNDOw mubwihIjRDCqhc3JFUa+cPUvnWN+r8k= Received: by mail-ej1-f41.google.com with SMTP id a640c23a62f3a-a3db0b8b313so39404666b.0 for ; Thu, 15 Feb 2024 06:56:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1708008979; x=1708613779; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xRvSVsODNSSWpBrjcPj/MUDqCBoUjFcr6NI1MGfkDG8=; b=EsFUwL8OVaRvKO8cRn44POK/T1BSZXEpNT26sR/moYVbo7GcJvvlJTSkCsbYsPX1Jo C4W5FWs1+D+bwSf2N4PzYiFAn3EagywNmF14KCOVxesDDZ4+9+uo8zdUM8b2YJGPlpzB Uf6d86RemDj3Jd1V4TC2WQtdzg/MOiznroukWrGanfiZIMzCaDk55GzppVwySRo/U5DN ZTP3+Icm7yGvJQ0UOG3MV51VoCYaegEh8kuZ7fBYyZnl9M3HlGhQBZDYn2I8Bs6hX4ls 9imdcIlUyjwbx8LPMbeTASloCuYrTrrAshA28iy0Gk2zoo7uhGG6ATQBzdIXgjmhs29o Q+bA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708008979; x=1708613779; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xRvSVsODNSSWpBrjcPj/MUDqCBoUjFcr6NI1MGfkDG8=; b=jrhzlZptFJ+Ku07hB49yxxz25NUXkQ3kOmmDwIp6Ryz0na02/AQjn25GT8J6/vuRt+ rr0EeXijF1IdbfARXmV1BbC1h4ODYXnti3nkphcc9IwAM+XAig1QulK90sroAfAHhN/U 0gPcZLR6VYGCTFKn1wF5YLStiIrOrVCMw8QBZTu7yw0gkHqOqiMrCiiqwOb0zkSEwYUW lMsUQSF9G+XenQ/W+SeAueITOOp9fyxvh9V3mOEWzj2S20TNB6GrmaNm4vRVTZQlPwlG vI4DFGAOjmmq9gmAa6Gilp6YmUXugR9mr07n+lrPyUqnQFLR6kalad8m72EfXHLWHV6M HXCg== X-Forwarded-Encrypted: i=1; AJvYcCUT2hIXFpjrTE+fFUY+NCN8HDsLhiEzV2S40g3jAb+Vj8ue5fjH2lEnVIkx+/1eWZhJLyJoGCRnAM/FgOpxI3gPawA= X-Gm-Message-State: AOJu0YxIv2SozRz6HDvmwCncu1uPCaXOueq5KEOaQDVKgSQ3J8/gyjLE ueEdMPo2r24IlMlNGit8gcJrW3Ep0qa5HiFs7k4QZjPWyZ6O0pABpvc/whE58mE= X-Google-Smtp-Source: AGHT+IHa3g48edLxpLnPmjuHN2ahaJh7C1K0HVPHep8G35XAhbS9I+UMBUTxYQtrfWhuCGGHZU2OSQ== X-Received: by 2002:a17:906:bc5a:b0:a3c:875b:f378 with SMTP id s26-20020a170906bc5a00b00a3c875bf378mr1086457ejv.36.1708008978701; Thu, 15 Feb 2024 06:56:18 -0800 (PST) Received: from raven.intern.cm-ag (p200300dc6f267100023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f26:7100:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id s18-20020a170906169200b00a3d1897ab68sm631175ejd.113.2024.02.15.06.56.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Feb 2024 06:56:17 -0800 (PST) From: Max Kellermann To: akpm@linux-foundation.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: Max Kellermann Subject: [PATCH v1 08/14] linux/mm.h: move devmap-related declarations to mm/devmap_managed.h Date: Thu, 15 Feb 2024 15:55:56 +0100 Message-Id: <20240215145602.1371274-9-max.kellermann@ionos.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240215145602.1371274-1-max.kellermann@ionos.com> References: <20240215145602.1371274-1-max.kellermann@ionos.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5ECD540013 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: pt3tikz6a3ppxhkbtdkxtzk5hz9xa853 X-HE-Tag: 1708008980-352950 X-HE-Meta: U2FsdGVkX1+3Wr9/sf3/P7iOSl369tn48PkNFqiiB65asxA+zp4n42EPY4Vb9le1u9fECVb+YY9MtMagAa2UV96ofhQE+nXMaUaNv94xuoGywaGZUXBMp4MBZjyifVrOrEjpQpRcX02bG3xTN31AgKXAfdf0hH+CQBGkPHpctf2GwnTNE7mL44IGCPiG5kpZF4uPfzD5kX2KJTkdJ9VstZONGIuAYQzhs49S/K5MAoTUeYNNwF6hijGuHoChm0cGYbe5oD9g5XdYaz0kIF1/mQtAuRcxn4oFzUsuopaSE7cUVdykZAUvti1kDBZJVw6vL/YsF1/vNgsJjNptScOKcIiVue3MWhOkycuo8QaZX7nKDpj+tWNgnXeOQ5+1/6CLBGolIJX4Q8Kgz3le+zXchnkb2iDrm3llJu9pOFXwUW66QYJ5yYgyrFun3e4oMefvgqZECimstCuYjhQeA3MTs6Rdmg78cj14karJhzpR7ikooOhorQhlQWLkEpQmB9iLhAhteCnqZgMfRGOkRADPo1j+0h1NMBl+GoqlwUNLUftzx8v4oC3X2v4Tw9+j0qi3yMidULzCO9C8444rmllQcNG5Ifj0rzFApDpm9Wc4g2V9G2b2KmgSViLnG2Cw6zBlmzAcU1JzcnMtrW8LcCvMPthW8Z00PY7lmuZ3qAJa/lf5YKa2uD2DWTeaGLMl5CI9x86dEP4fD+2nmLkZx6C+9Dj2bqM1L68CjDGD50tWM9vrZ3toNPM922H4KOttZk9myZv37WsF5OzrtAsR8hsGYbsPH9ZfMv6bpbT0nCla7uf+fwdipb5gopJe9TfQZzhVe65E4qrDja5LV1Z6sftnlEKAsL2HHs8gpQUzyPJrQTkXDK23uQXo8haxmu78V3KU5CX+HoqVjexU7AJNA0pN5J08+ZiYdi20xSBjs4qBTb15OQJebabZHr5UutjKB3q61pkPs0edBJ3x9FLra8c LXu/IKDD 2rDe7TQikFimq8RDdQv+rrEino6s+HlWpJ0ua8gTM09YkjMfrFFoODXZHvgBJPSaZAsJjU6NObzA2wogBFT30ZFmoRpQQ3UBBLxeeTT01foZzBEBGLPC7h6Iq9LMOSxes3ub8XBhuz32xLB//TPECLClPHEM43uepdgmAjr1WgLlCluLqb5vNCif0bzzdd2sZT1uMgaNcQBrrPxm1oHpbTXBRdoXBHNVIF4nm3ANduzlAcFzBGRMrPTr7Fd9UxJGn7TKdVrezsKVvZU2e1C1UTHgQXCsB0beOkGMvME8j7qypbzljYVDfCzrTXJmuYEmlQ13Fig756k13yExDVFLPbSyA7AKc72PkfttCR+WLzu3De05q2rz2MePqEFV6v5a8x80q/yVpbecOEZflLaK8VsuK62ksNyQJSdro9CZ18XRjuJs= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000723, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Prepare to reduce dependencies in linux/mm.h. Signed-off-by: Max Kellermann --- include/linux/mm.h | 24 -------------------- include/linux/mm/devmap_managed.h | 37 +++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 24 deletions(-) create mode 100644 include/linux/mm/devmap_managed.h diff --git a/include/linux/mm.h b/include/linux/mm.h index 680329ec21ba..cb2dd71e2940 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1345,30 +1345,6 @@ vm_fault_t finish_fault(struct vm_fault *vmf); * back into memory. */ -#if defined(CONFIG_ZONE_DEVICE) && defined(CONFIG_FS_DAX) -DECLARE_STATIC_KEY_FALSE(devmap_managed_key); - -bool __put_devmap_managed_page_refs(struct page *page, int refs); -static inline bool put_devmap_managed_page_refs(struct page *page, int refs) -{ - if (!static_branch_unlikely(&devmap_managed_key)) - return false; - if (!is_zone_device_page(page)) - return false; - return __put_devmap_managed_page_refs(page, refs); -} -#else /* CONFIG_ZONE_DEVICE && CONFIG_FS_DAX */ -static inline bool put_devmap_managed_page_refs(struct page *page, int refs) -{ - return false; -} -#endif /* CONFIG_ZONE_DEVICE && CONFIG_FS_DAX */ - -static inline bool put_devmap_managed_page(struct page *page) -{ - return put_devmap_managed_page_refs(page, 1); -} - /* 127: arbitrary random number, small enough to assemble well */ #define folio_ref_zero_or_close_to_overflow(folio) \ ((unsigned int) folio_ref_count(folio) + 127u <= 127u) diff --git a/include/linux/mm/devmap_managed.h b/include/linux/mm/devmap_managed.h new file mode 100644 index 000000000000..0773529d80b2 --- /dev/null +++ b/include/linux/mm/devmap_managed.h @@ -0,0 +1,37 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _LINUX_MM_DEVMAP_MANAGED_H +#define _LINUX_MM_DEVMAP_MANAGED_H + +#include // for bool + +struct page; + +#if defined(CONFIG_ZONE_DEVICE) && defined(CONFIG_FS_DAX) + +#include // for DECLARE_STATIC_KEY_FALSE(), static_branch_unlikely() +#include // is_zone_device_page() + +DECLARE_STATIC_KEY_FALSE(devmap_managed_key); + +bool __put_devmap_managed_page_refs(struct page *page, int refs); +static inline bool put_devmap_managed_page_refs(struct page *page, int refs) +{ + if (!static_branch_unlikely(&devmap_managed_key)) + return false; + if (!is_zone_device_page(page)) + return false; + return __put_devmap_managed_page_refs(page, refs); +} +#else /* CONFIG_ZONE_DEVICE && CONFIG_FS_DAX */ +static inline bool put_devmap_managed_page_refs(struct page *page, int refs) +{ + return false; +} +#endif /* CONFIG_ZONE_DEVICE && CONFIG_FS_DAX */ + +static inline bool put_devmap_managed_page(struct page *page) +{ + return put_devmap_managed_page_refs(page, 1); +} + +#endif /* _LINUX_MM_DEVMAP_MANAGED_H */ -- 2.39.2