[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v9 0/3] NBD reconnect
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
Re: [PATCH v9 0/3] NBD reconnect |
Date: |
Wed, 9 Oct 2019 15:35:12 +0000 |
Oops, somehow, I copied subject and forget to fix v9/v10. It's v10.
09.10.2019 11:41, Vladimir Sementsov-Ogievskiy wrote:
> Hi all!
> Here is NBD reconnect. Previously, if connection failed all current
> and future requests will fail. After the series, nbd-client driver
> will try to reconnect unlimited times. During first @reconnect-delay
> seconds of reconnecting all requests will wait for the connection,
> and if it is established requests will be resent. After
> @reconnect-delay period all requests will be failed (until successful
> reconnect).
>
> v10:
>
> 01: add Eric's r-b
> 02: drop dead assignment local_err = NULL
> s/nbd_reconnect_loop/nbd_co_reconnect_loop/
> 03: avoid race conditions + some improvements
> - introduce qemu_io_silent_check and use it to wait for NBD server
> start
> - use size variable instead of '5M' in all places
> - use smart waiting loop instead of sleep, to wait for job progress
> - do srv.wait() after srv.kill(), to be sure that server is stopped
> - drop throttling earlier
> - drop 'quick' tag in group file
>
> Vladimir Sementsov-Ogievskiy (3):
> qemu-coroutine-sleep: introduce qemu_co_sleep_wake
> block/nbd: nbd reconnect
> iotests: test nbd reconnect
>
> include/qemu/coroutine.h | 23 ++-
> block/nbd.c | 331 +++++++++++++++++++++++++++-------
> util/qemu-coroutine-sleep.c | 51 ++++--
> tests/qemu-iotests/264 | 95 ++++++++++
> tests/qemu-iotests/264.out | 13 ++
> tests/qemu-iotests/group | 1 +
> tests/qemu-iotests/iotests.py | 11 ++
> 7 files changed, 447 insertions(+), 78 deletions(-)
> create mode 100755 tests/qemu-iotests/264
> create mode 100644 tests/qemu-iotests/264.out
>
--
Best regards,
Vladimir