diff options
author | Marc-André Lureau <marcandre.lureau@redhat.com> | 2017-01-24 23:02:58 +0400 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2017-02-01 03:37:18 +0200 |
commit | e0b283e7c5b020c3e54629d8b82117db0af21cca (patch) | |
tree | 06ab8fed2a8fbc61217077c330bba62783d1225f | |
parent | d56ec1e98c0005933fe677d633484297f422691a (diff) |
vhost-user: delete chardev on cleanup
Remove the chardev implicitly when cleaning up the netdev. This
prevents from reusing the chardev since it would be in an incorrect
state with the slave.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1256618
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
-rw-r--r-- | net/vhost-user.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/vhost-user.c b/net/vhost-user.c index b0f0ab6cc8..77b8110f8c 100644 --- a/net/vhost-user.c +++ b/net/vhost-user.c @@ -151,7 +151,10 @@ static void vhost_user_cleanup(NetClientState *nc) s->vhost_net = NULL; } if (nc->queue_index == 0) { + Chardev *chr = qemu_chr_fe_get_driver(&s->chr); + qemu_chr_fe_deinit(&s->chr); + qemu_chr_delete(chr); } qemu_purge_queued_packets(nc); |