KVM: pfncache: Move invalidation to invalidate_range_end hook
By performing the invalidation from the 'end' hook, the process is a lot
cleaner and simpler because it is guaranteed that ->needs_invalidation
will be cleared after hva_to_pfn() has been called, so the only thing
that hva_to_pfn_retry() needs to do is *wait* for there to be no pending
invalidations.
Another false positive on the range based checks is thus removed as well.
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>