On 2/5/21 10:37 AM, Vladimir Sementsov-Ogievskiy wrote:
> Just stop waiting for connection in existing requests.
>
> Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
> Reviewed-by: Eric Blake <[email protected]>
> ---
> block/nbd.c | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/block/nbd.c b/block/nbd.c
> index b3cbbeb4b0..c26dc5a54f 100644
> --- a/block/nbd.c
> +++ b/block/nbd.c
> @@ -2458,6 +2458,18 @@ static const char *const nbd_strong_runtime_opts[] = {
> NULL
> };
>
> +static void nbd_cancel_in_flight(BlockDriverState *bs)
> +{
> + BDRVNBDState *s = (BDRVNBDState *)bs->opaque;
This cast is not necessary in C, but it doesn't hurt.
> +
> + reconnect_delay_timer_del(s);
> +
> + if (s->state == NBD_CLIENT_CONNECTING_WAIT) {
> + s->state = NBD_CLIENT_CONNECTING_NOWAIT;
> + qemu_co_queue_restart_all(&s->free_sema);
> + }
> +}
> +
R-b still stands
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org