Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp703875yba; Fri, 12 Apr 2019 11:58:25 -0700 (PDT) X-Google-Smtp-Source: APXvYqxAju1MDf47Lt7EIip7dgveFW/IuWRW/N9cJJ9lKyClMGMPmyaEfj/ka5ePZ2ohktGjGAsF X-Received: by 2002:a17:902:e287:: with SMTP id cf7mr30993815plb.217.1555095505421; Fri, 12 Apr 2019 11:58:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1555095505; cv=none; d=google.com; s=arc-20160816; b=zPIF8O2+1Gg4WfGRuI6Kv32aVthV1Wy7YZCsEYgrcRvlAtZpBjeZk0sRn4sn8N6Gkh 7BWpx2+ZQh8DkKMRZcmCVa3yXbIOWSdcE6nTsZ3n2BaPtr5lJ3fceRwIOEgjMek7j9Yv 1Og0WvApvV/uPX8/e5RMtrRDo9TZDyth133uc5+YIypxYMLjuhSAiw4MzZ7tG5UdoDIT XmG4EaKf8SSCCGq/dN9xb/v8O6812D8rKiGrE1DoqczIMLQcCcSylixk5q4BIWB+zgSq lDypLf7CFUKuxVICdaQu90HMKdXJFbuVoWssNunOYV8q3/Q8mIx9VnYSDEo7J7l8Q58G b8Rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=70luTOh7EZPm2mdLSlvwP+/XxOOcCyBYqtiI7hN9cdY=; b=0dptDthyF7GkdsdFm0CT6YTQ5marmWme2J8iw3nWbB7ezX6p+dvn0TMrG9Y+73/fbq 48DHsXOgFWIrQ/gMEAiPWiSw+NsVbqtSYaDKKOEDVIaZYcU0RtSyiNUER6qt6lY/GHi9 VN6ImO8Hp0e9I2wlo4njX3byPLpKQTANSyNiMEDjEPc/aO46AcywpeVNybr93meZR+UE n/hCAtOO3HAqnrF1Qo8IBjQFAMO8dt4jSyhLDYrFthICmYgCRkjxcGZS1tkYPmGaBWeL xv3WjHg15T/EcyNvytq3bL6DGw78BzKfznS6Le0A1MolMvsFvVqlc99oa7buAUTp98aX HwsQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m72si40979614pfj.279.2019.04.12.11.58.09; Fri, 12 Apr 2019 11:58:25 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727209AbfDLS5a (ORCPT + 99 others); Fri, 12 Apr 2019 14:57:30 -0400 Received: from foss.arm.com ([217.140.101.70]:38286 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727138AbfDLS5Z (ORCPT ); Fri, 12 Apr 2019 14:57:25 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1658C1682; Fri, 12 Apr 2019 11:57:25 -0700 (PDT) Received: from e110467-lin.cambridge.arm.com (e110467-lin.cambridge.arm.com [10.1.196.75]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 6D7253F718; Fri, 12 Apr 2019 11:57:23 -0700 (PDT) From: Robin Murphy To: linux-mm@kvack.org Cc: dan.j.williams@intel.com, ira.weiny@intel.com, jglisse@redhat.com, ohall@gmail.com, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, anshuman.khandual@arm.com, linux-kernel@vger.kernel.org Subject: [PATCH 2/3] mm: clean up is_device_*_page() definitions Date: Fri, 12 Apr 2019 19:56:01 +0100 Message-Id: <2adb3982a790078fe49fd454414a7b9c0fd60bcb.1555093412.git.robin.murphy@arm.com> X-Mailer: git-send-email 2.21.0.dirty In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Refactor is_device_{public,private}_page() with is_pci_p2pdma_page() to make them all consistent in depending on their respective config options even when CONFIG_DEV_PAGEMAP_OPS is enabled for other reasons. This allows a little more compile-time optimisation as well as the conceptual and cosmetic cleanup. Suggested-by: Jerome Glisse Signed-off-by: Robin Murphy --- include/linux/mm.h | 43 +++++++++++++------------------------------ 1 file changed, 13 insertions(+), 30 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 76769749b5a5..d76dfb7ac617 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -910,32 +910,6 @@ static inline bool put_devmap_managed_page(struct page *page) } return false; } - -static inline bool is_device_private_page(const struct page *page) -{ - return is_zone_device_page(page) && - page->pgmap->type == MEMORY_DEVICE_PRIVATE; -} - -static inline bool is_device_public_page(const struct page *page) -{ - return is_zone_device_page(page) && - page->pgmap->type == MEMORY_DEVICE_PUBLIC; -} - -#ifdef CONFIG_PCI_P2PDMA -static inline bool is_pci_p2pdma_page(const struct page *page) -{ - return is_zone_device_page(page) && - page->pgmap->type == MEMORY_DEVICE_PCI_P2PDMA; -} -#else /* CONFIG_PCI_P2PDMA */ -static inline bool is_pci_p2pdma_page(const struct page *page) -{ - return false; -} -#endif /* CONFIG_PCI_P2PDMA */ - #else /* CONFIG_DEV_PAGEMAP_OPS */ static inline void dev_pagemap_get_ops(void) { @@ -949,22 +923,31 @@ static inline bool put_devmap_managed_page(struct page *page) { return false; } +#endif /* CONFIG_DEV_PAGEMAP_OPS */ static inline bool is_device_private_page(const struct page *page) { - return false; + return IS_ENABLED(CONFIG_DEV_PAGEMAP_OPS) && + IS_ENABLED(CONFIG_DEVICE_PRIVATE) && + is_zone_device_page(page) && + page->pgmap->type == MEMORY_DEVICE_PRIVATE; } static inline bool is_device_public_page(const struct page *page) { - return false; + return IS_ENABLED(CONFIG_DEV_PAGEMAP_OPS) && + IS_ENABLED(CONFIG_DEVICE_PUBLIC) && + is_zone_device_page(page) && + page->pgmap->type == MEMORY_DEVICE_PUBLIC; } static inline bool is_pci_p2pdma_page(const struct page *page) { - return false; + return IS_ENABLED(CONFIG_DEV_PAGEMAP_OPS) && + IS_ENABLED(CONFIG_PCI_P2PDMA) && + is_zone_device_page(page) && + page->pgmap->type == MEMORY_DEVICE_PCI_P2PDMA; } -#endif /* CONFIG_DEV_PAGEMAP_OPS */ static inline void get_page(struct page *page) { -- 2.21.0.dirty