[Libguestfs] [libnbd PATCH v3 0/7] Avoid deadlock with in-flight commands

Eric Blake eblake at redhat.com
Wed May 22 21:29:00 UTC 2019


Since v2:
- rebase to Rich's new API calls
- more refactoring in patch 1 (retitled)
- new patches 3 and 4
- fix data corruption in patch 6 (was 4)
- more tweaks to the reproducer example (including using new API from 3)

Eric Blake (7):
  lib: Refactor command_common() to do more common work
  commands: Allow for a command queue
  commands: Expose FIFO ordering of server completions
  disconnect: Allow shutdown during processing
  states: Split ISSUE_COMMAND.SEND_REQUEST
  states: Allow in-flight read while writing next command
  examples: Add example to demonstrate just-fixed deadlock scenario

 .gitignore                       |   1 +
 examples/Makefile.am             |  10 ++
 examples/batched-read-write.c    | 214 +++++++++++++++++++++++++++++++
 generator/generator              |  52 ++++++--
 generator/states-issue-command.c |  85 ++++++++----
 generator/states-reply.c         |  13 +-
 generator/states.c               |   5 +
 lib/aio.c                        |  13 ++
 lib/disconnect.c                 |  23 +---
 lib/internal.h                   |  14 +-
 lib/rw.c                         | 131 ++++++++-----------
 11 files changed, 429 insertions(+), 132 deletions(-)
 create mode 100644 examples/batched-read-write.c

-- 
2.20.1




More information about the Libguestfs mailing list