diff options
Diffstat (limited to 'include/linux/pagemap.h')
-rw-r--r-- | include/linux/pagemap.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h index e05585eda771..9e2c3fe2ecbe 100644 --- a/include/linux/pagemap.h +++ b/include/linux/pagemap.h @@ -382,6 +382,10 @@ static inline void mapping_set_large_folios(struct address_space *mapping) */ static inline bool mapping_large_folio_support(struct address_space *mapping) { + /* AS_LARGE_FOLIO_SUPPORT is only reasonable for pagecache folios */ + VM_WARN_ONCE((unsigned long)mapping & PAGE_MAPPING_ANON, + "Anonymous mapping always supports large folio"); + return IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE) && test_bit(AS_LARGE_FOLIO_SUPPORT, &mapping->flags); } |