Hi all!
I've found some dead-locks, which can be easily triggered on master
branch with default nbd configuration (reconnect-delay is 0),
here are fixes.
01-02 fix real dead-locks
03 - hm. I'm not sure that the problem is reachable on master, I've
faced it in my development branch where I move initial connect into
coroutine and introduce non-blocking connect. So consider it as an
intuitive fix. It just makes code a bit better.
Vladimir Sementsov-Ogievskiy (3):
block/nbd: allow drain during reconnect attempt
block/nbd: on shutdown terminate connection attempt
block/nbd: nbd_co_reconnect_loop(): don't sleep if drained
block/nbd.c | 36 +++++++++++++++++++++++++++---------
1 file changed, 27 insertions(+), 9 deletions(-)
--
2.21.0