See patch 2 for an explanation of the motivation. v3: - Clarified QAPI schema documentation that auto-read-only can only degrade read-write to read-only, not the other way round [Eric] - Don't refuse to set copy-on-read=on and auto-read-only=on at the same time; only complain when actually trying to degrade to read-only - Let bdrv_apply_auto_read_only() return -EACCESS on all errors - Fixed file-posix and gluster implementations [Eric, Niels] - Added a patch to make auto-read-only=on the default for human user interfaces (-drive/-hda/...)
v2: - Turn bdrv_set_read_only() into bdrv_apply_auto_read_only() - Support the option in a lot more block drivers Kevin Wolf (9): block: Update flags in bdrv_set_read_only() block: Add auto-read-only option block: Require auto-read-only for existing fallbacks nbd: Support auto-read-only option file-posix: Support auto-read-only option curl: Support auto-read-only option gluster: Support auto-read-only option iscsi: Support auto-read-only option block: Make auto-read-only=on default for -drive qapi/block-core.json | 7 ++++++ include/block/block.h | 5 +++- block.c | 54 +++++++++++++++++++++++++++++++++++-------- block/bochs.c | 17 +++++--------- block/cloop.c | 16 ++++--------- block/curl.c | 8 +++---- block/dmg.c | 16 ++++--------- block/file-posix.c | 19 ++++++++++++--- block/gluster.c | 12 ++++++++-- block/iscsi.c | 8 ++++--- block/nbd-client.c | 10 ++++---- block/rbd.c | 14 ++++------- block/vvfat.c | 11 +++------ blockdev.c | 1 + 14 files changed, 120 insertions(+), 78 deletions(-) -- 2.19.1