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