From: Eric Blake <eblake@redhat.com>
To: qemu-devel@nongnu.org
Cc: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>,
Paolo Bonzini <pbonzini@redhat.com>,
"open list:Network Block Dev..." <qemu-block@nongnu.org>
Subject: [Qemu-devel] [PULL 7/7] docs/interop: add nbd.txt
Date: Wed, 20 Jun 2018 22:19:57 -0500 [thread overview]
Message-ID: <20180621031957.134718-8-eblake@redhat.com> (raw)
In-Reply-To: <20180621031957.134718-1-eblake@redhat.com>
From: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Describe new metadata namespace: "qemu".
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Message-Id: <20180609151758.17343-7-vsementsov@virtuozzo.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
[eblake: grammar tweaks]
Signed-off-by: Eric Blake <eblake@redhat.com>
---
docs/interop/nbd.txt | 38 ++++++++++++++++++++++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 39 insertions(+)
create mode 100644 docs/interop/nbd.txt
diff --git a/docs/interop/nbd.txt b/docs/interop/nbd.txt
new file mode 100644
index 00000000000..77b5f459111
--- /dev/null
+++ b/docs/interop/nbd.txt
@@ -0,0 +1,38 @@
+Qemu supports the NBD protocol, and has an internal NBD client (see
+block/nbd.c), an internal NBD server (see blockdev-nbd.c), and an
+external NBD server tool (see qemu-nbd.c). The common code is placed
+in nbd/*.
+
+The NBD protocol is specified here:
+https://github.com/NetworkBlockDevice/nbd/blob/master/doc/proto.md
+
+The following paragraphs describe some specific properties of NBD
+protocol realization in Qemu.
+
+= Metadata namespaces =
+
+Qemu supports the "base:allocation" metadata context as defined in the
+NBD protocol specification, and also defines an additional metadata
+namespace "qemu".
+
+
+== "qemu" namespace ==
+
+The "qemu" namespace currently contains only one type of context,
+related to exposing the contents of a dirty bitmap alongside the
+associated disk contents. That context has the following form:
+
+ qemu:dirty-bitmap:<dirty-bitmap-export-name>
+
+Each dirty-bitmap metadata context defines only one flag for extents
+in reply for NBD_CMD_BLOCK_STATUS:
+
+ bit 0: NBD_STATE_DIRTY, means that the extent is "dirty"
+
+For NBD_OPT_LIST_META_CONTEXT the following queries are supported
+in addition to "qemu:dirty-bitmap:<dirty-bitmap-export-name>":
+
+* "qemu:" - returns list of all available metadata contexts in the
+ namespace.
+* "qemu:dirty-bitmap:" - returns list of all available dirty-bitmap
+ metadata contexts.
diff --git a/MAINTAINERS b/MAINTAINERS
index da91501c7a6..efb17e6ac0f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1972,6 +1972,7 @@ F: nbd/
F: include/block/nbd*
F: qemu-nbd.*
F: blockdev-nbd.c
+F: docs/interop/nbd.txt
T: git git://repo.or.cz/qemu/ericb.git nbd
NFS
--
2.14.4
next prev parent reply other threads:[~2018-06-21 3:20 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-21 3:19 [Qemu-devel] [PULL 0/7] bitmap export over NBD Eric Blake
2018-06-21 3:19 ` [Qemu-devel] [PULL 1/7] tests: Simplify .gitignore Eric Blake
2018-06-21 3:19 ` [Qemu-devel] [PULL 2/7] nbd/server: fix trace Eric Blake
2018-06-21 3:19 ` [Qemu-devel] [PULL 3/7] nbd/server: refactor NBDExportMetaContexts Eric Blake
2018-06-21 3:19 ` [Qemu-devel] [PULL 4/7] nbd/server: add nbd_meta_empty_or_pattern helper Eric Blake
2018-06-21 3:19 ` [Qemu-devel] [PULL 5/7] nbd/server: implement dirty bitmap export Eric Blake
2018-06-21 10:17 ` Vladimir Sementsov-Ogievskiy
2018-06-21 11:47 ` Eric Blake
2018-06-21 3:19 ` [Qemu-devel] [PULL 6/7] qapi: new qmp command nbd-server-add-bitmap Eric Blake
2018-06-21 3:19 ` Eric Blake [this message]
2018-06-21 5:34 ` [Qemu-devel] [PULL 0/7] bitmap export over NBD no-reply
2018-06-21 11:40 ` Eric Blake
2018-06-21 6:09 ` no-reply
2018-06-21 9:03 ` Peter Maydell
2018-06-21 11:52 ` Eric Blake
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=20180621031957.134718-8-eblake@redhat.com \
--to=eblake@redhat.com \
--cc=pbonzini@redhat.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).