From: Kevin Wolf <kwolf@redhat.com>
To: John Snow <jsnow@redhat.com>
Cc: Eric Blake <eblake@redhat.com>,
qemu-block@nongnu.org, pkrempa@redhat.com, jtc@redhat.com,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RFC v4 19/21] blockjobs: Expose manual property
Date: Wed, 28 Feb 2018 19:23:26 +0100 [thread overview]
Message-ID: <20180228182326.GM4855@localhost.localdomain> (raw)
In-Reply-To: <a2ce7907-a3e6-3c3b-fe9b-cd5ee119efe3@redhat.com>
Am 27.02.2018 um 22:57 hat John Snow geschrieben:
>
>
> On 02/27/2018 03:16 PM, Eric Blake wrote:
> > On 02/23/2018 05:51 PM, John Snow wrote:
> >> Expose the "manual" property via QAPI for the backup-related jobs.
> >> As of this commit, this allows the management API to request the
> >> "concluded" and "dismiss" semantics for backup jobs.
> >>
> >> Signed-off-by: John Snow <jsnow@redhat.com>
> >> ---
> >> blockdev.c | 19 ++++++++++++++++---
> >> qapi/block-core.json | 32 ++++++++++++++++++++++++++------
> >> 2 files changed, 42 insertions(+), 9 deletions(-)
> >>
> >
> >> +++ b/qapi/block-core.json
> >> @@ -1177,6 +1177,16 @@
> >> # @job-id: identifier for the newly-created block job. If
> >> # omitted, the device name will be used. (Since 2.7)
> >> #
> >> +# @manual: True to use an expanded, more explicit job control flow.
> >> +# Jobs may transition from a running state to a pending state,
> >> +# where they must be instructed to complete manually via
> >> +# block-job-finalize.
> >> +# Jobs belonging to a transaction must either all or all not
> >> use this
> >> +# setting. Once a transaction reaches a pending state,
> >> issuing the
> >> +# finalize command to any one job in the transaction is
> >> sufficient
> >> +# to finalize the entire transaction.
> >
> > The previous commit message talked about mixed-manual transactions, but
> > this seems to imply it is not possible. I'm fine if we don't support
> > mixed-manual transactions, but wonder if it means any changes to the
> > series.
> >
> > Otherwise looks reasonable from the UI point of view.
> >
>
> More seriously, this documentation I wrote doesn't address the totality
> of the expanded flow. I omitted dismiss here by accident as well. This
> is at best a partial definition of the 'manual' property.
>
> I'd like to use _this_ patch to ask the question: "What should the
> proper noun for the QEMU 2.12+ Expanded Block Job Management Flow
> Mechanism be?"
>
> I'm not too sure, but "Manual mode" leaves a lot to be desired.
I still think that the best way to expose it is like this:
# both default to true
'*auto-finalize': 'bool',
'*auto-dismiss': 'bool',
These options would be very easy to describe because they just invoke
the functionality of a specific QMP command automatically as soon as it
becomes available for the job.
But given how often I already said that and people still don't consider
it as an option, this doesn't appear to have been very convincing. So
whatever... *shrug*
Kevin
next prev parent reply other threads:[~2018-02-28 18:23 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-23 23:51 [Qemu-devel] [RFC v4 00/21] blockjobs: add explicit job management John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 01/21] blockjobs: fix set-speed kick John Snow
2018-02-27 16:32 ` Eric Blake
2018-02-27 17:18 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 02/21] blockjobs: model single jobs as transactions John Snow
2018-02-27 16:36 ` Eric Blake
2018-02-27 17:18 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 03/21] blockjobs: add manual property John Snow
2018-02-27 16:39 ` Eric Blake
2018-02-27 17:18 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 04/21] blockjobs: add status enum John Snow
2018-02-27 16:44 ` Eric Blake
2018-02-27 17:19 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 05/21] blockjobs: add state transition table John Snow
2018-02-27 16:27 ` Kevin Wolf
2018-02-27 16:45 ` John Snow
2018-02-27 17:08 ` Kevin Wolf
2018-02-27 18:58 ` John Snow
2018-02-27 18:58 ` Eric Blake
2018-02-27 19:06 ` John Snow
2018-02-27 19:22 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 06/21] iotests: add pause_wait John Snow
2018-02-27 17:19 ` Kevin Wolf
2018-02-27 19:01 ` Eric Blake
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 07/21] blockjobs: add block_job_verb permission table John Snow
2018-02-27 17:19 ` Kevin Wolf
2018-02-27 19:25 ` Eric Blake
2018-02-27 19:38 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 08/21] blockjobs: add ABORTING state John Snow
2018-02-27 19:34 ` Eric Blake
2018-02-28 14:54 ` Kevin Wolf
2018-02-28 19:26 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 09/21] blockjobs: add CONCLUDED state John Snow
2018-02-27 19:38 ` Eric Blake
2018-02-27 19:44 ` John Snow
2018-02-28 15:37 ` Kevin Wolf
2018-02-28 19:29 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 10/21] blockjobs: add NULL state John Snow
2018-02-27 19:41 ` Eric Blake
2018-02-28 15:42 ` Kevin Wolf
2018-02-28 20:04 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 11/21] blockjobs: add block_job_dismiss John Snow
2018-02-27 19:44 ` Eric Blake
2018-02-28 15:53 ` Kevin Wolf
2018-02-28 20:35 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 12/21] blockjobs: ensure abort is called for cancelled jobs John Snow
2018-02-27 19:49 ` Eric Blake
2018-02-27 20:43 ` John Snow
2018-02-28 16:05 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 13/21] blockjobs: add commit, abort, clean helpers John Snow
2018-02-27 19:50 ` Eric Blake
2018-02-28 16:07 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 14/21] blockjobs: add block_job_txn_apply function John Snow
2018-02-27 19:52 ` Eric Blake
2018-02-28 16:32 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 15/21] blockjobs: add prepare callback John Snow
2018-02-27 19:56 ` Eric Blake
2018-02-27 20:45 ` John Snow
2018-02-28 17:04 ` Kevin Wolf
2018-03-07 3:19 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 16/21] blockjobs: add waiting status John Snow
2018-02-27 20:00 ` Eric Blake
2018-02-27 20:50 ` John Snow
2018-02-28 17:46 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 17/21] blockjobs: add PENDING status and event John Snow
2018-02-27 20:05 ` Eric Blake
2018-02-27 20:54 ` John Snow
2018-02-28 17:55 ` Kevin Wolf
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 18/21] blockjobs: add block-job-finalize John Snow
2018-02-27 20:13 ` Eric Blake
2018-02-28 18:15 ` Kevin Wolf
2018-02-28 19:14 ` John Snow
2018-03-01 10:01 ` Kevin Wolf
2018-03-01 19:24 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 19/21] blockjobs: Expose manual property John Snow
2018-02-27 20:16 ` Eric Blake
2018-02-27 20:42 ` John Snow
2018-02-27 21:57 ` John Snow
2018-02-27 22:27 ` Eric Blake
2018-02-28 18:23 ` Kevin Wolf [this message]
2018-02-28 19:19 ` John Snow
2018-02-28 18:25 ` Kevin Wolf
2018-02-28 19:20 ` John Snow
2018-02-28 19:27 ` [Qemu-devel] [Qemu-block] " Eric Blake
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 20/21] iotests: test manual job dismissal John Snow
2018-02-27 20:21 ` Eric Blake
2018-02-27 20:41 ` John Snow
2018-02-23 23:51 ` [Qemu-devel] [RFC v4 21/21] blockjobs: add manual_mgmt option to transactions John Snow
2018-02-27 20:24 ` Eric Blake
2018-02-28 18:29 ` Kevin Wolf
2018-02-28 19:24 ` John Snow
2018-03-01 10:10 ` Kevin Wolf
2018-02-24 0:30 ` [Qemu-devel] [RFC v4 00/21] blockjobs: add explicit job management no-reply
2018-02-24 14:31 ` no-reply
2018-02-27 21:01 ` John Snow
2018-02-28 18:32 ` Kevin Wolf
2018-02-25 23:25 ` no-reply
2018-02-27 20:58 ` John Snow
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180228182326.GM4855@localhost.localdomain \
--to=kwolf@redhat.com \
--cc=eblake@redhat.com \
--cc=jsnow@redhat.com \
--cc=jtc@redhat.com \
--cc=pkrempa@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).