Message ID | 1386920120-2651-3-git-send-email-famz@redhat.com |
---|---|
State | New |
Headers | show |
On Fri, Dec 13, 2013 at 03:35:10PM +0800, Fam Zheng wrote: > This adds the enum of all the operations that can be taken on a block > device. > > Signed-off-by: Fam Zheng <famz@redhat.com> > --- > qapi-schema.json | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 50 insertions(+) > > diff --git a/qapi-schema.json b/qapi-schema.json > index d6f8615..8e982a2 100644 > --- a/qapi-schema.json > +++ b/qapi-schema.json > @@ -1440,6 +1440,56 @@ > 'data': ['commit', 'stream', 'mirror', 'backup'] } > > ## > +# @BlockOperationType > +# > +# Type of a block operation. (since 2.0) Why is this exposed in qapi-schema.json? The blockers concept is internal to QEMU and not exposed via QMP.
On 2014年01月03日 18:09, Stefan Hajnoczi wrote: > On Fri, Dec 13, 2013 at 03:35:10PM +0800, Fam Zheng wrote: >> This adds the enum of all the operations that can be taken on a block >> device. >> >> Signed-off-by: Fam Zheng <famz@redhat.com> >> --- >> qapi-schema.json | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 50 insertions(+) >> >> diff --git a/qapi-schema.json b/qapi-schema.json >> index d6f8615..8e982a2 100644 >> --- a/qapi-schema.json >> +++ b/qapi-schema.json >> @@ -1440,6 +1440,56 @@ >> 'data': ['commit', 'stream', 'mirror', 'backup'] } >> >> ## >> +# @BlockOperationType >> +# >> +# Type of a block operation. (since 2.0) > > Why is this exposed in qapi-schema.json? The blockers concept is > internal to QEMU and not exposed via QMP. > I plan to add it into block information (query-block, for example). But in follow up patches. It could be useful for user to check which commands/operations are possible without trial-and-fail, when we put more and more complicated state and configuration into the BDS graph. Fam
On Wed, Jan 08, 2014 at 10:28:59AM +0800, Fam Zheng wrote: > On 2014年01月03日 18:09, Stefan Hajnoczi wrote: > >On Fri, Dec 13, 2013 at 03:35:10PM +0800, Fam Zheng wrote: > >>This adds the enum of all the operations that can be taken on a block > >>device. > >> > >>Signed-off-by: Fam Zheng <famz@redhat.com> > >>--- > >> qapi-schema.json | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ > >> 1 file changed, 50 insertions(+) > >> > >>diff --git a/qapi-schema.json b/qapi-schema.json > >>index d6f8615..8e982a2 100644 > >>--- a/qapi-schema.json > >>+++ b/qapi-schema.json > >>@@ -1440,6 +1440,56 @@ > >> 'data': ['commit', 'stream', 'mirror', 'backup'] } > >> > >> ## > >>+# @BlockOperationType > >>+# > >>+# Type of a block operation. (since 2.0) > > > >Why is this exposed in qapi-schema.json? The blockers concept is > >internal to QEMU and not exposed via QMP. > > > > I plan to add it into block information (query-block, for example). > But in follow up patches. It could be useful for user to check which > commands/operations are possible without trial-and-fail, when we put > more and more complicated state and configuration into the BDS > graph. Can you make it internal for now and expose via QMP if necessary later? I think we shouldn't commit to public APIs unless they are ready and provide a useful service, since we cannot change them. Stefan
On 2014年01月08日 11:26, Stefan Hajnoczi wrote: > On Wed, Jan 08, 2014 at 10:28:59AM +0800, Fam Zheng wrote: >> On 2014年01月03日 18:09, Stefan Hajnoczi wrote: >>> On Fri, Dec 13, 2013 at 03:35:10PM +0800, Fam Zheng wrote: >>>> This adds the enum of all the operations that can be taken on a block >>>> device. >>>> >>>> Signed-off-by: Fam Zheng <famz@redhat.com> >>>> --- >>>> qapi-schema.json | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ >>>> 1 file changed, 50 insertions(+) >>>> >>>> diff --git a/qapi-schema.json b/qapi-schema.json >>>> index d6f8615..8e982a2 100644 >>>> --- a/qapi-schema.json >>>> +++ b/qapi-schema.json >>>> @@ -1440,6 +1440,56 @@ >>>> 'data': ['commit', 'stream', 'mirror', 'backup'] } >>>> >>>> ## >>>> +# @BlockOperationType >>>> +# >>>> +# Type of a block operation. (since 2.0) >>> >>> Why is this exposed in qapi-schema.json? The blockers concept is >>> internal to QEMU and not exposed via QMP. >>> >> >> I plan to add it into block information (query-block, for example). >> But in follow up patches. It could be useful for user to check which >> commands/operations are possible without trial-and-fail, when we put >> more and more complicated state and configuration into the BDS >> graph. > > Can you make it internal for now and expose via QMP if necessary later? > > I think we shouldn't commit to public APIs unless they are ready and > provide a useful service, since we cannot change them. > OK, works for me. Fam
diff --git a/qapi-schema.json b/qapi-schema.json index d6f8615..8e982a2 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -1440,6 +1440,56 @@ 'data': ['commit', 'stream', 'mirror', 'backup'] } ## +# @BlockOperationType +# +# Type of a block operation. (since 2.0) +# +# @backup-source: As a backup source. See the 'drive-backup' command. +# +# @backup-target: As a backup target. See the 'drive-backup' command. +# +# @change: See the 'change' command. +# +# @commit: See the 'block-commit' command. +# +# @dataplane: The virtio-blk dataplane feature. +# +# @drive-del: See the 'drive_del' HMP command. +# +# @eject: See the 'eject' command. +# +# @external-snapshot: See the 'blockdev-snapshot-sync' command. +# +# @internal-snapshot: See the 'blockdev-snapshot-internal-sync' command. +# +# @internal-snapshot-delete: See the 'blockdev-snapshot-delete-internal-sync' command. +# +# @mirror: See the 'drive-mirror' command. +# +# @resize: See the 'block-resize' command. +# +# @stream: See the 'block-stream' command. +# +# Since: 2.0 +## +{ 'enum': 'BlockOpType', + 'data': [ + 'backup-source', + 'backup-target', + 'change', + 'commit', + 'dataplane', + 'drive-del', + 'eject', + 'external-snapshot', + 'internal-snapshot', + 'internal-snapshot-delete', + 'mirror', + 'resize', + 'stream' +] } + +## # @BlockJobInfo: # # Information about a long-running block device operation.
This adds the enum of all the operations that can be taken on a block device. Signed-off-by: Fam Zheng <famz@redhat.com> --- qapi-schema.json | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+)