All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/5] NBD export bitmaps
@ 2018-05-23 10:24 Vladimir Sementsov-Ogievskiy
  2018-05-23 10:24 ` [Qemu-devel] [PATCH v3 1/5] nbd/server: fix trace Vladimir Sementsov-Ogievskiy
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Vladimir Sementsov-Ogievskiy @ 2018-05-23 10:24 UTC (permalink / raw)
  To: qemu-block, qemu-devel
  Cc: armbru, pbonzini, eblake, mreitz, kwolf, vsementsov, den

Hi all.

This is a proposal and realization of new NBD meta context:
qemu. (I hope to send corresponding proposal to NBD protocol soon)

New possible queries will look like:
qemu:dirty-bitmap:<export-bitmap-name>

Mapping from export-bitmap-name to BdrvDirtyBitmap is done through qmp
command nbd-server-add-bitmap. For now, only one bitmap export is
allowed per NBD export, however it may be easily improved if needed 
(we don't have such cases for now)

Client and testing.
I wrote client code for Virtuozzo, but it turned out to be unused,
actually it's used only for tests. We don't have cases, where we need
to import dirty bitmap through qemu nbd-client. All this done for
exporting dirty bitmaps to the third tool. So, I think, it is not worth
refactoring, rebasing and merging client part upstream, if there are no
real usage cases.

v3:
01: new
02: rewritten to satisfy changes in 03, drop r-b
03: - fix comments
    - rewrite nbd_meta_bitmap_query() and rename it to
      nbd_meta_qemu_query(): parse 'qemu:dirty-bitmaps:' for LIST
      option to represent list of all dirty-bitmap contexts.
    - trace points
    - s/512/BDRV_SECTOR_SIZE/
      drop TODO comment
04: s/2.13/3.0
05: new

v2:
01 from v1 is dropped: actually, we don't need generic namespace
parsing for now (especially, after moving to qemu: namespace, which has
the same length as base:), lets postpone it.

01: Improve comment wording (Eric), add Eric's r-b
02: improve commit message
    move NBD_STATE_DIRTY to header
    add comment on NBD_MAX_BITMAP_EXTENTS
    remove MAX_EXTENT_LENGTH and instead update add_extents() which
      uses it
    use export_bitmap_context instead of export_bitmap_name to reduce
      operations on it
    move from qemu-dirty-bitmap to qemu:dirty-bitmap
    other way to parse namespace name
    handle FLAG_DF
03: Improve specification of new qmp command (Eric)

Vladimir Sementsov-Ogievskiy (5):
  nbd/server: fix trace
  nbd/server: add nbd_meta_empty_or_pattern helper
  nbd/server: implement dirty bitmap export
  qapi: new qmp command nbd-server-add-bitmap
  docs/interop: add nbd.txt

 docs/interop/nbd.txt |  37 ++++++
 qapi/block.json      |  23 ++++
 include/block/nbd.h  |   6 +
 blockdev-nbd.c       |  23 ++++
 nbd/server.c         | 322 ++++++++++++++++++++++++++++++++++++++++++++++-----
 MAINTAINERS          |   1 +
 6 files changed, 383 insertions(+), 29 deletions(-)
 create mode 100644 docs/interop/nbd.txt

-- 
2.11.1

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

end of thread, other threads:[~2018-06-08 13:37 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-23 10:24 [Qemu-devel] [PATCH v3 0/5] NBD export bitmaps Vladimir Sementsov-Ogievskiy
2018-05-23 10:24 ` [Qemu-devel] [PATCH v3 1/5] nbd/server: fix trace Vladimir Sementsov-Ogievskiy
2018-05-23 18:57   ` Eric Blake
2018-05-23 10:24 ` [Qemu-devel] [PATCH v3 2/5] nbd/server: add nbd_meta_empty_or_pattern helper Vladimir Sementsov-Ogievskiy
2018-05-23 10:24 ` [Qemu-devel] [PATCH v3 3/5] nbd/server: implement dirty bitmap export Vladimir Sementsov-Ogievskiy
2018-06-08 13:37   ` Vladimir Sementsov-Ogievskiy
2018-05-23 10:24 ` [Qemu-devel] [PATCH v3 4/5] qapi: new qmp command nbd-server-add-bitmap Vladimir Sementsov-Ogievskiy
2018-05-23 10:24 ` [Qemu-devel] [PATCH v3 5/5] docs/interop: add nbd.txt Vladimir Sementsov-Ogievskiy

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.