All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/6] dirty-bitmaps: deprecate @status field
@ 2019-02-13 23:23 John Snow
  2019-02-13 23:23 ` [Qemu-devel] [PATCH v2 1/6] block/dirty-bitmap: add recording and busy properties John Snow
                   ` (5 more replies)
  0 siblings, 6 replies; 24+ messages in thread
From: John Snow @ 2019-02-13 23:23 UTC (permalink / raw)
  To: qemu-block, qemu-devel
  Cc: Eric Blake, Stefan Hajnoczi, John Snow, vsementsov, Fam Zheng,
	libvir-list, Juan Quintela, Markus Armbruster,
	Dr. David Alan Gilbert, Kevin Wolf, Max Reitz

The current internal meanings of "locked", "user_locked",
"qmp_locked", "frozen", "enabled", and "disabled" are all
a little muddled.

Deprecate the @status field in favor of two new booleans
that carry very specific meanings. Then, rename and rework
some of the internal semantics to help make the API a bit
more clear and easier to read.

Well, in my opinion.

Based on my current bitmaps branch (includes Eric's patch
and my documentation update patch.)

V2: - All of Eric's suggestions, I hope.
    - Vladimir's phrasing suggestion on patch 1
    - Added a sixth patch that's mostly just motion.

I'm on PTO the next two days, so I didn't get to writing
a test for the busy bit. I think test 223 is a good candidate,
because it uses the NBD functionality. To test with push mode,
I need to come up with a blockdebug configuration that will
let me pause an incremental backup so I can test race-free.
Maybe for V3, sorry.

John Snow (6):
  block/dirty-bitmap: add recording and busy properties
  block/dirty-bitmaps: rename frozen predicate helper
  block/dirty-bitmap: change semantics of enabled predicate
  block/dirty-bitmap: explicitly lock bitmaps with successors
  block/dirty-bitmaps: unify qmp_locked and user_locked calls
  block/dirty-bitmaps: move comment block

 block/dirty-bitmap.c           | 110 ++++++++++++++++++---------------
 blockdev.c                     |  18 +++---
 include/block/dirty-bitmap.h   |   7 +--
 migration/block-dirty-bitmap.c |   8 +--
 nbd/server.c                   |   6 +-
 qapi/block-core.json           |  10 ++-
 qemu-deprecated.texi           |   6 ++
 tests/qemu-iotests/236.out     |  28 +++++++++
 8 files changed, 122 insertions(+), 71 deletions(-)

-- 
2.17.2

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2019-02-19 20:05 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-13 23:23 [Qemu-devel] [PATCH v2 0/6] dirty-bitmaps: deprecate @status field John Snow
2019-02-13 23:23 ` [Qemu-devel] [PATCH v2 1/6] block/dirty-bitmap: add recording and busy properties John Snow
2019-02-14  2:54   ` Eric Blake
2019-02-18 13:27   ` Vladimir Sementsov-Ogievskiy
2019-02-13 23:23 ` [Qemu-devel] [PATCH v2 2/6] block/dirty-bitmaps: rename frozen predicate helper John Snow
2019-02-14  2:57   ` Eric Blake
2019-02-18 13:57   ` Vladimir Sementsov-Ogievskiy
2019-02-18 17:11     ` Vladimir Sementsov-Ogievskiy
2019-02-18 22:32     ` John Snow
2019-02-19 10:17       ` Vladimir Sementsov-Ogievskiy
2019-02-19 20:05         ` John Snow
2019-02-13 23:23 ` [Qemu-devel] [PATCH v2 3/6] block/dirty-bitmap: change semantics of enabled predicate John Snow
2019-02-18 16:39   ` Vladimir Sementsov-Ogievskiy
2019-02-18 23:15     ` John Snow
2019-02-13 23:23 ` [Qemu-devel] [PATCH v2 4/6] block/dirty-bitmap: explicitly lock bitmaps with successors John Snow
2019-02-18 16:52   ` Vladimir Sementsov-Ogievskiy
2019-02-18 22:13     ` John Snow
2019-02-13 23:23 ` [Qemu-devel] [PATCH v2 5/6] block/dirty-bitmaps: unify qmp_locked and user_locked calls John Snow
2019-02-18 17:27   ` Vladimir Sementsov-Ogievskiy
2019-02-18 23:24     ` John Snow
2019-02-13 23:23 ` [Qemu-devel] [PATCH v2 6/6] block/dirty-bitmaps: move comment block John Snow
2019-02-14  3:01   ` Eric Blake
2019-02-18 17:39   ` Vladimir Sementsov-Ogievskiy
2019-02-18 22:03     ` John Snow

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.