Being able to programmatically force nbdkit to be less parallel can be
useful during testing. I was less sure about patch 3, but if you like
it, I'm inclined to instead squash it into patch 1. This patch is
written to apply after my NBD_CMD_CACHE work (since I touched the
nocache filter); but can be rearranged if we think this series should
go in first while that one undergoes any adjustments from review.
Eric Blake (3):
server: Allow filters to reduce thread model dynamically
noparallel: Implement new filter
filters: Use only .thread_model, not THREAD_MODEL
docs/nbdkit-filter.pod | 45 ++++++----
filters/fua/nbdkit-fua-filter.pod | 1 +
filters/nocache/nbdkit-nocache-filter.pod | 1 +
filters/noextents/nbdkit-noextents-filter.pod | 1 +
.../noparallel/nbdkit-noparallel-filter.pod | 66 ++++++++++++++
filters/nozero/nbdkit-nozero-filter.pod | 1 +
configure.ac | 2 +
include/nbdkit-filter.h | 7 +-
filters/cow/cow.c | 2 -
filters/delay/delay.c | 2 -
filters/error/error.c | 2 -
filters/fua/fua.c | 2 -
filters/log/log.c | 2 -
filters/nocache/nocache.c | 2 -
filters/noextents/noextents.c | 2 -
filters/noparallel/noparallel.c | 85 +++++++++++++++++++
filters/nozero/nozero.c | 2 -
filters/offset/offset.c | 2 -
filters/partition/partition.c | 2 -
filters/rate/rate.c | 2 -
filters/readahead/readahead.c | 2 -
filters/stats/stats.c | 2 -
filters/truncate/truncate.c | 2 -
filters/xz/xz.c | 6 +-
server/filters.c | 8 +-
server/main.c | 10 ++-
filters/noparallel/Makefile.am | 61 +++++++++++++
tests/test-eflags.sh | 16 ++++
tests/test-parallel-file.sh | 13 ++-
29 files changed, 296 insertions(+), 55 deletions(-)
create mode 100644 filters/noparallel/nbdkit-noparallel-filter.pod
create mode 100644 filters/noparallel/noparallel.c
create mode 100644 filters/noparallel/Makefile.am
--
2.20.1