pm: Remove the venerable pm_remove_contig()
authorBarret Rhoden <brho@cs.berkeley.edu>
Tue, 3 Apr 2018 19:42:44 +0000 (15:42 -0400)
committerBarret Rhoden <brho@cs.berkeley.edu>
Mon, 30 Apr 2018 18:36:28 +0000 (14:36 -0400)
commit1c95ea1209c11234b51ff4d54581da2990a4301a
tree73c7b7c955f69f56b6f99baa22451395d6093293
parentb546be54d20d0d22f9836c34d526b58798649768
pm: Remove the venerable pm_remove_contig()

It did a lot, but was more complicated than we needed.  It also might have
been doing too much.

It was responsible for attempting to remove pages even if they were being
used by an active mmaping - shootdown, collect dirty bits, writeback, unmap
for real and catch any intermediate users, etc.  I'm not sure we need all
of that, and if we do, maybe we'll fix the PM / MM code before that (more
scalable structures, huge pages, etc).

It also was marking PTEs not present before checking their dirty bits.
That might not be necessary for all uses.  It looks like we wanted to force
any users to fault, which would trigger a pm_load_page, which would clear
the removal flag.  Not 100% on that.  Be careful if you use that old code.

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
kern/include/fs_file.h
kern/include/pagemap.h
kern/src/pagemap.c