Re: [PATCH 1/1] mm/rmap: add CONFIG_MM_ID guard for folio_test_large_maybe_mapped_shared()

From: David Hildenbrand
Date: Thu Apr 17 2025 - 08:56:32 EST


On 17.04.25 14:49, Lance Yang wrote:
Add a compile-time check to make sure folio_test_large_maybe_mapped_shared()
is only used with CONFIG_MM_ID enabled, as it directly accesses the _mm_ids
field that only works under CONFIG_MM_ID.

Suggested-by: David Hildenbrand <david@xxxxxxxxxx>
Signed-off-by: Mingzhe Yang <mingzhe.yang@xxxxxx>

^ should that be here?

Signed-off-by: Lance Yang <ioworker0@xxxxxxxxx>
---
include/linux/page-flags.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
index d3909cb1e576..6bd9b9043976 100644
--- a/include/linux/page-flags.h
+++ b/include/linux/page-flags.h
@@ -1232,6 +1232,8 @@ static inline int folio_has_private(const struct folio *folio)
static inline bool folio_test_large_maybe_mapped_shared(const struct folio *folio)
{
+ /* This function should never be called without CONFIG_MM_ID enabled. */
+ BUILD_BUG_ON(!IS_ENABLED(CONFIG_MM_ID));
return test_bit(FOLIO_MM_IDS_SHARED_BITNUM, &folio->_mm_ids);
}
#undef PF_ANY

That should work. I can throw this into a cross-compile setup later if I get to it.

Acked-by: David Hildenbrand <david@xxxxxxxxxx>

--
Cheers,

David / dhildenb