Displaying 4 results from an estimated 4 matches for "25af2fe6".
2019 Aug 16
7
[nbdkit PATCH 0/2] rust: Implement some missing v2 callbacks
Similar to what I just did for OCaml (this IS an API break, requiring
recompilation of any existing Rust plugin), and done because I want to
add fast_zero support to both languages as part of my upcoming fast
zero series.
Figuring out how to get extents working was hard enough that I punted
that, still.
Eric Blake (2):
rust: Implement can_cache
rust: Add support for dynamic .thread_model
2019 Aug 16
0
[nbdkit PATCH 1/2] rust: Implement can_cache
...lt;nbdkit-plugin(3)/THREADS>.
=back
+=head2 Missing callbacks
+
+=over 4
+
+=item Missing: C<can_extents> and C<extents>
+
+These are not yet supported.
+
+=back
+
=head1 SEE ALSO
L<nbdkit(1)>,
diff --git a/plugins/rust/src/lib.rs b/plugins/rust/src/lib.rs
index a3dbf43e..25af2fe6 100644
--- a/plugins/rust/src/lib.rs
+++ b/plugins/rust/src/lib.rs
@@ -93,6 +93,15 @@ pub struct Plugin {
pub magic_config_key: *const c_char,
pub can_multi_conn: Option<extern fn (h: *mut c_void) -> c_int>,
+
+ // Slots for extents functions, which needs more integration.
+...
2019 Aug 16
0
[nbdkit PATCH 2/2] rust: Add support for dynamic .thread_model
...her fields as required.
plugin.close = Some (ramdisk_close);
plugin.pwrite = Some (ramdisk_pwrite);
+ plugin.thread_model = Some (ramdisk_thread_model);
// Return the pointer.
let plugin = Box::new(plugin);
diff --git a/plugins/rust/src/lib.rs b/plugins/rust/src/lib.rs
index 25af2fe6..e369ecbe 100644
--- a/plugins/rust/src/lib.rs
+++ b/plugins/rust/src/lib.rs
@@ -36,6 +36,7 @@ use std::os::raw::{c_char, c_int, c_void};
// function must return.
#[repr(C)]
pub struct Plugin {
+ // Do not modify these three fields directly.
_struct_size: u64,
_api_version: c_int,...
2019 Aug 16
1
Re: [nbdkit PATCH 2/2] rust: Add support for dynamic .thread_model
....close = Some (ramdisk_close);
> plugin.pwrite = Some (ramdisk_pwrite);
> + plugin.thread_model = Some (ramdisk_thread_model);
>
> // Return the pointer.
> let plugin = Box::new(plugin);
> diff --git a/plugins/rust/src/lib.rs b/plugins/rust/src/lib.rs
> index 25af2fe6..e369ecbe 100644
> --- a/plugins/rust/src/lib.rs
> +++ b/plugins/rust/src/lib.rs
> @@ -36,6 +36,7 @@ use std::os::raw::{c_char, c_int, c_void};
> // function must return.
> #[repr(C)]
> pub struct Plugin {
> + // Do not modify these three fields directly.
> _struc...