v2: https://lists.nongnu.org/archive/html/qemu-devel/2018-04/msg00656.html
Changes since v2: - rebase onto master, fixing conflicts - add R-b's - add a missing page_lock to page_collection_lock - add a couple of missing assert_page_locked assertions - add page_lock_pair, as suggested by Alex and Richard - use a per-thread GHashTable to keep track of locked pages - get rid of page_collection assertions, and just export assert_no_pages_locked() [Alex: I removed your R-b.] Thanks, Emilio