Longterm pinning of FS DAX pages should already be disallowed by
various pXX_devmap checks. However a future change will cause these
checks to be invalid for FS DAX pages so make
folio_is_longterm_pinnable() return false for FS DAX pages.

Signed-off-by: Alistair Popple <apop...@nvidia.com>
Reviewed-by: John Hubbard <jhubb...@nvidia.com>
Acked-by: David Hildenbrand <da...@redhat.com>
---
 include/linux/mm.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/linux/mm.h b/include/linux/mm.h
index f267b06..01edca9 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -2078,6 +2078,10 @@ static inline bool folio_is_longterm_pinnable(struct 
folio *folio)
        if (folio_is_device_coherent(folio))
                return false;
 
+       /* DAX must also always allow eviction. */
+       if (folio_is_fsdax(folio))
+               return false;
+
        /* Otherwise, non-movable zone folios can be pinned. */
        return !folio_is_zone_movable(folio);
 
-- 
git-series 0.9.1

Reply via email to