diff mbox series

[v3,28/33] nbd/client-connection: do qio_channel_set_delay(false)

Message ID 20210416080911.83197-29-vsementsov@virtuozzo.com (mailing list archive)
State New, archived
Headers show
Series block/nbd: rework client connection | expand

Commit Message

Vladimir Sementsov-Ogievskiy April 16, 2021, 8:09 a.m. UTC
nbd_open() does it (through nbd_establish_connection()).
Actually we lost that call on reconnect path in 1dc4718d849e1a1fe
"block/nbd: use non-blocking connect: fix vm hang on connect()"
when we have introduced reconnect thread.

Fixes: 1dc4718d849e1a1fe665ce5241ed79048cfa2cfc
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
---
 nbd/client-connection.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Eric Blake June 3, 2021, 8:48 p.m. UTC | #1
On Fri, Apr 16, 2021 at 11:09:06AM +0300, Vladimir Sementsov-Ogievskiy wrote:
> nbd_open() does it (through nbd_establish_connection()).
> Actually we lost that call on reconnect path in 1dc4718d849e1a1fe
> "block/nbd: use non-blocking connect: fix vm hang on connect()"
> when we have introduced reconnect thread.

s/have introduced/introduced the/

> 
> Fixes: 1dc4718d849e1a1fe665ce5241ed79048cfa2cfc
> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
> ---
>  nbd/client-connection.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/nbd/client-connection.c b/nbd/client-connection.c
> index 36d2c7c693..00efff293f 100644
> --- a/nbd/client-connection.c
> +++ b/nbd/client-connection.c
> @@ -126,6 +126,8 @@ static int nbd_connect(QIOChannelSocket *sioc, SocketAddress *addr,
>          return ret;
>      }
>  
> +    qio_channel_set_delay(QIO_CHANNEL(sioc), false);
> +
>      if (!info) {
>          return 0;
>      }

Reviewed-by: Eric Blake <eblake@redhat.com>

Is this bug fix something that can be cherry-picked in isolation, or
does it depend too much on the rest of the series?
Vladimir Sementsov-Ogievskiy June 4, 2021, 5:32 a.m. UTC | #2
03.06.2021 23:48, Eric Blake wrote:
> On Fri, Apr 16, 2021 at 11:09:06AM +0300, Vladimir Sementsov-Ogievskiy wrote:
>> nbd_open() does it (through nbd_establish_connection()).
>> Actually we lost that call on reconnect path in 1dc4718d849e1a1fe
>> "block/nbd: use non-blocking connect: fix vm hang on connect()"
>> when we have introduced reconnect thread.
> 
> s/have introduced/introduced the/
> 
>>
>> Fixes: 1dc4718d849e1a1fe665ce5241ed79048cfa2cfc
>> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
>> ---
>>   nbd/client-connection.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/nbd/client-connection.c b/nbd/client-connection.c
>> index 36d2c7c693..00efff293f 100644
>> --- a/nbd/client-connection.c
>> +++ b/nbd/client-connection.c
>> @@ -126,6 +126,8 @@ static int nbd_connect(QIOChannelSocket *sioc, SocketAddress *addr,
>>           return ret;
>>       }
>>   
>> +    qio_channel_set_delay(QIO_CHANNEL(sioc), false);
>> +
>>       if (!info) {
>>           return 0;
>>       }
> 
> Reviewed-by: Eric Blake <eblake@redhat.com>
> 
> Is this bug fix something that can be cherry-picked in isolation, or
> does it depend too much on the rest of the series?
> 

Will try to move to start of the series
diff mbox series

Patch

diff --git a/nbd/client-connection.c b/nbd/client-connection.c
index 36d2c7c693..00efff293f 100644
--- a/nbd/client-connection.c
+++ b/nbd/client-connection.c
@@ -126,6 +126,8 @@  static int nbd_connect(QIOChannelSocket *sioc, SocketAddress *addr,
         return ret;
     }
 
+    qio_channel_set_delay(QIO_CHANNEL(sioc), false);
+
     if (!info) {
         return 0;
     }