import OL nbdkit-1.38.5-5.el9_6

This commit is contained in:
Andrew Lukoshko 2025-08-07 10:59:02 +00:00
parent 7ba7058018
commit ef3e04e30b
3 changed files with 101 additions and 1 deletions

View File

@ -0,0 +1,40 @@
From 37c234f30706958a63d45aeea0ffa8ffa8ba10d9 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Wed, 2 Jul 2025 16:18:19 +0100
Subject: [PATCH] server: Fix .zero fallback path
When no efficient zero method is supported, we fall back to writing a
buffer of actual zeroes. However because of an omitted update to
'offset' we would only zero out (up to) the first 64M of each range.
nbdcopy defaults to working on blocks of 128M, leaving the second 64M
unzeroed.
This affects only backing filesystems which do not support fallocate
FALLOC_FL_PUNCH_HOLE or FALLOC_FL_ZERO_RANGE, which turns out to be
rare, but it does include some NFS-mounted filesystems which is where
I saw this problem.
Fixes: commit 19184d3eb6356ae3b14da0fbaa9c9bdc7743a448
Thanks: Alex Kalenyuk
(cherry picked from commit 20b23fc9838faeddfd42664a7f497a9b29dc5921)
(cherry picked from commit 3c8d0812e7a7b6a1f9e5cceab7bee6e25b9cd7cd)
(cherry picked from commit e947a2a55cb018711b7f4ede5b5cec291ed5cf24)
---
server/plugins.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/server/plugins.c b/server/plugins.c
index 3c7df0d2..db36ce42 100644
--- a/server/plugins.c
+++ b/server/plugins.c
@@ -807,6 +807,7 @@ plugin_zero (struct context *c,
if (r == -1)
break;
count -= limit;
+ offset += limit;
}
done:
--
2.47.1

View File

@ -0,0 +1,50 @@
From 4e36ca88232609a0b15c3533328c93c0d41beab0 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Mon, 23 Jun 2025 13:05:51 +0100
Subject: [PATCH] vddk: Add support for VDDK 9.0.0.0
(cherry picked from commit c966fe7d05ed7e992e1bf725d4625434c74eaf8d)
(cherry picked from commit c33178791b9f66cb49082a496b5e65c6027f5ebd)
---
plugins/vddk/nbdkit-vddk-plugin.pod | 2 +-
plugins/vddk/vddk.c | 4 +++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/plugins/vddk/nbdkit-vddk-plugin.pod b/plugins/vddk/nbdkit-vddk-plugin.pod
index 19f25423..dc71431c 100644
--- a/plugins/vddk/nbdkit-vddk-plugin.pod
+++ b/plugins/vddk/nbdkit-vddk-plugin.pod
@@ -407,7 +407,7 @@ This is the first version that supported the
C<VixDiskLib_QueryAllocatedBlocks> API. This is required to provide
sparseness (extent) information over NBD.
-=item VDDK 8.0.2.1 (released Feb 2024)
+=item VDDK 9.0.0.0 (released Jun 2025)
This is the latest version of VDDK that we have tested at the time of
writing, but the plugin should work with future versions.
diff --git a/plugins/vddk/vddk.c b/plugins/vddk/vddk.c
index 2a787453..367366c0 100644
--- a/plugins/vddk/vddk.c
+++ b/plugins/vddk/vddk.c
@@ -78,7 +78,7 @@ NBDKIT_DLL_PUBLIC int vddk_debug_datapath = 1;
void *dl; /* dlopen handle */
bool init_called; /* was InitEx called */
__thread int error_suppression; /* threadlocal error suppression */
-int library_version; /* VDDK major: 6, 7, 8, ... */
+int library_version; /* VDDK major: 6, 7, 8, 9 */
bool is_remote; /* true if remote connection */
enum compression_type compression; /* compression */
@@ -407,6 +407,8 @@ load_library (bool load_error_is_fatal)
* our testsuite is easier to write if we point libdir directly to
* a stub .so.
*/
+ { "lib64/libvixDiskLib.so.9", 9 },
+ { "libvixDiskLib.so.9", 9 },
{ "lib64/libvixDiskLib.so.8", 8 },
{ "libvixDiskLib.so.8", 8 },
{ "lib64/libvixDiskLib.so.7", 7 },
--
2.47.1

View File

@ -56,7 +56,7 @@
Name: nbdkit
Version: 1.38.5
Release: 3%{?dist}
Release: 5%{?dist}
Summary: NBD server
License: BSD-3-Clause
@ -98,6 +98,8 @@ Patch0014: 0014-file-Fix-do_fallocate-debugging-on-Alpine.patch
Patch0015: 0015-file-Rename-h-can_zeroout-to-h-can_blkzeroout-to-ref.patch
Patch0016: 0016-file-zero-Document-implicit-order-that-we-will-try-z.patch
Patch0017: 0017-file-zero-Use-BLKDISCARD-method-if-may_trim-is-set.patch
Patch0018: 0018-server-Fix-.zero-fallback-path.patch
Patch0019: 0019-vddk-Add-support-for-VDDK-9.0.0.0.patch
# For automatic RPM Provides generation.
# See: https://rpm-software-management.github.io/rpm/manual/dependency_generators.html
@ -1516,6 +1518,14 @@ fi
%changelog
* Mon Jul 14 2025 Richard W.M. Jones <rjones@redhat.com> - 1.38.5-5
- Support VDDK 9
resolves: RHEL-103420
* Sat Jul 05 2025 Richard W.M. Jones <rjones@redhat.com> - 1.38.5-4
- server: Fix .zero fallback path
resolves: RHEL-101702
* Tue May 13 2025 Richard W.M. Jones <rjones@redhat.com> - 1.38.5-3
- file: zero: Use BLKDISCARD method if may_trim is set
resolves: RHEL-91094