x86: don't use destroy_xen_mappings() for vunmap()
authorJan Beulich <jbeulich@suse.com>
Wed, 17 Jul 2013 08:21:33 +0000 (10:21 +0200)
committerJan Beulich <jbeulich@suse.com>
Wed, 17 Jul 2013 08:21:33 +0000 (10:21 +0200)
commit68caac7f6f4687241a24e804a9fca19aa26fe183
treed051f7635da5382669c23af09e3f1304478790b0
parente0b6459aa2236324213d8af38c44eceb6efcedc3
x86: don't use destroy_xen_mappings() for vunmap()

Its attempt to tear down intermediate page table levels may race with
map_pages_to_xen() establishing them, and now that
map_domain_page_global() is backed by vmap() this teardown is also
wasteful (as it's very likely to need the same address space populated
again within foreseeable time).

As the race between vmap() and vunmap(), according to the latest stage
tester logs, doesn't appear to be the only one still left, the patch
also adds logging for vmap() and vunmap() uses (there shouldn't be too
many of them, so logs shouldn't get flooded). These are supposed to
get removed (and are made stand out clearly) as soon as we're certain
that there's no issue left.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
xen/common/vmap.c
xen/include/asm-x86/page.h