]> xenbits.xensource.com Git - pvdrivers/win/xenvbd.git/commit
Try to avoid dumping non-RAM pages
authorPaul Durrant <paul.durrant@citrix.com>
Fri, 26 Apr 2019 08:53:34 +0000 (09:53 +0100)
committerPaul Durrant <paul.durrant@citrix.com>
Fri, 26 Apr 2019 09:28:15 +0000 (10:28 +0100)
commit01a1170a9848c7534a2e38890f28b33e521b592d
tree113f367669d40206a4f6efa2db284d26e1a8cf5c
parent77cba7edd62da9323fae14f9c0520c42b5eaab4b
Try to avoid dumping non-RAM pages

When XENCRSH sets up blkif requests they may end up referring to PFNs that
are ballooned out. When these requests reach the backend driver, it will
unsurprisingly encounter failures when trying to map or copy the data from
these PFNs, generally resulting in the request as a whole being failed and
a lot of noise being emitted to various logs.

This patch adds a check into PrepareReadWrite() to check the P2M type of
PFNs being dumped. If the type is found to be anything other than writable
RAM then the PFN is substituted with a buffer PFN, which will just contain
zeroes. The storage backend will be able to map or copy these pages, so
stalls in the dump process and useless log messages will be avoided.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
src/xencrsh/buffer.c
src/xencrsh/hvm.c
src/xencrsh/hvm.h
src/xencrsh/pdo.c