From: John Snow <jsnow@redhat.com>
To: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>,
qemu-devel@nongnu.org, qemu-block@nongnu.org
Cc: kwolf@redhat.com, famz@redhat.com, armbru@redhat.com,
mnestratov@virtuozzo.com, mreitz@redhat.com,
nshirokovskiy@virtuozzo.com, den@openvz.org
Subject: Re: [Qemu-devel] [PATCH v2 0/6] qmp dirty bitmap API
Date: Mon, 22 Jan 2018 12:23:47 -0500 [thread overview]
Message-ID: <e4b81d10-eb5d-a988-3dbb-75ed1ee07850@redhat.com> (raw)
In-Reply-To: <ea632dcf-28f5-5f33-e22f-db7e622da823@virtuozzo.com>
On 01/22/2018 07:22 AM, Vladimir Sementsov-Ogievskiy wrote:
> 22.01.2018 12:20, Vladimir Sementsov-Ogievskiy wrote:
>> 20.01.2018 02:30, John Snow wrote:
>>>
>>> On 01/16/2018 07:54 AM, Vladimir Sementsov-Ogievskiy wrote:
>>>> Hi all.
>>>>
>>>> There are three qmp commands, needed to implement external backup API.
>>>>
>>>> Using these three commands, client may do all needed bitmap
>>>> management by
>>>> hand:
>>>>
>>>> on backup start we need to do a transaction:
>>>> {disable old bitmap, create new bitmap}
>>>>
>>>> on backup success:
>>>> drop old bitmap
>>>>
>>>> on backup fail:
>>>> enable old bitmap
>>>> merge new bitmap to old bitmap
>>>> drop new bitmap
>>>>
>>>> v2: fix merge command deadlock
>>>> add new patches: 1 and 6
>>>>
>>>> Vladimir Sementsov-Ogievskiy (6):
>>>> block: maintain persistent disabled bitmaps
>>>> block/dirty-bitmap: add lock to bdrv_enable/disable_dirty_bitmap
>>>> qapi: add block-dirty-bitmap-enable/disable
>>>> qmp: transaction support for block-dirty-bitmap-enable/disable
>>>> qapi: add block-dirty-bitmap-merge
>>>> qapi: add disabled parameter to block-dirty-bitmap-add
>>>>
>>>> qapi/block-core.json | 92 ++++++++++++++++++++++-
>>>> qapi/transaction.json | 4 +
>>>> block/qcow2.h | 2 +-
>>>> include/block/dirty-bitmap.h | 3 +-
>>>> block/dirty-bitmap.c | 42 ++++++-----
>>>> block/qcow2-bitmap.c | 12 +--
>>>> block/qcow2.c | 2 +-
>>>> blockdev.c | 169
>>>> +++++++++++++++++++++++++++++++++++++++++--
>>>> 8 files changed, 287 insertions(+), 39 deletions(-)
>>>>
>>> Fails to apply to master (b384cd95) on patch four and five. Only
>>> contextual problems, I've patched it up and I'll review that.
>>>
>>> (mirrored here if you want to check my rebase work:
>>> https://github.com/jnsnow/qemu/tree/vlad-review)
>>>
>>> Since I was full of such bad and stupid ideas last time, I'd like
>>> someone else to look over this one for design and I'll just review it
>>> for accuracy.
>>>
>>> --js
>>
>> Thank you for review, John!
>>
>> Ok, so, I'll going to:
>>
>> - take patch 1 into migration and respin it today (I hope) with test
>> about qcow2-based bitmap migration disabled.
>> - separate fixes and refactoring from here (locking + _bitmap_clear
>> transaction), send them separately
>> - than, make test for external backup and respin these series with it
>>
>
> changed to:
>
> 1. send patch 1/6 separately with the whole reasoning[done], as it
> blocks two series, wait for accepting
> 2. respin postcopy series
> 3. finish up discussion on bitmap locking under "[PATCH v9 03/13]
> block/dirty-bitmap: add _locked version of bdrv_reclaim_dirty_bitmap"
> 4. separate fixes and refactoring from here (locking + _bitmap_clear
> transaction), send them separately
> 5. make test for external backup and respin these series with it
>
> 2 depends on 1
> 4 depends on 3
> 5 depends on 1 and 4
>
Great, thanks!
next prev parent reply other threads:[~2018-01-22 17:23 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-16 12:54 [Qemu-devel] [PATCH v2 0/6] qmp dirty bitmap API Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 1/6] block: maintain persistent disabled bitmaps Vladimir Sementsov-Ogievskiy
2018-01-19 23:43 ` John Snow
2018-01-22 9:08 ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 2/6] block/dirty-bitmap: add lock to bdrv_enable/disable_dirty_bitmap Vladimir Sementsov-Ogievskiy
2018-01-19 23:45 ` John Snow
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 3/6] qapi: add block-dirty-bitmap-enable/disable Vladimir Sementsov-Ogievskiy
2018-01-19 23:50 ` John Snow
2018-01-22 9:09 ` Vladimir Sementsov-Ogievskiy
2018-01-22 19:51 ` Eric Blake
2018-01-22 19:56 ` John Snow
2018-02-02 15:37 ` Vladimir Sementsov-Ogievskiy
2018-02-03 16:09 ` Markus Armbruster
2018-02-05 11:59 ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 4/6] qmp: transaction support for block-dirty-bitmap-enable/disable Vladimir Sementsov-Ogievskiy
2018-01-17 15:06 ` Vladimir Sementsov-Ogievskiy
2018-01-20 0:28 ` John Snow
2018-01-22 9:14 ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 5/6] qapi: add block-dirty-bitmap-merge Vladimir Sementsov-Ogievskiy
2018-02-03 16:06 ` Markus Armbruster
2018-02-05 12:00 ` Vladimir Sementsov-Ogievskiy
[not found] ` <66a8f977-9274-e77b-e795-21a50690c4eb@redhat.com>
2018-10-08 13:24 ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 6/6] qapi: add disabled parameter to block-dirty-bitmap-add Vladimir Sementsov-Ogievskiy
2018-01-19 23:30 ` [Qemu-devel] [PATCH v2 0/6] qmp dirty bitmap API John Snow
2018-01-22 9:20 ` Vladimir Sementsov-Ogievskiy
2018-01-22 12:22 ` Vladimir Sementsov-Ogievskiy
2018-01-22 17:23 ` John Snow [this message]
2018-02-02 11:56 ` Vladimir Sementsov-Ogievskiy
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=e4b81d10-eb5d-a988-3dbb-75ed1ee07850@redhat.com \
--to=jsnow@redhat.com \
--cc=armbru@redhat.com \
--cc=den@openvz.org \
--cc=famz@redhat.com \
--cc=kwolf@redhat.com \
--cc=mnestratov@virtuozzo.com \
--cc=mreitz@redhat.com \
--cc=nshirokovskiy@virtuozzo.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=vsementsov@virtuozzo.com \
/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).