Displaying 20 results from an estimated 28 matches for "aio_block_status".
2020 Feb 10
0
[libnbd PATCH 1/1] generator: Add support for NBD_INFO_INIT_STATE extension
...uot;CMD_FLAG";
flags = [
@@ -1969,7 +1969,8 @@ are free to pass in other contexts."
^ non_blocking_test_call_description;
see_also = [SectionLink "Flag calls";
Link "add_meta_context";
- Link "block_status"; Link "aio_block_status"];
+ Link "block_status"; Link "aio_block_status";
+ Link "get_init_flags"];
};
"get_protocol", {
@@ -1990,6 +1991,30 @@ Most modern NBD servers use C<\"newstyle-fixed\">.
Link "g...
2020 Sep 11
0
[libnbd PATCH v2 3/5] api: Add nbd_set_strict_mode
...not exceed C<count> bytes; however, libnbd does not
-validate that the server obeyed the flag.";
+validate that the server obeyed the flag."
+^ strict_call_description;
see_also = [Link "add_meta_context"; Link "can_meta_context";
- Link "aio_block_status"];
+ Link "aio_block_status"; Link "set_strict_mode"];
};
"poll", {
@@ -2088,9 +2166,10 @@ Or supply the optional C<completion_callback> which will be invoked
as described in L<libnbd(3)/Completion callbacks>.
Note that you mus...
2019 Sep 05
0
[PATCH libnbd] generator: Move first_version fields to a single table.
...0);
+ "aio_pread", (1, 0);
+ "aio_pread_structured", (1, 0);
+ "aio_pwrite", (1, 0);
+ "aio_disconnect", (1, 0);
+ "aio_flush", (1, 0);
+ "aio_trim", (1, 0);
+ "aio_cache", (1, 0);
+ "aio_zero", (1, 0);
+ "aio_block_status", (1, 0);
+ "aio_get_fd", (1, 0);
+ "aio_get_direction", (1, 0);
+ "aio_notify_read", (1, 0);
+ "aio_notify_write", (1, 0);
+ "aio_is_created", (1, 0);
+ "aio_is_connecting", (1, 0);
+ "aio_is_ready", (1, 0);
+ "...
2019 May 28
0
[libnbd PATCH 2/4] api: Rearrange flags argument to block_status
...;)]) ];
+ "nr_entries")]);
+ UInt32 "flags" ];
ret = RErr;
shortdesc = "read the block status of the given range";
longdesc = "\
@@ -1570,12 +1571,13 @@ in C<nbd_zero>.";
"aio_block_status", {
default_call with
- args = [ UInt64 "count"; UInt64 "offset"; UInt32 "flags";
+ args = [ UInt64 "count"; UInt64 "offset";
Opaque "data";
Callback ("extent", [Opaque "data"...
2019 Sep 05
3
[PATCH libnbd] generator: Move first_version fields to a single table.
This doesn't include Eric's new APIs, but if you push those
then I can rebase this one on top.
Rich.
2019 Aug 13
0
[PATCH libnbd 1/6] generator: Share single list of all Closures.
...UInt64 "count"; UInt64 "offset"; Closure completion_closure ];
optargs = [ OFlags ("flags", cmd_flags) ];
ret = RInt64;
permitted_states = [ Connected ];
@@ -2084,12 +2082,7 @@ Other parameters behave as documented in C<nbd_zero>.";
"aio_block_status", {
default_call with
- args = [ UInt64 "count"; UInt64 "offset";
- Closure { cbname="extent";
- cbargs=[CBString "metacontext"; CBUInt64 "offset";
- CBArrayAndLen (UInt32...
2020 Sep 11
10
[libnbd PATCH v2 0/5] Add knobs for client- vs. server-side validation
In v2:
- now based on my proposal to add LIBNBD_SHUTDOWN_IMMEDIATE
- four flags instead of two: STRICT_FLAGS is new (patch 4),
and STRICT_BOUNDS is separate from STRICT_ZERO_SIZE (patch 5)
- various refactorings for more shared code and less duplication
Eric Blake (5):
api: Add xxx_MASK constant for each Flags type
generator: Refactor filtering of accepted OFlags
api: Add
2020 Sep 11
0
[libnbd PATCH v2 2/5] generator: Refactor filtering of accepted OFlags
...["FUA"; "NO_HOLE"; "FAST_ZERO"]) ];
ret = RCookie;
permitted_states = [ Connected ];
shortdesc = "send write zeroes command to the NBD server";
@@ -2188,7 +2202,8 @@ Other parameters behave as documented in L<nbd_zero(3)>.";
"aio_block_status", {
default_call with
args = [ UInt64 "count"; UInt64 "offset"; Closure extent_closure ];
- optargs = [ OClosure completion_closure; OFlags ("flags", cmd_flags) ];
+ optargs = [ OClosure completion_closure;
+ OFlags ("flags"...
2019 May 28
6
[RFC libnbd PATCH 0/4] Add CMD_FLAG_DF support
RFC because this is an API break, but we haven't declared stable API
yet. If we like it, I'm working on using libnbd to implement the
nbdkit-nbd plugin; knowing whether it is API version 0.1 or 0.2 will
be useful. I also dabbled with allowing optional parameters in python,
although my OCaml is weak enough that there may be cleaner ways to
approach that.
Eric Blake (4):
api: Add flags
2019 Jun 29
0
[libnbd PATCH 5/6] api: Add new nbd_aio_FOO_notify functions
...ll status of the command by storing into
+C<error> and returning C<-1>, although attempts to undo non-zero
+status back to zero are ignored. The callback cannot call C<nbd_*>
+APIs on the same handle since it holds the handle lock and will
+cause a deadlock.";
};
"aio_block_status", {
@@ -1843,8 +2055,42 @@ in C<nbd_zero>.";
Send the block status command to the NBD server. This returns the
unique positive 64 bit handle for this command, or C<-1> on
error. To check if the command completed, call
-C<nbd_aio_command_completed>. Parameters behav...
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
2019 Jul 16
2
[PATCH libnbd] generator: Define new Closure type
** INCOMPLETE **
This is the generator change as discussed on the list already.
The Python and OCaml bindings are not yet done.
It passes all [C only] tests and valgrind.
Note that nbd_add_close_callback is inconsistent with other closure
types because it passes the user_data parameter after the function.
(This is not caused by the current patch, it was already
inconsistent). We decided that
2019 Jul 16
0
[libnbd PATCH 2/2] RFC: generator: Handle shared callbacks in Python
...iomatic OCaml - but hey, it
taught me a lot about OCaml. Writing a 'string * callback list' proved
to be a rather interesting exercise]
Our C code has a couple of functions that want to take multiple
callback functions that share a single opaque data
(nbd_aio_pread_structured_callback; nbd_aio_block_status_callback).
However, the mapping of this construct to Python passed only the
opaque handle of the first function to the second callback wrapper,
which means we would invoke the wrong Python Callable; better is
tracking a single malloc()d structure containing the Python opaque
object, and ALL of the...
2019 Jul 24
0
[PATCH libnbd 2/3] lib: Implement closure lifetimes.
...Closure { cbname="callback";
+ cbargs=[Int64 "cookie"; Mutable (Int "error")]};
Flags "flags" ];
ret = RInt64;
permitted_states = [ Connected ];
@@ -2052,12 +2037,11 @@ cause a deadlock.";
"aio_block_status", {
default_call with
args = [ UInt64 "count"; UInt64 "offset";
- Closure (true,
- { cbname="extent";
- cbargs=[String "metacontext"; UInt64 "offset";
-...
2019 Jul 16
3
[RFC libnbd PATCH 0/2] Start fixing python nbd.pread_structured_callback
Posting now that I got something to compile (at the expense of
breaking OCaml bindings), but I'm open to ideas on how to improve it.
Eric Blake (2):
generator: Tweak print_c_arg_list to take alternate first arg
RFC: generator: Handle shared callbacks in Python
generator/generator | 556 ++++++++++++++++++++++----------------------
1 file changed, 280 insertions(+), 276 deletions(-)
--
2019 Aug 13
0
[PATCH libnbd] api: Rename nbd_aio_*_callback to nbd_aio_*.
...;.
+To check if the command completed, call C<nbd_aio_command_completed>.
+Or supply the optional C<completion> callback which will be invoked
+as described in L<libnbd(3)/Completion callbacks>.
Other parameters behave as documented in C<nbd_zero>.";
};
"aio_block_status", {
- default_call with
- args = [ UInt64 "count"; UInt64 "offset"; Closure extent_closure ];
- optargs = [ OFlags ("flags", cmd_flags) ];
- ret = RInt64;
- permitted_states = [ Connected ];
- shortdesc = "send block status command to the NB...
2019 Jul 24
0
[PATCH libnbd v2 2/5] lib: Implement closure lifetimes.
...Closure { cbname="callback";
+ cbargs=[Int64 "cookie"; Mutable (Int "error")]};
Flags "flags" ];
ret = RInt64;
permitted_states = [ Connected ];
@@ -2052,12 +2037,11 @@ cause a deadlock.";
"aio_block_status", {
default_call with
args = [ UInt64 "count"; UInt64 "offset";
- Closure (true,
- { cbname="extent";
- cbargs=[String "metacontext"; UInt64 "offset";
-...
2019 Aug 13
2
[PATCH libnbd] api: Rename nbd_aio_*_callback to nbd_aio_*.
This applies on top of the OClosure v2 series posted a few
minutes ago.
Rich.
2019 Jul 25
0
[PATCH libnbd v3 1/2] lib: Implement closure lifetimes.
...";
+ cbargs=[Int64 "cookie"; Mutable (Int "error")]};
Flags "flags" ];
ret = RInt64;
permitted_states = [ Connected ];
@@ -1975,12 +1960,11 @@ Other parameters behave as documented in C<nbd_zero>.";
"aio_block_status", {
default_call with
args = [ UInt64 "count"; UInt64 "offset";
- Closure (true,
- { cbname="extent";
+ Closure { cbname="extent";
cbargs=[String "metacontext"; UIn...
2019 Aug 13
12
[PATCH 0/6] Implement OClosure.
Patches 1-4 are basically uncontroversial, straightforward refactoring
and IMHO we should just push them. Possibly 1-3 should be squashed
together, but I posted them separately so they are easier to review.
Patches 5 and 6 together implement OClosure. Patch 5 adds the feature
and is simple to understand.
Patch 6 changes the Closure completion callbacks into OClosure, but
because it doesn't