BACKPORT: mm/rmap: move SetPageAnonExclusive() out of page_move_anon_rmap()
Patch series "mm/rmap: convert page_move_anon_rmap() to folio_move_anon_rmap()". Convert page_move_anon_rmap() to folio_move_anon_rmap(), letting the callers handle PageAnonExclusive. I'm including cleanup patch #3 because it fits into the picture and can be done cleaner by the conversion. This patch (of 3): Let's move it into the caller: there is a difference between whether an anon folio can only be mapped by one process (e.g., into one VMA), and whether it is truly exclusive (e.g., no references -- including GUP -- from other processes). Further, for large folios the page might not actually be pointing at the head page of the folio, so it better be handled in the caller. This is a preparation for converting page_move_anon_rmap() to consume a folio. Link: https://lkml.kernel.org/r/20231002142949.235104-1-david@redhat.com Link: https://lkml.kernel.org/r/20231002142949.235104-2-david@redhat.com Signed-off-by:David Hildenbrand <david@redhat.com> Reviewed-by:
Suren Baghdasaryan <surenb@google.com> Reviewed-by:
Vishal Moola (Oracle) <vishal.moola@gmail.com> Cc: Mike Kravetz <mike.kravetz@oracle.com> Cc: Muchun Song <muchun.song@linux.dev> Cc: Matthew Wilcox <willy@infradead.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Conflicts: 1. mm/hugetlb.c [Due to page_mapcount() instead of folio_mapcount() and folio_test_anon() instead of PageAnon()] (cherry picked from commit 5ca43289) Bug: 413428616 Bug: 313807618 Change-Id: Ibd29fec4d2a521d5ffc0782effd855cde9687a78 Signed-off-by:
Suren Baghdasaryan <surenb@google.com> Signed-off-by:
Lokesh Gidra <lokeshgidra@google.com>
Loading
Please sign in to comment