提交 d3780c2d 编写于 作者: M Max Reitz

nbd: client_close on error in nbd_co_client_start

Use client_close() if an error in nbd_co_client_start() occurs instead
of manually inlining parts of it. This fixes an assertion error on the
server side if nbd_negotiate() fails.
Signed-off-by: NMax Reitz <mreitz@redhat.com>
Acked-by: NPaolo Bonzini <pbonzini@redhat.com>
Reviewed-by: NEric Blake <eblake@redhat.com>
Signed-off-by: NKevin Wolf <kwolf@redhat.com>
上级 cc8c46b7
......@@ -1082,8 +1082,7 @@ static coroutine_fn void nbd_co_client_start(void *opaque)
nbd_export_get(exp);
}
if (nbd_negotiate(data)) {
shutdown(client->sock, 2);
client->close(client);
client_close(client);
goto out;
}
qemu_co_mutex_init(&client->send_lock);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册