Hi, in the description of my "Misc reopen-related patches" I said that the next series after that one would be the implementation of the blockdev-reopen QMP command. That's not going to be the case after all because I have a dozen of new patches that I wanted to publish now.
So here's what's going on: When reopening a BlockDriverState using bdrv_reopen() and friends the new options can be specified either with a QDict or with flags. Both methods overlap and that makes the semantics and the implementation unnecessarily complicated. This series removes the 'flags' parameter from these functions, so from now on all option changes must be specified using a QDict. Apart from simplifying the API, a few bugs are fixed along the way. See the individual patches for more details. This needs to be applied on top of "Misc reopen-related patches v3" (https://lists.gnu.org/archive/html/qemu-block/2018-09/msg00103.html), which goes on top of the current master (19b599f7664b2ebfd0f405fb79c). Regards, Berto Alberto Garcia (14): block: Don't call update_flags_from_options() if the options are wrong block: Add bdrv_reopen_set_read_only() block: Use bdrv_reopen_set_read_only() in bdrv_backing_update_filename() block: Use bdrv_reopen_set_read_only() in commit_start/complete() block: Use bdrv_reopen_set_read_only() in bdrv_commit() block: Use bdrv_reopen_set_read_only() in stream_start/complete() block: Use bdrv_reopen_set_read_only() in qmp_change_backing_file() block: Use bdrv_reopen_set_read_only() in external_snapshot_commit() block: Use bdrv_reopen_set_read_only() in the mirror driver block: Drop bdrv_reopen() qemu-io: Put flag changes in the options QDict in reopen_f() block: Clean up reopen_backing_file() in block/replication.c block: Remove flags parameter from bdrv_reopen_queue() block: Stop passing flags to bdrv_reopen_queue_child() block.c | 90 ++++++++++++++++++++++------------------------ block/commit.c | 23 +++++------- block/mirror.c | 20 +++++++---- block/replication.c | 40 +++++++++------------ block/stream.c | 20 +++++------ blockdev.c | 11 ++---- include/block/block.h | 6 ++-- qemu-io-cmds.c | 29 +++++++++++++-- tests/qemu-iotests/133 | 15 ++++++++ tests/qemu-iotests/133.out | 12 +++++++ 10 files changed, 151 insertions(+), 115 deletions(-) -- 2.11.0