vhost-vdpa: fix the wrong assertion in vhost_vdpa_init()
Vhost_vdpa_add() can fail for various reasons, so the assertion of the succeed is wrong. Instead, we should free the NetClientState and propagate the error to the caller Reviewed-by: Stefano Garzarella <sgarzare@redhat.com> Signed-off-by: Jason Wang <jasowang@redhat.com> Message-Id: <20210903091031.47303-11-jasowang@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
a97ef87a20
commit
74af5eec83
@ -173,7 +173,10 @@ static int net_vhost_vdpa_init(NetClientState *peer, const char *device,
|
||||
}
|
||||
s->vhost_vdpa.device_fd = vdpa_device_fd;
|
||||
ret = vhost_vdpa_add(nc, (void *)&s->vhost_vdpa);
|
||||
assert(s->vhost_net);
|
||||
if (ret) {
|
||||
qemu_close(vdpa_device_fd);
|
||||
qemu_del_net_client(nc);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user