[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 10/11] file-posix: Add dynamic-auto-read-only QAPI fe
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PULL 10/11] file-posix: Add dynamic-auto-read-only QAPI feature |
Date: |
Wed, 12 Jun 2019 18:52:28 +0200 |
From: Kevin Wolf <address@hidden>
In commit 23dece19da4 ('file-posix: Make auto-read-only dynamic') ,
auto-read-only=on changed its behaviour in file-posix for the 4.0
release. This change cannot be detected through the usual mechanisms
like schema introspection. Add a new feature flag to the schema to
allow libvirt to detect the presence of the new behaviour.
Signed-off-by: Kevin Wolf <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
[Comment tweaked on Eric Blake's advice]
Signed-off-by: Markus Armbruster <address@hidden>
---
qapi/block-core.json | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index 175ccfe896..fcd054fcb1 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -2859,6 +2859,15 @@
# file is large, do not use in production.
# (default: off) (since: 3.0)
#
+# Features:
+# @dynamic-auto-read-only: If present, enabled auto-read-only means that the
+# driver will open the image read-only at first,
+# dynamically reopen the image file read-write when
+# the first writer is attached to the node and reopen
+# read-only when the last writer is detached. This
+# allows giving QEMU write permissions only on demand
+# when an operation actually needs write access.
+#
# Since: 2.9
##
{ 'struct': 'BlockdevOptionsFile',
@@ -2868,7 +2877,9 @@
'*aio': 'BlockdevAioOptions',
'*drop-cache': {'type': 'bool',
'if': 'defined(CONFIG_LINUX)'},
- '*x-check-cache-dropped': 'bool' } }
+ '*x-check-cache-dropped': 'bool' },
+ 'features': [ { 'name': 'dynamic-auto-read-only',
+ 'if': 'defined(CONFIG_POSIX)' } ] }
##
# @BlockdevOptionsNull:
--
2.21.0
- [Qemu-devel] [PULL 00/11] QAPI patches for 2019-06-12, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 01/11] qdev: Delete unused LostTickPolicy "merge", Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 02/11] qapi/block-core: update documentation of preallocation parameter, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 08/11] qapi: Disentangle QAPIDoc code, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 06/11] tests/qapi-schema: Test for good feature lists in structs, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 04/11] block/gluster: update .help of BLOCK_OPT_PREALLOC option, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 10/11] file-posix: Add dynamic-auto-read-only QAPI feature,
Markus Armbruster <=
- [Qemu-devel] [PULL 11/11] qapi: Simplify how QAPIDoc implements its state machine, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 07/11] tests/qapi-schema: Error case tests for features in structs, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 09/11] qapi: Allow documentation for features, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 03/11] block/file-posix: update .help of BLOCK_OPT_PREALLOC option, Markus Armbruster, 2019/06/12
- [Qemu-devel] [PULL 05/11] qapi: Add feature flags to struct types, Markus Armbruster, 2019/06/12
- Re: [Qemu-devel] [PULL 00/11] QAPI patches for 2019-06-12, Peter Maydell, 2019/06/13