On Fri, Jun 07, 2024 at 02:23:54PM +0200, David Hildenbrand wrote: > We added PM_MMAP_EXCLUSIVE in 2015 via commit 77bb499bb60f ("pagemap: add > mmap-exclusive bit for marking pages mapped only here"), when THPs could > not be partially mapped and page_mapcount() returned something > that was true for all pages of the THP. > > In 2016, we added support for partially mapping THPs via > commit 53f9263baba6 ("mm: rework mapcount accounting to enable 4k mapping > of THPs") but missed to determine PM_MMAP_EXCLUSIVE as well per page. > > Checking page_mapcount() on the head page does not tell the whole story. > > We should check each individual page. In a future without per-page > mapcounts it will be different, but we'll change that to be consistent > with PTE-mapped THPs once we deal with that. > > Fixes: 53f9263baba6 ("mm: rework mapcount accounting to enable 4k mapping of THPs") > Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > Signed-off-by: David Hildenbrand <david@xxxxxxxxxx> Reviewed-by: Oscar Salvador <osalvador@xxxxxxx> -- Oscar Salvador SUSE Labs