It is possible that the function will be asked map something for a
second time. For example, if a file has memory-resident pages and a
process first calls mmap() and then madvise(MADV_WILLNEED) for this
range of the file, pmap_enter_object() will be called on this range
of pages twice.
Because pmap_enter_l2() is passed PMAP_ENTER_NOREPLACE, it 'fails' to
map the 2M page the second time, and falls back to trying
pmap_enter_quick_locked() for each 4K virtual page. This may result in
the creation of false PV entries for some of these pages.
If the range is later munmap'ed, the system will panic during the
process' exit in pmap_remove_pages(), when it attempts to clean up the
PV entries for mappings which no longer exist.