|
@@ -371,6 +371,7 @@ static bool nbd_client_connecting(BDRVNBDState *s)
|
|
|
/* Called with s->requests_lock taken. */
|
|
|
static coroutine_fn void nbd_reconnect_attempt(BDRVNBDState *s)
|
|
|
{
|
|
|
+ int ret;
|
|
|
bool blocking = s->state == NBD_CLIENT_CONNECTING_WAIT;
|
|
|
|
|
|
/*
|
|
@@ -380,6 +381,8 @@ static coroutine_fn void nbd_reconnect_attempt(BDRVNBDState *s)
|
|
|
assert(nbd_client_connecting(s));
|
|
|
assert(s->in_flight == 1);
|
|
|
|
|
|
+ trace_nbd_reconnect_attempt(s->bs->in_flight);
|
|
|
+
|
|
|
if (blocking && !s->reconnect_delay_timer) {
|
|
|
/*
|
|
|
* It's the first reconnect attempt after switching to
|
|
@@ -401,7 +404,8 @@ static coroutine_fn void nbd_reconnect_attempt(BDRVNBDState *s)
|
|
|
}
|
|
|
|
|
|
qemu_mutex_unlock(&s->requests_lock);
|
|
|
- nbd_co_do_establish_connection(s->bs, blocking, NULL);
|
|
|
+ ret = nbd_co_do_establish_connection(s->bs, blocking, NULL);
|
|
|
+ trace_nbd_reconnect_attempt_result(ret, s->bs->in_flight);
|
|
|
qemu_mutex_lock(&s->requests_lock);
|
|
|
|
|
|
/*
|