Add the vpmems config into guest config xml according to
resources info in the instance object, then users can build
a VM with vpmems. Also this patch add the support for
data cleanup on the backend device of the vpmems.
note:
We modify the root <domain> element generated for libvirt to
include <maxMemory> elements when memory device is used.[1]
Requiring vpmems implies a NUMA topology because libvirt won't let us
use vpmem without NUMA.[2]
[1]https://github.com/libvirt/libvirt/blob/master/src/qemu/qemu_domain.c#L11593-L11599
[2]https://github.com/libvirt/libvirt/blob/master/src/qemu/qemu_domain.c#L11604-L11615
Change-Id: I725deb0312c930087c9e60115abe68b4e06e6804
Partially-Implements: blueprint virtual-persistent-memory
Co-Authored-By: He Jie Xu <hejie.xu@intel.com>