Displaying 4 results from an estimated 4 matches for "nbd_get_init_flag".
Did you mean:
  nbd_get_init_flags
  
2020 Feb 10
1
[nbdkit PATCH 10/10] plugins: Wire up nbd plugin support for NBD_INFO_INIT_STATE
...rce and binary forms, with or without
  * modification, are permitted provided that the following conditions are
@@ -702,6 +702,42 @@ nbdplug_can_extents (void *handle)
   return i;
 }
+static int
+nbdplug_init_sparse (void *handle)
+{
+  struct handle *h = handle;
+  int i = 0;
+
+#if LIBNBD_HAVE_NBD_GET_INIT_FLAGS
+  i = nbd_get_init_flags (h->nbd);
+
+  if (i == -1) {
+    nbdkit_error ("failure to check init flags: %s", nbd_get_error ());
+    return -1;
+  }
+  i = !!(i & LIBNBD_INIT_SPARSE);
+#endif
+  return i;
+}
+
+static int
+nbdplug_init_zero (void *handle)
+{
+  struct handle *h =...
2020 Feb 10
0
[libnbd PATCH 1/1] generator: Add support for NBD_INFO_INIT_STATE extension
The NBD protocol is adding an extension for servers to report the
initial state of the image (for now, whether it is sparse and/or reads
as all zeroes).  Time to expose this to clients, via the new API
nbd_get_init_flags().  The patch requires refreshing the
nbd-protocol.h file from a corresponding contemporary nbdkit commit.
Testing is possible with recent enough qemu.
---
 .gitignore                         |  1 +
 generator/generator                | 40 +++++++++++++--
 generator/states-newstyle-opt-go.c | 12...
2020 Feb 10
17
Cross-project NBD extension proposal: NBD_INFO_INIT_STATE
I will be following up to this email with four separate threads each 
addressed to the appropriate single list, with proposed changes to:
- the NBD protocol
- qemu: both server and client
- libnbd: client
- nbdkit: server
The feature in question adds a new optional NBD_INFO_ packet to the 
NBD_OPT_GO portion of handshake, adding up to 16 bits of information 
that the server can advertise to the
2020 Feb 10
2
[nbdkit PATCH 04/10] plugins: Wire up in-memory plugin support for NBD_INFO_INIT_STATE
...y data, so it
doesn't need changes.  The info plugin is never sparse, but can be all
zeroes in base64exportname mode.
Adding initial state support to file-based and language binding
plugins will be done separately.
Testing of this addition relies on a contemporary patch to libnbd
adding a new nbd_get_init_flags() function for reading the advertised
initial state, then demonstrating changes in state observable from the
memory plugin over successive clients.
Signed-off-by: Eric Blake <eblake@redhat.com>
---
 common/sparse/sparse.c    | 30 +++++++++++++++++-
 common/sparse/sparse.h    | 19 ++++++++++...