mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-27 12:23:53 -06:00
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: Max Reitz <mreitz@redhat.com> Acked-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
cc8c46b7c5
commit
d3780c2dce
1 changed files with 1 additions and 2 deletions
|
@ -1082,8 +1082,7 @@ static coroutine_fn void nbd_co_client_start(void *opaque)
|
||||||
nbd_export_get(exp);
|
nbd_export_get(exp);
|
||||||
}
|
}
|
||||||
if (nbd_negotiate(data)) {
|
if (nbd_negotiate(data)) {
|
||||||
shutdown(client->sock, 2);
|
client_close(client);
|
||||||
client->close(client);
|
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
qemu_co_mutex_init(&client->send_lock);
|
qemu_co_mutex_init(&client->send_lock);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue