[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210820044012.GA26960@lst.de>
Date: Fri, 20 Aug 2021 06:40:12 +0200
From: Christoph Hellwig <hch@....de>
To: Felix Kuehling <felix.kuehling@....com>
Cc: "Sierra Guiza, Alejandro (Alex)" <alex.sierra@....com>,
Ralph Campbell <rcampbell@...dia.com>,
akpm@...ux-foundation.org, linux-mm@...ck.org,
linux-ext4@...r.kernel.org, linux-xfs@...r.kernel.org,
Theodore Ts'o <tytso@....edu>, amd-gfx@...ts.freedesktop.org,
dri-devel@...ts.freedesktop.org, hch@....de, jgg@...dia.com,
jglisse@...hat.com
Subject: Re: [PATCH v6 02/13] mm: remove extra ZONE_DEVICE struct page
refcount
On Thu, Aug 19, 2021 at 03:59:56PM -0400, Felix Kuehling wrote:
> I got lost trying to understand how DAX counts page references and how
> the PTE_SPECIAL option affects that. Theodore, can you help with this?
> Is there an easy way to test without CONFIG_ARCH_HAS_PTE_SPECIAL on x86,
> or do we need to test on a CPU architecture that doesn't support this
> feature?
I think the right answer is to simplify disallow ZONE_DEVICE pages
if ARCH_HAS_PTE_SPECIAL is not supported. ARCH_HAS_PTE_SPECIAL is
supported by all modern architecture ports than can make use of
ZONE_DEVICE / dev_pagemap, so we can avoid this pocket of barely
testable code entirely:
diff --git a/mm/Kconfig b/mm/Kconfig
index 40a9bfcd5062e1..2823bbfd1c8c70 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -775,6 +775,7 @@ config ZONE_DMA32
config ZONE_DEVICE
bool "Device memory (pmem, HMM, etc...) hotplug support"
+ depends on ARCH_HAS_PTE_SPECIAL
depends on MEMORY_HOTPLUG
depends on MEMORY_HOTREMOVE
depends on SPARSEMEM_VMEMMAP
Powered by blists - more mailing lists