Hi this two-patches series first ensure that no queues will be allocated while the device is in a running state, and then implements support for VHOST_USER_SET_QUEUE_NUM vhost-user protocol request.
The goal is to prevent the device to either corrupt some guest memory when disabling guest notifications, or to be stuck waiting forever for queues not setup by the guest driver to be initialized, depending on QEMU version. One way to reproduce these kind of issues is to start a Windows guest with setting more queue pairs in QEMU cmdline than vcpus. I tagged this series as RFC, because the QEMU part [0], which contains the spec update isn't acked yet. [0]: http://lists.nongnu.org/archive/html/qemu-devel/2018-01/msg02648.html Maxime Coquelin (2): vhost-user: don't allocate new queue once device is running vhost-user: add support for VHOST_USER_SET_QUEUE_NUM lib/librte_vhost/vhost_user.c | 50 ++++++++++++++++++++++++++++++++++++++++--- lib/librte_vhost/vhost_user.h | 5 ++++- 2 files changed, 51 insertions(+), 4 deletions(-) -- 2.14.3