]> xenbits.xensource.com Git - xen.git/commit
x86/ioreq server: synchronously reset outstanding p2m_ioreq_server entries when an...
authorYu Zhang <yu.c.zhang@linux.intel.com>
Fri, 7 Apr 2017 15:40:04 +0000 (17:40 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 7 Apr 2017 15:40:04 +0000 (17:40 +0200)
commit6d774a951696b1d8dd2dfba00441f6892c9db815
tree0500a2f48ed859df08b2e4fab301eec1697563e8
parent1679e0df3df6105278108794e15709a520b40ea2
x86/ioreq server: synchronously reset outstanding p2m_ioreq_server entries when an ioreq server unmaps

After an ioreq server has unmapped, the remaining p2m_ioreq_server
entries need to be reset back to p2m_ram_rw. This patch does this
synchronously by iterating the p2m table.

The synchronous resetting is necessary because we need to guarantee
the p2m table is clean before another ioreq server is mapped. And
since the sweeping of p2m table could be time consuming, it is done
with hypercall continuation.

Signed-off-by: Yu Zhang <yu.c.zhang@linux.intel.com>
Reviewed-by: Paul Durrant <paul.durrant@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: George Dunlap <george.dunlap@citrix.com>
xen/arch/x86/hvm/dm.c
xen/arch/x86/mm/p2m.c
xen/include/asm-x86/p2m.h