mm, highmem: makes flush_all_zero_pkmaps() return index of last flushed entry
In current code, after flush_all_zero_pkmaps() is invoked we re-iterate
all pkmaps. This can be optimized if flush_all_zero_pkmaps() returns an
index of flushed entry. With this index, we can immediately map highmem
page to virtual address represented by index. So change return type of
flush_all_zero_pkmaps() and return index of last flushed entry.
Additionally, update last_pkmap_nr to this index. It is certain that
entry which is below this index is occupied by other mapping, therefore
updating last_pkmap_nr to this index is reasonable optimization.
Signed-off-by: Joonsoo Kim <js1304@gmail.com> Cc: Mel Gorman <mel@csn.ul.ie> Cc: Minchan Kim <minchan@kernel.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>