qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Kevin Wolf <kwolf@redhat.com>
To: Fiona Ebner <f.ebner@proxmox.com>
Cc: qemu-devel@nongnu.org, qemu-block@nongnu.org, armbru@redhat.com,
	eblake@redhat.com, hreitz@redhat.com, vsementsov@yandex-team.ru,
	jsnow@redhat.com, den@virtuozzo.com, t.lamprecht@proxmox.com,
	alexander.ivanov@virtuozzo.com
Subject: Re: [PATCH v3 1/9] blockjob: introduce block-job-change QMP command
Date: Mon, 23 Oct 2023 15:42:38 +0200	[thread overview]
Message-ID: <ZTZ4TlOwFNZgb9pq@redhat.com> (raw)
In-Reply-To: <64667e64-0b32-4cb4-b76a-4bd444964e3d@proxmox.com>

Am 23.10.2023 um 11:31 hat Fiona Ebner geschrieben:
> Am 18.10.23 um 17:52 schrieb Kevin Wolf:
> > Am 13.10.2023 um 11:21 hat Fiona Ebner geschrieben:
> >> which will allow changing job-type-specific options after job
> >> creation.
> >>
> >> In the JobVerbTable, the same allow bits as for set-speed are used,
> >> because set-speed can be considered an existing change command.
> >>
> >> Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
> >> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
> > 
> >> diff --git a/job.c b/job.c
> >> index 72d57f0934..99a2e54b54 100644
> >> --- a/job.c
> >> +++ b/job.c
> >> @@ -80,6 +80,7 @@ bool JobVerbTable[JOB_VERB__MAX][JOB_STATUS__MAX] = {
> >>      [JOB_VERB_COMPLETE]             = {0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0},
> >>      [JOB_VERB_FINALIZE]             = {0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
> >>      [JOB_VERB_DISMISS]              = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0},
> >> +    [JOB_VERB_CHANGE]               = {0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
> >>  };
> > 
> > I'm not sure if I would have included JOB_STATUS_CREATED, i.e. before
> > the job has even started, but it's not necessarily a problem. The
> > implementation just need to be careful to work even in early stages. But
> > probably the early stages include some part of JOB_STATUS_RUNNING, too,
> > so they'd have to do this anyway.
> > 
> 
> As mentioned in the commit message, I copied the bits from
> JOB_VERB_SET_SPEED, because that seemed to be very similar, as it can
> also be seen as a change operation (and who knows, maybe it can be
> merged into JOB_VERB_CHANGE at some point in the future). But I can
> remove the bit if you want me to.

I think it's fine as it is, just something to keep in mind while
reviewing implementations.

What you could do is adding something to the comment for the change
callback in blockjob_int.h, like "Note that this can already be called
before the job coroutine is running".

Kevin



  reply	other threads:[~2023-10-23 13:43 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-13  9:21 [PATCH v3 0/9] mirror: allow switching from background to active mode Fiona Ebner
2023-10-13  9:21 ` [PATCH v3 1/9] blockjob: introduce block-job-change QMP command Fiona Ebner
2023-10-18 15:52   ` Kevin Wolf
2023-10-23  9:31     ` Fiona Ebner
2023-10-23 13:42       ` Kevin Wolf [this message]
2023-10-13  9:21 ` [PATCH v3 2/9] block/mirror: set actively_synced even after the job is ready Fiona Ebner
2023-10-13  9:21 ` [PATCH v3 3/9] block/mirror: move dirty bitmap to filter Fiona Ebner
2023-10-13  9:21 ` [PATCH v3 4/9] block/mirror: determine copy_to_target only once Fiona Ebner
2023-10-13  9:21 ` [PATCH v3 5/9] mirror: implement mirror_change method Fiona Ebner
2023-10-18  9:38   ` Markus Armbruster
2023-10-18 16:59   ` Kevin Wolf
2023-10-23 11:37     ` Fiona Ebner
2023-10-23 12:59       ` Kevin Wolf
2023-10-23 14:14         ` Fiona Ebner
2023-10-24 11:04           ` Kevin Wolf
2023-10-13  9:21 ` [PATCH v3 6/9] qapi/block-core: use JobType for BlockJobInfo's type Fiona Ebner
2023-10-18  9:37   ` Markus Armbruster
2023-10-13  9:21 ` [PATCH v3 7/9] qapi/block-core: turn BlockJobInfo into a union Fiona Ebner
2023-10-13  9:21 ` [PATCH v3 8/9] blockjob: query driver-specific info via a new 'query' driver method Fiona Ebner
2023-10-13  9:21 ` [PATCH v3 9/9] mirror: return mirror-specific information upon query Fiona Ebner
2023-10-18  9:41 ` [PATCH v3 0/9] mirror: allow switching from background to active mode Markus Armbruster
2023-10-18  9:45   ` Fiona Ebner
2023-11-03  9:37     ` Markus Armbruster
2023-10-19 13:36 ` Kevin Wolf
2023-10-23 11:39   ` Fiona Ebner
2023-10-25 12:27     ` Fiona Ebner
2023-10-25 15:20       ` Kevin Wolf

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=ZTZ4TlOwFNZgb9pq@redhat.com \
    --to=kwolf@redhat.com \
    --cc=alexander.ivanov@virtuozzo.com \
    --cc=armbru@redhat.com \
    --cc=den@virtuozzo.com \
    --cc=eblake@redhat.com \
    --cc=f.ebner@proxmox.com \
    --cc=hreitz@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=t.lamprecht@proxmox.com \
    --cc=vsementsov@yandex-team.ru \
    /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).