If a guest has vhost-user enabled, then on reboot vhost_virtqueue_stop is invoked. This unmaps vring memory. However, it will not give any indication to the underlying DPDK application about it. Therefore, a pollmode DPDK driver tries to read the ring to check for packets and segfaults.
We do have VHOST_USER_RESET_OWNER API an can be called by vhost_virtqueue_stop so that DPDK application can note that mappings are gone. Is that the right way ?
Qemu Version: qemu-2.5.0
DPDK Version: 2.2
Thanks,
Shesha.