Re: [PATCH v3] vhost: fix driver unregister for client mode
From: Yuanhan Liu <hidden>
Date: 2016-07-21 13:14:25
On Thu, Jul 21, 2016 at 03:55:36PM +0300, Ilya Maximets wrote:
Currently while calling of 'rte_vhost_driver_unregister()' connection
to QEMU will not be closed. This leads to inability to register driver
again and reconnect to same virtual machine.
This scenario is reproducible with OVS. While executing of the following
command vhost port will be re-created (will be executed
'rte_vhost_driver_register()' followed by 'rte_vhost_driver_unregister()')
network will be broken and QEMU possibly will crash:
ovs-vsctl set Interface vhost1 ofport_request=15
Fix this by closing all established connections on driver unregister and
removing of pending connections from reconnection list.
Fixes: 64ab701c3d1e ("vhost: add vhost-user client mode")
Signed-off-by: Ilya Maximets <redacted>
---
Version 3:
* fixed leak of file descriptors by adding of
'close(reconn->fd)' to 'vhost_user_remove_reconnect()'
Version 2:
* style fixes.Acked-by: Yuanhan Liu <redacted> --yliu