The ivshmem me now mapped to vhost memory regions, and it reduces the number of available memslots of vhost backend, which may causes vhost backend memory slots limit check failure in vhost dev init.
Since ivshmem_bar2 not normal RAM in Guest, and it shouldn't have vhost DMAing into them, exclude it from the vhost sections. The 1st patch re-spin Dave's patch, see link https://lists.nongnu.org/archive/html/qemu-devel/2020-01/msg02370.html However, I'm not sure is there any side effects, or maybe it's better to add a new device property like 'novhost/nodma'? Thanks, Xin Wang Xin (2): memory: Allow a MemoryRegion to be marked no_vhost misc/ivshmem: Mark shared memory regions as no vhost hw/misc/ivshmem.c | 2 ++ hw/virtio/vhost.c | 5 ++++- include/exec/memory.h | 21 +++++++++++++++++++++ softmmu/memory.c | 15 +++++++++++++++ 4 files changed, 42 insertions(+), 1 deletion(-) -- 2.26.0.windows.1