diff --git a/0001-rust-Use-correct-type-of-C-char-on-ARM-and-RISC-V-pl.patch b/0001-rust-Use-correct-type-of-C-char-on-ARM-and-RISC-V-pl.patch deleted file mode 100644 index b6e61f2..0000000 --- a/0001-rust-Use-correct-type-of-C-char-on-ARM-and-RISC-V-pl.patch +++ /dev/null @@ -1,124 +0,0 @@ -From 5b58b7f23c014878dcb499d1626c53a25960c7b0 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 10 Nov 2021 13:02:46 +0000 -Subject: [PATCH] rust: Use correct type of C char on ARM and RISC-V platforms - -On ARM and RISC-V platforms, C char is unsigned (compared to signed on -other platforms). This results in the error message attached when -compiling the rust plugin. This problem has probably existed for a -long time, but I only tried to compile the bindings on riscv64 and -aarch64 today. - -The fix is to use c_char instead of i8. See: -https://stackoverflow.com/a/47684200 - -make: Entering directory '/home/rjones/d/nbdkit/plugins/rust' -cargo build --release - Compiling nbdkit v0.2.0 (/home/rjones/d/nbdkit/plugins/rust) -error[E0308]: mismatched types - --> src/lib.rs:985:19 - | -985 | name: unsafe{ NAME.as_ptr() } as *const i8, - | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u8`, found `i8` - | - = note: expected raw pointer `*const u8` - found raw pointer `*const i8` - -error[E0308]: mismatched types - --> src/lib.rs:986:13 - | -986 | longname, - | ^^^^^^^^ expected `u8`, found `i8` - | - = note: expected raw pointer `*const u8` - found raw pointer `*const i8` - -error[E0308]: mismatched types - --> src/lib.rs:987:13 - | -987 | version, - | ^^^^^^^ expected `u8`, found `i8` - | - = note: expected raw pointer `*const u8` - found raw pointer `*const i8` - -error[E0308]: mismatched types - --> src/lib.rs:988:13 - | -988 | description, - | ^^^^^^^^^^^ expected `u8`, found `i8` - | - = note: expected raw pointer `*const u8` - found raw pointer `*const i8` - -error[E0308]: mismatched types - --> src/lib.rs:993:13 - | -993 | config_help, - | ^^^^^^^^^^^ expected `u8`, found `i8` - | - = note: expected raw pointer `*const u8` - found raw pointer `*const i8` - -error[E0308]: mismatched types - --> src/lib.rs:1015:13 - | -1015 | magic_config_key, - | ^^^^^^^^^^^^^^^^ expected `u8`, found `i8` - | - = note: expected raw pointer `*const u8` - found raw pointer `*const i8` - -error: aborting due to 6 previous errors - -For more information about this error, try `rustc --explain E0308`. -error: could not compile `nbdkit` - -To learn more, run the command again with --verbose. -make: *** [Makefile:1063: target/release/libnbdkit.rlib] Error 101 -make: Leaving directory '/home/rjones/d/nbdkit/plugins/rust' - -(cherry picked from commit 413f3fa5a0c7c8d35fb273fb0ed62ad73ed7a4f5) ---- - plugins/rust/src/lib.rs | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/plugins/rust/src/lib.rs b/plugins/rust/src/lib.rs -index 4f39b2ec..9fadfa98 100644 ---- a/plugins/rust/src/lib.rs -+++ b/plugins/rust/src/lib.rs -@@ -965,25 +965,25 @@ impl Builder { - }); - - let config_help = S::config_help() -- .map(|_| unsafe {CONFIG_HELP.as_ptr()} as *const i8) -+ .map(|_| unsafe {CONFIG_HELP.as_ptr()} as *const c_char) - .unwrap_or(ptr::null()); - let description = S::description() -- .map(|_| unsafe {DESCRIPTION.as_ptr()} as *const i8) -+ .map(|_| unsafe {DESCRIPTION.as_ptr()} as *const c_char) - .unwrap_or(ptr::null()); - let longname = S::longname() -- .map(|_| unsafe {LONGNAME.as_ptr()} as *const i8) -+ .map(|_| unsafe {LONGNAME.as_ptr()} as *const c_char) - .unwrap_or(ptr::null()); - let magic_config_key = S::magic_config_key() -- .map(|_| unsafe {MAGIC_CONFIG_KEY.as_ptr()} as *const i8) -+ .map(|_| unsafe {MAGIC_CONFIG_KEY.as_ptr()} as *const c_char) - .unwrap_or(ptr::null()); - let version = S::version() -- .map(|_| unsafe {VERSION.as_ptr()} as *const i8) -+ .map(|_| unsafe {VERSION.as_ptr()} as *const c_char) - .unwrap_or(ptr::null()); - let plugin = Plugin { - _struct_size: mem::size_of::() as u64, - _api_version: 2, - _thread_model: ThreadModel::Parallel as c_int, -- name: unsafe{ NAME.as_ptr() } as *const i8, -+ name: unsafe{ NAME.as_ptr() } as *const c_char, - longname, - version, - description, --- -2.31.1 - diff --git a/0005-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch b/0001-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch similarity index 98% rename from 0005-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch rename to 0001-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch index 6e07fed..75f6622 100644 --- a/0005-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch +++ b/0001-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch @@ -1,4 +1,4 @@ -From 47ef0cabbe9bc9f00231f97a36958ef14d700bb4 Mon Sep 17 00:00:00 2001 +From 40016b4cf27cd68c55fc505e97b658b4fc3643c9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 21 Oct 2021 14:49:52 +0100 Subject: [PATCH] vddk: Refactor how -D vddk.stats=1 is collected diff --git a/0002-tests-Remove-redundant-comment.patch b/0002-tests-Remove-redundant-comment.patch deleted file mode 100644 index 9ae950c..0000000 --- a/0002-tests-Remove-redundant-comment.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 53b8aac0afa12ccb37112c80f1e4cdea44904206 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Mon, 15 Nov 2021 21:57:04 +0000 -Subject: [PATCH] tests: Remove redundant comment - -Commit e3abac4e5519b0d51c9a34a41af97f63920f3f32 which originally added -the OCaml plugin back in 2014 added this comment. At the time the -test was novel because it compiled a plugin (instead of testing either -an existing plugin or one of the example plugins which is designed to -testing against). However lots of other tests do that now so the -comment is redundant. - -Thanks: Laszlo Ersek -(cherry picked from commit 6b821fdc4ced4fc0af3fe2480d3ca43cb6476a6d) ---- - tests/Makefile.am | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 6bba56ba..5ef90b6f 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -1081,8 +1081,6 @@ if HAVE_OCAML - - LIBGUESTFS_TESTS += test-ocaml - --# This is somewhat different from the other tests because we have --# to build an actual plugin here. - test_ocaml_SOURCES = test-ocaml.c test.h - test_ocaml_CFLAGS = \ - $(WARNINGS_CFLAGS) \ --- -2.31.1 - diff --git a/0006-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch b/0002-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch similarity index 98% rename from 0006-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch rename to 0002-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch index abcb98e..c1abb4e 100644 --- a/0006-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch +++ b/0002-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch @@ -1,4 +1,4 @@ -From 9d5df60596a1ed385276152f339c682b2b2b4197 Mon Sep 17 00:00:00 2001 +From 262f7fcd22dd57ae30739703c94bc56f32a8ceec Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 21 Oct 2021 15:10:00 +0100 Subject: [PATCH] vddk: Extend -D vddk.stats=1 to show number of calls and diff --git a/0003-tests-Use-compound-literal-array-for-nbd_connect_com.patch b/0003-tests-Use-compound-literal-array-for-nbd_connect_com.patch deleted file mode 100644 index 59fc77d..0000000 --- a/0003-tests-Use-compound-literal-array-for-nbd_connect_com.patch +++ /dev/null @@ -1,319 +0,0 @@ -From fa7ad10dd02278afb458915a2ce4ab70832af3f0 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 16 Nov 2021 10:09:13 +0000 -Subject: [PATCH] tests: Use compound literal array for nbd_connect_command - parameter - -Instead of having a separate char *args[] local variable, we can use a -compound literal array (C99 feature). This change is just -refactoring. - -Acked-by: Laszlo Ersek -(cherry picked from commit 69bb2722bf150b1938d87d03ffe0ec20eb28129b) ---- - tests/README.tests | 7 ++++--- - tests/test-connect.c | 8 ++++---- - tests/test-curl-cookie-script.c | 21 ++++++++++----------- - tests/test-curl-header-script.c | 21 ++++++++++----------- - tests/test-delay.c | 13 ++++++------- - tests/test-layers.c | 27 ++++++++++++++------------- - tests/test-newstyle.c | 10 +++++----- - tests/test-null.c | 8 +++++--- - tests/test-oldstyle.c | 10 +++++----- - tests/test-pause.c | 11 ++++++----- - tests/test-random.c | 9 +++++---- - tests/test-split.c | 12 ++++++------ - 12 files changed, 80 insertions(+), 77 deletions(-) - -diff --git a/tests/README.tests b/tests/README.tests -index 595c3c19..a55e6958 100644 ---- a/tests/README.tests -+++ b/tests/README.tests -@@ -65,9 +65,10 @@ To test a plugin using libnbd - - Open a libnbd handle, and configure it using: - -- char *args[] = { "nbdkit", "-s", "--exit-with-parent", -- "plugin", , NULL }; -- nbd_connect_command (nbd, args); -+ nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "plugin", , NULL }); - - Perform tests via libnbd functions. - -diff --git a/tests/test-connect.c b/tests/test-connect.c -index f6b494ac..13143f46 100644 ---- a/tests/test-connect.c -+++ b/tests/test-connect.c -@@ -53,10 +53,10 @@ main (int argc, char *argv[]) - exit (EXIT_FAILURE); - } - -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", "example1", NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "example1", NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-curl-cookie-script.c b/tests/test-curl-cookie-script.c -index 481207b5..45e3d136 100644 ---- a/tests/test-curl-cookie-script.c -+++ b/tests/test-curl-cookie-script.c -@@ -104,17 +104,16 @@ main (int argc, char *argv[]) - perror ("asprintf"); - exit (EXIT_FAILURE); - } -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", "-v", -- "curl", -- "-D", "curl.verbose=1", -- "http://localhost/disk", -- "cookie-script=" SCRIPT, -- "cookie-script-renew=1", -- usp_param, /* unix-socket-path=... */ -- NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", "-v", -+ "curl", -+ "-D", "curl.verbose=1", -+ "http://localhost/disk", -+ "cookie-script=" SCRIPT, -+ "cookie-script-renew=1", -+ usp_param, /* unix-socket-path=... */ -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-curl-header-script.c b/tests/test-curl-header-script.c -index a151af05..afe16591 100644 ---- a/tests/test-curl-header-script.c -+++ b/tests/test-curl-header-script.c -@@ -126,17 +126,16 @@ main (int argc, char *argv[]) - perror ("asprintf"); - exit (EXIT_FAILURE); - } -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", "-v", -- "curl", -- "-D", "curl.verbose=1", -- "http://localhost/disk", -- "header-script=" SCRIPT, -- "header-script-renew=1", -- usp_param, /* unix-socket-path=... */ -- NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", "-v", -+ "curl", -+ "-D", "curl.verbose=1", -+ "http://localhost/disk", -+ "header-script=" SCRIPT, -+ "header-script-renew=1", -+ usp_param, /* unix-socket-path=... */ -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-delay.c b/tests/test-delay.c -index 736de529..b0e6f8de 100644 ---- a/tests/test-delay.c -+++ b/tests/test-delay.c -@@ -56,13 +56,12 @@ main (int argc, char *argv[]) - exit (EXIT_FAILURE); - } - -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", -- "--filter", "delay", -- "memory", "1M", -- "wdelay=10", NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "--filter", "delay", -+ "memory", "1M", -+ "wdelay=10", NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-layers.c b/tests/test-layers.c -index 13c82289..0083b733 100644 ---- a/tests/test-layers.c -+++ b/tests/test-layers.c -@@ -157,19 +157,20 @@ main (int argc, char *argv[]) - } - - /* Start nbdkit. */ -- char *args[] = { -- "nbdkit", "--exit-with-parent", "-fvns", -- /* Because of asynchronous shutdown with threads, finalize -- * isn't reliably called unless we disable parallel. -- */ -- "-t", "1", -- "--filter", ".libs/test-layers-filter3." SOEXT, -- "--filter", ".libs/test-layers-filter2." SOEXT, -- "--filter", ".libs/test-layers-filter1." SOEXT, -- ".libs/test-layers-plugin." SOEXT, -- "foo=bar", -- NULL}; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "--exit-with-parent", "-fvns", -+ /* Because of asynchronous shutdown with -+ * threads, finalize isn't reliably -+ * called unless we disable parallel. -+ */ -+ "-t", "1", -+ "--filter", ".libs/test-layers-filter3." SOEXT, -+ "--filter", ".libs/test-layers-filter2." SOEXT, -+ "--filter", ".libs/test-layers-filter1." SOEXT, -+ ".libs/test-layers-plugin." SOEXT, -+ "foo=bar", -+ NULL }) == -1) { - dprintf (orig_stderr, "nbd_connect_command: %s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-newstyle.c b/tests/test-newstyle.c -index d96c7e44..1f5d1ca3 100644 ---- a/tests/test-newstyle.c -+++ b/tests/test-newstyle.c -@@ -49,11 +49,11 @@ main (int argc, char *argv[]) - exit (EXIT_FAILURE); - } - -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", -- "--newstyle", "file", "file-data", NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "--newstyle", "file", "file-data", -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-null.c b/tests/test-null.c -index 2205934f..d220999a 100644 ---- a/tests/test-null.c -+++ b/tests/test-null.c -@@ -52,9 +52,11 @@ main (int argc, char *argv[]) - exit (EXIT_FAILURE); - } - -- char *args[] = -- { "nbdkit", "-s", "--exit-with-parent", "null", "100M", NULL }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "null", "100M", -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-oldstyle.c b/tests/test-oldstyle.c -index 5147768a..0afe868f 100644 ---- a/tests/test-oldstyle.c -+++ b/tests/test-oldstyle.c -@@ -49,11 +49,11 @@ main (int argc, char *argv[]) - exit (EXIT_FAILURE); - } - -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", -- "--oldstyle", "file", "file-data", NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "--oldstyle", "file", "file-data", -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-pause.c b/tests/test-pause.c -index 3c8ee520..e5a970d6 100644 ---- a/tests/test-pause.c -+++ b/tests/test-pause.c -@@ -78,11 +78,12 @@ main (int argc, char *argv[]) - exit (EXIT_FAILURE); - } - -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", "--filter", "pause", -- "example1", "pause-control=" SOCKET, NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "--filter", "pause", -+ "example1", "pause-control=" SOCKET, -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-random.c b/tests/test-random.c -index 4316d2b3..b7716efa 100644 ---- a/tests/test-random.c -+++ b/tests/test-random.c -@@ -72,10 +72,11 @@ main (int argc, char *argv[]) - } - - snprintf (sizearg, sizeof sizearg, "%d", SIZE); -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", "random", sizearg, NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "random", sizearg, -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } -diff --git a/tests/test-split.c b/tests/test-split.c -index be53590d..657e5b5a 100644 ---- a/tests/test-split.c -+++ b/tests/test-split.c -@@ -51,12 +51,12 @@ main (int argc, char *argv[]) - exit (EXIT_FAILURE); - } - -- char *args[] = { -- "nbdkit", "-s", "--exit-with-parent", -- "split", "split1", "split2", "file=split3" /* leave file= to test */, -- NULL -- }; -- if (nbd_connect_command (nbd, args) == -1) { -+ if (nbd_connect_command (nbd, -+ (char *[]) { -+ "nbdkit", "-s", "--exit-with-parent", -+ "split", "split1", "split2", -+ "file=split3" /* leave file= to test */, -+ NULL }) == -1) { - fprintf (stderr, "%s\n", nbd_get_error ()); - exit (EXIT_FAILURE); - } --- -2.31.1 - diff --git a/0007-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch b/0003-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch similarity index 99% rename from 0007-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch rename to 0003-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch index d980bd3..fc35b4c 100644 --- a/0007-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch +++ b/0003-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch @@ -1,4 +1,4 @@ -From 38a6af436dc2ea296d695fd6d1b8c78f25b1f760 Mon Sep 17 00:00:00 2001 +From ea29f00332300e5a5808931ae48920c715c59182 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 21 Oct 2021 22:55:17 +0100 Subject: [PATCH] vddk: Simplify and consolidate VDDK_CALL_START/END macros diff --git a/0004-common-regions-Implement-append_region_end.patch b/0004-common-regions-Implement-append_region_end.patch deleted file mode 100644 index a91146e..0000000 --- a/0004-common-regions-Implement-append_region_end.patch +++ /dev/null @@ -1,120 +0,0 @@ -From e8af3f231361966e12eedf5656d7ef70432cf9ff Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Sat, 27 Nov 2021 09:51:33 +0000 -Subject: [PATCH] common/regions: Implement append_region_end - -This function was documented but not implemented, add the -implementation. - -(cherry picked from commit 6f7485f8bcda1a316a57048207ce2c3092af544a) ---- - common/regions/regions.c | 60 ++++++++++++++++++++++++++-------------- - common/regions/regions.h | 2 -- - 2 files changed, 40 insertions(+), 22 deletions(-) - -diff --git a/common/regions/regions.c b/common/regions/regions.c -index bb7a278c..841c5c40 100644 ---- a/common/regions/regions.c -+++ b/common/regions/regions.c -@@ -119,10 +119,10 @@ append_padding (regions *rs, uint64_t alignment) - } - - int --append_region_len (regions *rs, -+append_region_va (regions *rs, - const char *description, uint64_t len, - uint64_t pre_aligment, uint64_t post_alignment, -- enum region_type type, ...) -+ enum region_type type, va_list ap) - { - struct region region; - -@@ -139,24 +139,10 @@ append_region_len (regions *rs, - region.len = len; - region.end = region.start + region.len - 1; - region.type = type; -- if (type == region_file) { -- va_list ap; -- size_t i; -- -- va_start (ap, type); -- i = va_arg (ap, size_t); -- va_end (ap); -- region.u.i = i; -- } -- else if (type == region_data) { -- va_list ap; -- const unsigned char *data; -- -- va_start (ap, type); -- data = va_arg (ap, const unsigned char *); -- va_end (ap); -- region.u.data = data; -- } -+ if (type == region_file) -+ region.u.i = va_arg (ap, size_t); -+ else if (type == region_data) -+ region.u.data = va_arg (ap, const unsigned char *); - if (append_one_region (rs, region) == -1) - return -1; - -@@ -169,3 +155,37 @@ append_region_len (regions *rs, - - return 0; - } -+ -+int -+append_region_len (regions *rs, -+ const char *description, uint64_t len, -+ uint64_t pre_aligment, uint64_t post_alignment, -+ enum region_type type, ...) -+{ -+ va_list ap; -+ int r; -+ -+ va_start (ap, type); -+ r = append_region_va (rs, description, len, -+ pre_aligment, post_alignment, type, ap); -+ va_end (ap); -+ return r; -+} -+ -+int -+append_region_end (regions *rs, -+ const char *description, uint64_t end, -+ uint64_t pre_aligment, uint64_t post_alignment, -+ enum region_type type, ...) -+{ -+ va_list ap; -+ int r; -+ uint64_t len; -+ -+ va_start (ap, type); -+ len = end - virtual_size (rs) + 1; -+ r = append_region_va (rs, description, len, -+ pre_aligment, post_alignment, type, ap); -+ va_end (ap); -+ return r; -+} -diff --git a/common/regions/regions.h b/common/regions/regions.h -index 13fc41e2..6dfd5d88 100644 ---- a/common/regions/regions.h -+++ b/common/regions/regions.h -@@ -123,7 +123,6 @@ extern int append_region_len (regions *regions, - uint64_t pre_aligment, uint64_t post_alignment, - enum region_type type, ...); - --#if 0 - /* Same as append_region_len (above) but instead of specifying the - * size of the main region, specify the end byte as an offset. Note - * the end byte is included in the region, it's is NOT the end+1 byte. -@@ -132,6 +131,5 @@ extern int append_region_end (regions *regions, - const char *description, uint64_t end, - uint64_t pre_aligment, uint64_t post_alignment, - enum region_type type, ...); --#endif - - #endif /* NBDKIT_REGIONS_H */ --- -2.31.1 - diff --git a/0008-vddk-Document-troubleshooting-performance-problems.patch b/0004-vddk-Document-troubleshooting-performance-problems.patch similarity index 97% rename from 0008-vddk-Document-troubleshooting-performance-problems.patch rename to 0004-vddk-Document-troubleshooting-performance-problems.patch index bfe56a8..0dfca05 100644 --- a/0008-vddk-Document-troubleshooting-performance-problems.patch +++ b/0004-vddk-Document-troubleshooting-performance-problems.patch @@ -1,4 +1,4 @@ -From 61dcc78d7bfc6f5aa67f0952cfe40150a522d24a Mon Sep 17 00:00:00 2001 +From 7433c58a81d156fe078a8d5d39d75c8cfde458de Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 22 Oct 2021 18:00:27 +0100 Subject: [PATCH] vddk: Document troubleshooting performance problems diff --git a/0009-vddk-Include-VDDK-major-library-version-in-dump-plug.patch b/0005-vddk-Include-VDDK-major-library-version-in-dump-plug.patch similarity index 98% rename from 0009-vddk-Include-VDDK-major-library-version-in-dump-plug.patch rename to 0005-vddk-Include-VDDK-major-library-version-in-dump-plug.patch index e320274..0e68cf3 100644 --- a/0009-vddk-Include-VDDK-major-library-version-in-dump-plug.patch +++ b/0005-vddk-Include-VDDK-major-library-version-in-dump-plug.patch @@ -1,4 +1,4 @@ -From d6da3198bc3123b5b7df54f51b53cc5536611193 Mon Sep 17 00:00:00 2001 +From e1b498bef17d1be8a19a5d29f34bc99c21b54e12 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 23 Oct 2021 16:16:39 +0100 Subject: [PATCH] vddk: Include VDDK major library version in --dump-plugin diff --git a/0010-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch b/0006-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch similarity index 96% rename from 0010-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch rename to 0006-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch index 3dee921..1e91952 100644 --- a/0010-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch +++ b/0006-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch @@ -1,4 +1,4 @@ -From 4524146c29efa16b7b260d9de967b548cdb63da2 Mon Sep 17 00:00:00 2001 +From 7cd9b2bbbdae01513baa215abfacecbf19af2b1d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 23 Oct 2021 16:24:27 +0100 Subject: [PATCH] vddk: Add logical and physical sector size to -D diff --git a/0011-vddk-Fix-typo-in-debug-message.patch b/0007-vddk-Fix-typo-in-debug-message.patch similarity index 93% rename from 0011-vddk-Fix-typo-in-debug-message.patch rename to 0007-vddk-Fix-typo-in-debug-message.patch index 49eef61..c849e80 100644 --- a/0011-vddk-Fix-typo-in-debug-message.patch +++ b/0007-vddk-Fix-typo-in-debug-message.patch @@ -1,4 +1,4 @@ -From b3de173ca581a174f2b60cb364e97bbd3c6e294b Mon Sep 17 00:00:00 2001 +From f00a059f71372a38703a2393b791703dfcb4f143 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 23 Oct 2021 19:41:07 +0100 Subject: [PATCH] vddk: Fix typo in debug message diff --git a/0012-vddk-Only-print-vddk_library_version-when-we-managed.patch b/0008-vddk-Only-print-vddk_library_version-when-we-managed.patch similarity index 96% rename from 0012-vddk-Only-print-vddk_library_version-when-we-managed.patch rename to 0008-vddk-Only-print-vddk_library_version-when-we-managed.patch index bc75e8f..de5f980 100644 --- a/0012-vddk-Only-print-vddk_library_version-when-we-managed.patch +++ b/0008-vddk-Only-print-vddk_library_version-when-we-managed.patch @@ -1,4 +1,4 @@ -From 8e7e6c019b328b878e5e40a49ab085d330135424 Mon Sep 17 00:00:00 2001 +From 27926a76f087cc81fc07f5a72da50384aab785c6 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 23 Oct 2021 19:50:52 +0100 Subject: [PATCH] vddk: Only print vddk_library_version when we managed to load diff --git a/0013-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch b/0009-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch similarity index 97% rename from 0013-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch rename to 0009-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch index 0e76c55..bb7be49 100644 --- a/0013-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch +++ b/0009-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch @@ -1,4 +1,4 @@ -From 817a29ee1ab91d10331c1f1618b89f59969af1b3 Mon Sep 17 00:00:00 2001 +From 7b43137763287b3d79874e27146ea2fecc5f9a17 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 25 Oct 2021 08:36:53 +0100 Subject: [PATCH] vddk: Print one line in --dump-plugin output for each VDDK diff --git a/0014-vddk-Move-minimum-version-to-VDDK-6.5.patch b/0010-vddk-Move-minimum-version-to-VDDK-6.5.patch similarity index 98% rename from 0014-vddk-Move-minimum-version-to-VDDK-6.5.patch rename to 0010-vddk-Move-minimum-version-to-VDDK-6.5.patch index dc66201..b09e5f7 100644 --- a/0014-vddk-Move-minimum-version-to-VDDK-6.5.patch +++ b/0010-vddk-Move-minimum-version-to-VDDK-6.5.patch @@ -1,4 +1,4 @@ -From 3f0f35c915c027fe849cedd0c2fdb5506a4e9997 Mon Sep 17 00:00:00 2001 +From d4e1acf2e9b607a05b08ceb49d2879db02016cfe Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 26 Oct 2021 19:46:32 +0100 Subject: [PATCH] vddk: Move minimum version to VDDK 6.5 diff --git a/0015-vddk-Add-read-write-and-wait-asynchronous-functions.patch b/0011-vddk-Add-read-write-and-wait-asynchronous-functions.patch similarity index 97% rename from 0015-vddk-Add-read-write-and-wait-asynchronous-functions.patch rename to 0011-vddk-Add-read-write-and-wait-asynchronous-functions.patch index a22af7e..2c8be18 100644 --- a/0015-vddk-Add-read-write-and-wait-asynchronous-functions.patch +++ b/0011-vddk-Add-read-write-and-wait-asynchronous-functions.patch @@ -1,4 +1,4 @@ -From 6f50e32f21bd54448e2aba6dd4943e5b742b0527 Mon Sep 17 00:00:00 2001 +From 53622e928682d08acafb27ce973a654ef7814c4d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 27 Oct 2021 11:57:35 +0100 Subject: [PATCH] vddk: Add read, write and wait asynchronous functions diff --git a/0016-vddk-Start-to-split-VDDK-over-several-files.patch b/0012-vddk-Start-to-split-VDDK-over-several-files.patch similarity index 99% rename from 0016-vddk-Start-to-split-VDDK-over-several-files.patch rename to 0012-vddk-Start-to-split-VDDK-over-several-files.patch index 3c69cbd..85c5a8c 100644 --- a/0016-vddk-Start-to-split-VDDK-over-several-files.patch +++ b/0012-vddk-Start-to-split-VDDK-over-several-files.patch @@ -1,4 +1,4 @@ -From 5decae06af9e5942b5f16f17d818aa0855f22f4f Mon Sep 17 00:00:00 2001 +From 35436075eb0df59c6480b79adaa755a2c6138833 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 27 Oct 2021 12:20:31 +0100 Subject: [PATCH] vddk: Start to split VDDK over several files diff --git a/0017-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch b/0013-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch similarity index 99% rename from 0017-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch rename to 0013-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch index 5710184..7a2fd48 100644 --- a/0017-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch +++ b/0013-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch @@ -1,4 +1,4 @@ -From 35bb25a9587b2f975c7c1fc7086ba4230f374c82 Mon Sep 17 00:00:00 2001 +From 27b7a2b4b58a99eb79386412a2b3d5387d28f6bc Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 27 Oct 2021 12:30:41 +0100 Subject: [PATCH] vddk: Refactor -D vddk.stats=1 into a new file diff --git a/0018-vddk-Implement-parallel-thread-model.patch b/0014-vddk-Implement-parallel-thread-model.patch similarity index 99% rename from 0018-vddk-Implement-parallel-thread-model.patch rename to 0014-vddk-Implement-parallel-thread-model.patch index 7590305..9b5073e 100644 --- a/0018-vddk-Implement-parallel-thread-model.patch +++ b/0014-vddk-Implement-parallel-thread-model.patch @@ -1,4 +1,4 @@ -From c5d4bbac3e5af55f6f553d76eb1ccf2db3cbf6f3 Mon Sep 17 00:00:00 2001 +From d12a244fa6b5b582a7790a525a621b4573133749 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 27 Oct 2021 10:17:22 +0100 Subject: [PATCH] vddk: Implement parallel thread model diff --git a/0019-vddk-Assume-that-VixDiskLib_Flush-is-available.patch b/0015-vddk-Assume-that-VixDiskLib_Flush-is-available.patch similarity index 96% rename from 0019-vddk-Assume-that-VixDiskLib_Flush-is-available.patch rename to 0015-vddk-Assume-that-VixDiskLib_Flush-is-available.patch index 70fa5e9..813fa89 100644 --- a/0019-vddk-Assume-that-VixDiskLib_Flush-is-available.patch +++ b/0015-vddk-Assume-that-VixDiskLib_Flush-is-available.patch @@ -1,4 +1,4 @@ -From f88fe1ef24432351bc9586220dcbc94c028ffc9c Mon Sep 17 00:00:00 2001 +From dd2ae58503f3c17e8aee2f78f97e0f669ce464c6 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 29 Oct 2021 20:56:55 +0100 Subject: [PATCH] vddk: Assume that VixDiskLib_Flush is available diff --git a/0020-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch b/0016-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch similarity index 99% rename from 0020-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch rename to 0016-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch index 1c69fe0..8571342 100644 --- a/0020-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch +++ b/0016-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch @@ -1,4 +1,4 @@ -From 93d3272142226d791af3604f6b9f617d89f27aa5 Mon Sep 17 00:00:00 2001 +From 10bbf28ad230a887ec05a2b1d25d95fd0d742072 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 29 Oct 2021 21:02:54 +0100 Subject: [PATCH] vddk: Simplify detection of VDDK symbols and baseline 6.5 diff --git a/0021-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch b/0017-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch similarity index 94% rename from 0021-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch rename to 0017-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch index a640dbe..2f91a3b 100644 --- a/0021-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch +++ b/0017-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch @@ -1,4 +1,4 @@ -From 85e2b3109219ea093dddf97a8f8bf276a204c1a0 Mon Sep 17 00:00:00 2001 +From c0d6f863ecd47535fe55bae12ce5bf292e356dbd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 30 Oct 2021 08:34:28 +0100 Subject: [PATCH] vddk: Remove some whitespace from a couple of functions diff --git a/0022-vddk-Move-config-debug-error-and-utility-functions-a.patch b/0018-vddk-Move-config-debug-error-and-utility-functions-a.patch similarity index 99% rename from 0022-vddk-Move-config-debug-error-and-utility-functions-a.patch rename to 0018-vddk-Move-config-debug-error-and-utility-functions-a.patch index 7d48bae..a8111d4 100644 --- a/0022-vddk-Move-config-debug-error-and-utility-functions-a.patch +++ b/0018-vddk-Move-config-debug-error-and-utility-functions-a.patch @@ -1,4 +1,4 @@ -From 3daef1e007872dad52b6edf40a810093093bc316 Mon Sep 17 00:00:00 2001 +From c55eb650440d9cd713db74622ddc2afa3c1ce740 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 30 Oct 2021 08:27:39 +0100 Subject: [PATCH] vddk: Move config, debug/error and utility functions around diff --git a/0023-common-utils-test-vector.c-Add-vector-benchmarks.patch b/0019-common-utils-test-vector.c-Add-vector-benchmarks.patch similarity index 99% rename from 0023-common-utils-test-vector.c-Add-vector-benchmarks.patch rename to 0019-common-utils-test-vector.c-Add-vector-benchmarks.patch index 0a18823..1850ee7 100644 --- a/0023-common-utils-test-vector.c-Add-vector-benchmarks.patch +++ b/0019-common-utils-test-vector.c-Add-vector-benchmarks.patch @@ -1,4 +1,4 @@ -From 67daf95c311dd72401c6c09741d2b39b9c95098d Mon Sep 17 00:00:00 2001 +From 4cc4e2cfc6202d522b3c4282bbaedf3d47de16bb Mon Sep 17 00:00:00 2001 From: Nir Soffer Date: Fri, 5 Nov 2021 20:36:42 +0200 Subject: [PATCH] common/utils/test-vector.c: Add vector benchmarks diff --git a/0024-common-urils-vector.c-Optimize-vector-append.patch b/0020-common-urils-vector.c-Optimize-vector-append.patch similarity index 95% rename from 0024-common-urils-vector.c-Optimize-vector-append.patch rename to 0020-common-urils-vector.c-Optimize-vector-append.patch index def252a..d697c52 100644 --- a/0024-common-urils-vector.c-Optimize-vector-append.patch +++ b/0020-common-urils-vector.c-Optimize-vector-append.patch @@ -1,4 +1,4 @@ -From 6f84d6ddb60555ea9be4db8ac3ec99a3bdcc8ac0 Mon Sep 17 00:00:00 2001 +From 20029d23e2992f929a3d75b5dea64832f8684d20 Mon Sep 17 00:00:00 2001 From: Nir Soffer Date: Fri, 5 Nov 2021 22:16:26 +0200 Subject: [PATCH] common/urils/vector.c: Optimize vector append diff --git a/0025-common-utils-vector-Rename-alloc-to-cap.patch b/0021-common-utils-vector-Rename-alloc-to-cap.patch similarity index 99% rename from 0025-common-utils-vector-Rename-alloc-to-cap.patch rename to 0021-common-utils-vector-Rename-alloc-to-cap.patch index fa6143c..c043386 100644 --- a/0025-common-utils-vector-Rename-alloc-to-cap.patch +++ b/0021-common-utils-vector-Rename-alloc-to-cap.patch @@ -1,4 +1,4 @@ -From f4908c9dc3c4c7d72377de6ac647235dedbe4cd8 Mon Sep 17 00:00:00 2001 +From a329cd90b350b17eac3227c0f30794015b710366 Mon Sep 17 00:00:00 2001 From: Nir Soffer Date: Fri, 5 Nov 2021 22:59:38 +0200 Subject: [PATCH] common/utils/vector: Rename `alloc` to `cap` diff --git a/0026-common-utils-vector-Rename-size-to-len.patch b/0022-common-utils-vector-Rename-size-to-len.patch similarity index 99% rename from 0026-common-utils-vector-Rename-size-to-len.patch rename to 0022-common-utils-vector-Rename-size-to-len.patch index 3a10038..6577f6d 100644 --- a/0026-common-utils-vector-Rename-size-to-len.patch +++ b/0022-common-utils-vector-Rename-size-to-len.patch @@ -1,4 +1,4 @@ -From 178fda5aa3c4d0678d56ce311f7f3024b4118063 Mon Sep 17 00:00:00 2001 +From 932679668fc44839727ae350a1c2e94b26bcfc0a Mon Sep 17 00:00:00 2001 From: Nir Soffer Date: Sat, 6 Nov 2021 00:03:11 +0200 Subject: [PATCH] common/utils/vector: Rename `size` to `len` diff --git a/0027-podwrapper.pl.in-Use-short-commit-date.patch b/0023-podwrapper.pl.in-Use-short-commit-date.patch similarity index 94% rename from 0027-podwrapper.pl.in-Use-short-commit-date.patch rename to 0023-podwrapper.pl.in-Use-short-commit-date.patch index 2a2518b..e9d3eb0 100644 --- a/0027-podwrapper.pl.in-Use-short-commit-date.patch +++ b/0023-podwrapper.pl.in-Use-short-commit-date.patch @@ -1,4 +1,4 @@ -From 26e5e1c15ab15b2d9929adb7615a00e5ad5c24a1 Mon Sep 17 00:00:00 2001 +From 83f7325a317b4a3d670f1288715af8854627b0f6 Mon Sep 17 00:00:00 2001 From: Nir Soffer Date: Mon, 8 Nov 2021 19:47:57 +0200 Subject: [PATCH] podwrapper.pl.in: Use short commit date diff --git a/0028-ocaml-Replace-noalloc-with-noalloc-annotation.patch b/0024-ocaml-Replace-noalloc-with-noalloc-annotation.patch similarity index 98% rename from 0028-ocaml-Replace-noalloc-with-noalloc-annotation.patch rename to 0024-ocaml-Replace-noalloc-with-noalloc-annotation.patch index 7b7acbd..355c596 100644 --- a/0028-ocaml-Replace-noalloc-with-noalloc-annotation.patch +++ b/0024-ocaml-Replace-noalloc-with-noalloc-annotation.patch @@ -1,4 +1,4 @@ -From 011825417fd8c82c7e707f178bdf12208dccdf99 Mon Sep 17 00:00:00 2001 +From 8e5248fda608adbce5b86d938855294001276906 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 9 Nov 2021 09:07:42 +0000 Subject: [PATCH] ocaml: Replace "noalloc" with [@@noalloc] annotation diff --git a/0029-vddk-Drop-obsolete-documentation-related-to-thread-m.patch b/0025-vddk-Drop-obsolete-documentation-related-to-thread-m.patch similarity index 95% rename from 0029-vddk-Drop-obsolete-documentation-related-to-thread-m.patch rename to 0025-vddk-Drop-obsolete-documentation-related-to-thread-m.patch index 097e935..6ba172c 100644 --- a/0029-vddk-Drop-obsolete-documentation-related-to-thread-m.patch +++ b/0025-vddk-Drop-obsolete-documentation-related-to-thread-m.patch @@ -1,4 +1,4 @@ -From 75e670f6ed6a8063b3026b5b891a1f0feb872454 Mon Sep 17 00:00:00 2001 +From 6e85906311377b845f299d3a570e23db2809529c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 27 Nov 2021 16:44:41 +0000 Subject: [PATCH] vddk: Drop obsolete documentation related to thread model diff --git a/0026-Revert-podwrapper.pl.in-Use-short-commit-date.patch b/0026-Revert-podwrapper.pl.in-Use-short-commit-date.patch new file mode 100644 index 0000000..1f56807 --- /dev/null +++ b/0026-Revert-podwrapper.pl.in-Use-short-commit-date.patch @@ -0,0 +1,32 @@ +From b235076a7df96253aa41a7859c3ba54386bd3fef Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Sat, 20 Nov 2021 17:50:25 +0000 +Subject: [PATCH] Revert "podwrapper.pl.in: Use short commit date" + +This commit breaks man page output because there is an extra newline +after the date which wasn't being removed. + +This reverts commit 7a1e79c6b5ca4adcef47fc0929d25d54610fc417. + +(cherry picked from commit 750ad5972bb082d188f17f8f71ef1ec0c616c676) +--- + podwrapper.pl.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/podwrapper.pl.in b/podwrapper.pl.in +index 63c1025a..abad578d 100755 +--- a/podwrapper.pl.in ++++ b/podwrapper.pl.in +@@ -233,7 +233,8 @@ my $date; + my $filename = "$abs_top_srcdir/.git"; + if (!$date && -d $filename) { + local $ENV{GIT_DIR} = $filename; +- $date = `git show -O/dev/null -s --format=%cs`; ++ $_ = `git show -O/dev/null -s --format=%ci`; ++ $date = $1 if /^(\d+-\d+-\d+)\s/; + } + if (!$date) { + my ($day, $month, $year) = (gmtime($ENV{SOURCE_DATE_EPOCH} || time))[3,4,5]; +-- +2.31.1 + diff --git a/0027-Fix-podwrapper.pl.in-Use-short-commit-date.patch b/0027-Fix-podwrapper.pl.in-Use-short-commit-date.patch new file mode 100644 index 0000000..c828fb8 --- /dev/null +++ b/0027-Fix-podwrapper.pl.in-Use-short-commit-date.patch @@ -0,0 +1,31 @@ +From fb7749b3497a7aaf1b00e975af166af029209c01 Mon Sep 17 00:00:00 2001 +From: Eric Blake +Date: Tue, 30 Nov 2021 12:42:01 -0600 +Subject: [PATCH] Fix "podwrapper.pl.in: Use short commit date" + +This reverts commit 750ad5972bb082d188f17f8f71ef1ec0c616c676, then +fixes the broken newline as suggested in the thread at +https://listman.redhat.com/archives/libguestfs/2021-November/msg00275.html. + +(cherry picked from commit 80036dbb0b8f9e0aab5994d80de6321c2a55c669) +--- + podwrapper.pl.in | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/podwrapper.pl.in b/podwrapper.pl.in +index abad578d..6f256ba8 100755 +--- a/podwrapper.pl.in ++++ b/podwrapper.pl.in +@@ -233,8 +233,7 @@ my $date; + my $filename = "$abs_top_srcdir/.git"; + if (!$date && -d $filename) { + local $ENV{GIT_DIR} = $filename; +- $_ = `git show -O/dev/null -s --format=%ci`; +- $date = $1 if /^(\d+-\d+-\d+)\s/; ++ $date = `git show -O/dev/null -s --format=format:%cs`; + } + if (!$date) { + my ($day, $month, $year) = (gmtime($ENV{SOURCE_DATE_EPOCH} || time))[3,4,5]; +-- +2.31.1 + diff --git a/0028-scripts-Add-simple-script-for-automating-VDDK-disk-c.patch b/0028-scripts-Add-simple-script-for-automating-VDDK-disk-c.patch new file mode 100644 index 0000000..e953d6b --- /dev/null +++ b/0028-scripts-Add-simple-script-for-automating-VDDK-disk-c.patch @@ -0,0 +1,154 @@ +From 599f64f5885cf546f85e6c28d98b0444c18ad1fa Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 30 Nov 2021 17:56:02 +0000 +Subject: [PATCH] scripts: Add simple script for automating VDDK disk + connections + +It's tedious to work out how to do this by hand every time. Include a +developer script to make connecting to a guest disk easy. + +(cherry picked from commit 44ee90ee01677032a14d5b71118b7af0651db3d5) +--- + .gitignore | 1 + + Makefile.am | 2 +- + configure.ac | 2 + + scripts/vddk-open.sh.in | 89 +++++++++++++++++++++++++++++++++++++++++ + 4 files changed, 93 insertions(+), 1 deletion(-) + create mode 100755 scripts/vddk-open.sh.in + +diff --git a/.gitignore b/.gitignore +index 847b72dd..6565600f 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -89,6 +89,7 @@ plugins/*/*.3 + /plugins/S3/nbdkit-S3-plugin + /plugins/tmpdisk/default-command.c + /podwrapper.pl ++/scripts/vddk-open.sh + /server/libnbdkit.a + /server/local/nbdkit.pc + /server/nbdkit +diff --git a/Makefile.am b/Makefile.am +index 49f5d91c..6df5eba0 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -46,7 +46,7 @@ EXTRA_DIST = \ + SECURITY \ + $(NULL) + +-CLEANFILES += html/*.html ++CLEANFILES += html/*.html scripts/*~ + + if !ENABLE_LIBFUZZER + # NB: This is not the real nbdkit binary. It's a wrapper that allows +diff --git a/configure.ac b/configure.ac +index 19514ef6..8a86326e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1253,6 +1253,8 @@ dnl Produce output files. + AC_CONFIG_HEADERS([config.h]) + AC_CONFIG_FILES([podwrapper.pl], + [chmod +x,-w podwrapper.pl]) ++AC_CONFIG_FILES([scripts/vddk-open.sh], ++ [chmod +x,-w scripts/vddk-open.sh]) + AC_CONFIG_FILES([common/protocol/generate-protostrings.sh], + [chmod +x,-w common/protocol/generate-protostrings.sh]) + AC_CONFIG_FILES([Makefile +diff --git a/scripts/vddk-open.sh.in b/scripts/vddk-open.sh.in +new file mode 100755 +index 00000000..218bc93c +--- /dev/null ++++ b/scripts/vddk-open.sh.in +@@ -0,0 +1,89 @@ ++#!/bin/bash - ++# @configure_input@ ++# Copyright (C) 2013-2021 Red Hat Inc. ++# ++# Redistribution and use in source and binary forms, with or without ++# modification, are permitted provided that the following conditions are ++# met: ++# ++# * Redistributions of source code must retain the above copyright ++# notice, this list of conditions and the following disclaimer. ++# ++# * Redistributions in binary form must reproduce the above copyright ++# notice, this list of conditions and the following disclaimer in the ++# documentation and/or other materials provided with the distribution. ++# ++# * Neither the name of Red Hat nor the names of its contributors may be ++# used to endorse or promote products derived from this software without ++# specific prior written permission. ++# ++# THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND ++# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, ++# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A ++# PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR ++# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF ++# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ++# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ++# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT ++# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++# SUCH DAMAGE. ++ ++# Open an nbdkit-vddk-plugin connection to the first disk of a guest ++# on a VMware ESXi server. This script automates the tedious bits of ++# getting the disk name, moref, etc. However please read the ++# nbdkit-vddk-plugin documentation as well. ++# ++# Usage: ++# scripts/vddk-open.sh SERVER GUEST -r -f -v libdir=/path/to/vmware-vix-disklib-distrib [...] ++# ++# where SERVER is the hostname or IP address of the ESXi server and ++# GUEST is the name of the guest. ++# ++# These two required parameters are followed by any extra nbdkit ++# parameters you want to use, such as VDDK libdir, flags, filters etc. ++# ++# Note that the script runs ./nbdkit (ie. the wrapper in the top build ++# directory). ++ ++nbdkit="@abs_top_builddir@/nbdkit" ++ ++server="$1" ++guest="$2" ++shift 2 ++ ++# Get the libvirt XML, filename and moref. ++echo -n "root password? " ++xml="$( virsh -c "esx://root@$server/?no_verify=1" dumpxml "$guest" )" ++echo ++ ++file="$( echo "$xml" | grep '\(.*\)<.*,\1,' )" ++ ++#echo file="$file" ++#echo moref="$moref" ++ ++# Get the thumbprint. ++thumbprint="$( openssl s_client -connect "$server:443" /dev/null | ++ openssl x509 -in /dev/stdin -fingerprint -sha1 -noout 2>/dev/null | ++ grep '^sha1 Fingerprint=' | ++ sed 's/.*Fingerprint=\([A-F0-9:]\+\)/\1/' )" ++ ++#echo thumbprint="$thumbprint" ++ ++# Construct the nbdkit command line. ++declare -a args ++ ++args[${#args[@]}]="$nbdkit" ++args[${#args[@]}]="vddk" ++args[${#args[@]}]="file=$file" ++args[${#args[@]}]="vm=moref=$moref" ++args[${#args[@]}]="server=$server" ++args[${#args[@]}]="thumbprint=$thumbprint" ++args[${#args[@]}]="user=root" ++ ++echo "${args[@]}" "$@" ++"${args[@]}" "$@" +-- +2.31.1 + diff --git a/nbdkit.spec b/nbdkit.spec index d08e71c..6a06800 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,8 +50,8 @@ ExclusiveArch: x86_64 %global source_directory 1.28-stable Name: nbdkit -Version: 1.28.2 -Release: 2%{?dist} +Version: 1.28.3 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -76,35 +76,34 @@ Source3: copy-patches.sh # https://gitlab.com/nbdkit/nbdkit/-/commits/rhel-9.0/ # Patches. -Patch0001: 0001-rust-Use-correct-type-of-C-char-on-ARM-and-RISC-V-pl.patch -Patch0002: 0002-tests-Remove-redundant-comment.patch -Patch0003: 0003-tests-Use-compound-literal-array-for-nbd_connect_com.patch -Patch0004: 0004-common-regions-Implement-append_region_end.patch -Patch0005: 0005-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch -Patch0006: 0006-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch -Patch0007: 0007-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch -Patch0008: 0008-vddk-Document-troubleshooting-performance-problems.patch -Patch0009: 0009-vddk-Include-VDDK-major-library-version-in-dump-plug.patch -Patch0010: 0010-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch -Patch0011: 0011-vddk-Fix-typo-in-debug-message.patch -Patch0012: 0012-vddk-Only-print-vddk_library_version-when-we-managed.patch -Patch0013: 0013-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch -Patch0014: 0014-vddk-Move-minimum-version-to-VDDK-6.5.patch -Patch0015: 0015-vddk-Add-read-write-and-wait-asynchronous-functions.patch -Patch0016: 0016-vddk-Start-to-split-VDDK-over-several-files.patch -Patch0017: 0017-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch -Patch0018: 0018-vddk-Implement-parallel-thread-model.patch -Patch0019: 0019-vddk-Assume-that-VixDiskLib_Flush-is-available.patch -Patch0020: 0020-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch -Patch0021: 0021-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch -Patch0022: 0022-vddk-Move-config-debug-error-and-utility-functions-a.patch -Patch0023: 0023-common-utils-test-vector.c-Add-vector-benchmarks.patch -Patch0024: 0024-common-urils-vector.c-Optimize-vector-append.patch -Patch0025: 0025-common-utils-vector-Rename-alloc-to-cap.patch -Patch0026: 0026-common-utils-vector-Rename-size-to-len.patch -Patch0027: 0027-podwrapper.pl.in-Use-short-commit-date.patch -Patch0028: 0028-ocaml-Replace-noalloc-with-noalloc-annotation.patch -Patch0029: 0029-vddk-Drop-obsolete-documentation-related-to-thread-m.patch +Patch0001: 0001-vddk-Refactor-how-D-vddk.stats-1-is-collected.patch +Patch0002: 0002-vddk-Extend-D-vddk.stats-1-to-show-number-of-calls-a.patch +Patch0003: 0003-vddk-Simplify-and-consolidate-VDDK_CALL_START-END-ma.patch +Patch0004: 0004-vddk-Document-troubleshooting-performance-problems.patch +Patch0005: 0005-vddk-Include-VDDK-major-library-version-in-dump-plug.patch +Patch0006: 0006-vddk-Add-logical-and-physical-sector-size-to-D-vddk..patch +Patch0007: 0007-vddk-Fix-typo-in-debug-message.patch +Patch0008: 0008-vddk-Only-print-vddk_library_version-when-we-managed.patch +Patch0009: 0009-vddk-Print-one-line-in-dump-plugin-output-for-each-V.patch +Patch0010: 0010-vddk-Move-minimum-version-to-VDDK-6.5.patch +Patch0011: 0011-vddk-Add-read-write-and-wait-asynchronous-functions.patch +Patch0012: 0012-vddk-Start-to-split-VDDK-over-several-files.patch +Patch0013: 0013-vddk-Refactor-D-vddk.stats-1-into-a-new-file.patch +Patch0014: 0014-vddk-Implement-parallel-thread-model.patch +Patch0015: 0015-vddk-Assume-that-VixDiskLib_Flush-is-available.patch +Patch0016: 0016-vddk-Simplify-detection-of-VDDK-symbols-and-baseline.patch +Patch0017: 0017-vddk-Remove-some-whitespace-from-a-couple-of-functio.patch +Patch0018: 0018-vddk-Move-config-debug-error-and-utility-functions-a.patch +Patch0019: 0019-common-utils-test-vector.c-Add-vector-benchmarks.patch +Patch0020: 0020-common-urils-vector.c-Optimize-vector-append.patch +Patch0021: 0021-common-utils-vector-Rename-alloc-to-cap.patch +Patch0022: 0022-common-utils-vector-Rename-size-to-len.patch +Patch0023: 0023-podwrapper.pl.in-Use-short-commit-date.patch +Patch0024: 0024-ocaml-Replace-noalloc-with-noalloc-annotation.patch +Patch0025: 0025-vddk-Drop-obsolete-documentation-related-to-thread-m.patch +Patch0026: 0026-Revert-podwrapper.pl.in-Use-short-commit-date.patch +Patch0027: 0027-Fix-podwrapper.pl.in-Use-short-commit-date.patch +Patch0028: 0028-scripts-Add-simple-script-for-automating-VDDK-disk-c.patch BuildRequires: make %if 0%{patches_touch_autotools} @@ -1218,16 +1217,18 @@ export LIBGUESTFS_TRACE=1 %changelog -* Mon Nov 29 2021 Richard W.M. Jones - 1.28.2-2 +* Tue Dec 07 2021 Richard W.M. Jones - 1.28.3-1 +- Rebase to new stable branch version 1.28.3 + resolves: rhbz#2011709 - Move nbdkit-null-plugin to nbdkit-server package resolves: rhbz#2021154 - Add asynchronous support in nbdkit-vddk-plugin - Drop obsolete documentation related to thread model in vddk plugin resolves: rhbz#2018463 -- Rebase to new stable branch version 1.28.2 - resolves: rhbz#2011709 - Switch to xorriso (instead of genisoimage) - Distribute README.VDDK in nbdkit-vddk-plugin subpackage +- Fix nbdkit-cow-filter cow-block-size=4096 + resolves: rhbz#2029751 * Thu Aug 19 2021 Richard W.M. Jones - 1.26.5-1 - Rebase along stable branch to 1.26.5 diff --git a/sources b/sources index 8da0698..7ac73ce 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.28.2.tar.gz) = 6ce0971415ee8bb1754c66f95d3897619a7fcf87246af9eda902faf047b834caca61731ca20ae2f47efc302926c6674802177a58c2236f9b1084645d1f4611d2 -SHA512 (nbdkit-1.28.2.tar.gz.sig) = d624813814dc0ebcd895630387d3d72365970faae0b6afcf5d42ac0dda8ab11669731c36795f75c8777460888881dd2005b1693bd967c1aae1b76581f16d7c33 +SHA512 (nbdkit-1.28.3.tar.gz) = d0d6ba08a438da8b3dbcadb0504ff8a69f50a7d1494688b4fe404672a89fd8063a27720d04ada284469999afbf3928a7c69a093db3858b3eaa063ccce913e59a +SHA512 (nbdkit-1.28.3.tar.gz.sig) = d5a1d1cd79dddf58b5c8c2c89326d31e1c0434cf59e98303bf5e08153a8b3f05899724340591712060bb2d9339437e3308dcc5ec9ddd490390b7a81b2589769b