Rebase to virt-v2v 2.8.0

resolves: RHEL-81735
This commit is contained in:
Richard W.M. Jones 2025-06-12 08:50:14 +01:00
parent 18d87c62d1
commit 07ef6f05f1
15 changed files with 43 additions and 97 deletions

View File

@ -1,4 +1,4 @@
From 93c1b119526fffc5d31acc1bcb96223b0a9f0ac9 Mon Sep 17 00:00:00 2001
From b0bb9e507dbe07520ad0b2cd044a2f89469d5ad1 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Sun, 30 Aug 2015 03:21:57 -0400
Subject: [PATCH] RHEL: Fixes for libguestfs-winsupport.

View File

@ -1,53 +0,0 @@
From 2e7c03b967e2c5bbe01a0c9cc255238d19c46540 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Thu, 5 Jun 2025 15:32:35 +0100
Subject: [PATCH] convert: Replay dirty log for XFS filesystems before running
xfs_repair
Reported-by: Vera Wu
Thanks: Eric Sandeen, Ming Xie
Fixes: https://issues.redhat.com/browse/RHEL-95365
Fixes: commit 78ffb68d4f1ef8af776c24537feaf832fd3ec7e9
---
convert/convert.ml | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/convert/convert.ml b/convert/convert.ml
index a6e0d532..ad0b82b1 100644
--- a/convert/convert.ml
+++ b/convert/convert.ml
@@ -83,7 +83,7 @@ let rec convert input_disks options source =
(* Check (fsck) the filesystems before conversion. *)
message (f_"Checking filesystem integrity before conversion");
- do_fsck g;
+ do_fsck ~before:true g;
(* Detect firmware. *)
message (f_"Detecting if this guest uses BIOS or UEFI to boot");
@@ -237,7 +237,7 @@ and do_fstrim g inspect =
* If fsck returns an error then the conversion will fail. We do not
* attempt to do any repairs.
*)
-and do_fsck g =
+and do_fsck ?(before=false) g =
let fses = g#list_filesystems () in
List.iter (function
| dev, _ when String.starts_with "btrfsvol:" dev ->
@@ -261,6 +261,16 @@ and do_fsck g =
g#e2fsck ~forceno:true dev
| dev, "xfs" ->
+ if before then (
+ (* xfs_repair cannot replay the dirty log, only the kernel can,
+ * so we must first mount then unmount the filesystem, and then
+ * we can run xfs_repair. Unlike what is documented, xfs_repair
+ * doesn't return 2 in this case. Mount r/o is fine as that
+ * will still replay the log (RHEL-95365)
+ *)
+ Fun.protect ~finally:g#umount_all (fun () -> g#mount_ro dev "/");
+ );
+
if g#xfs_repair ~nomodify:true dev <> 0 then
error (f_"detected errors on the XFS filesystem on %s") dev

View File

@ -1,4 +1,4 @@
From b0dbc17126e5851c8d96ba01d8827ef9764cb919 Mon Sep 17 00:00:00 2001
From 123a4bd07bd63f33eb4ec91fa4ebde8973dfb149 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Sun, 28 Sep 2014 19:14:43 +0100
Subject: [PATCH] RHEL: v2v: Select correct qemu binary for -o qemu mode

View File

@ -1,4 +1,4 @@
From 902f3a34c30c3b04e0a25baf17a303eb7679acb1 Mon Sep 17 00:00:00 2001
From 86cfbc0abf57acd93ba3e5c7791322d30e320de0 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 30 Sep 2014 10:50:27 +0100
Subject: [PATCH] RHEL: v2v: Disable the --qemu-boot / -oo qemu-boot option
@ -43,7 +43,7 @@ index 49f00754..bdf12c5d 100644
=item B<-o null>
diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
index 179be943..fbd0c6d0 100644
index 9b3d682d..3f2fa7f4 100644
--- a/docs/virt-v2v.pod
+++ b/docs/virt-v2v.pod
@@ -159,11 +159,6 @@ Since F<guest-domain.xml> contains the path(s) to the guest disk

View File

@ -1,4 +1,4 @@
From 2bfee23bfabfc5b4a61e4886acf8de23844eb94c Mon Sep 17 00:00:00 2001
From f648c3d8d70e8a91462ccc901bc63798196e9d14 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Fri, 24 Apr 2015 09:45:41 -0400
Subject: [PATCH] RHEL: Fix list of supported sound cards to match RHEL qemu

View File

@ -1,4 +1,4 @@
From bbf6820152876487310a3945935c10fc28465668 Mon Sep 17 00:00:00 2001
From 08f16bebe9734aa3d5ebf4a6ea1cfb952777a40a Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Thu, 2 Mar 2017 14:21:37 +0100
Subject: [PATCH] RHEL: v2v: -i disk: force VNC as display (RHBZ#1372671)

View File

@ -1,4 +1,4 @@
From d663ded91ff04fea676f5f8df91e33c252f3c3e4 Mon Sep 17 00:00:00 2001
From 95d248631071a22ad1d362b02202371b502aaa3f Mon Sep 17 00:00:00 2001
From: Pino Toscano <ptoscano@redhat.com>
Date: Tue, 26 Mar 2019 09:42:25 +0100
Subject: [PATCH] RHEL: point to KB for supported v2v hypervisors/guests

View File

@ -1,4 +1,4 @@
From f122df7aa9ece794c218fdb1c067f615574862d2 Mon Sep 17 00:00:00 2001
From 632b140043f51126fcc52dd2a432eb27924a0e1e Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Mon, 8 Jul 2024 09:35:54 +0100
Subject: [PATCH] RHEL: Remove input from Xen
@ -229,7 +229,7 @@ index 0417e89f..00000000
-
-Copyright (C) 2009-2025 Red Hat Inc.
diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
index fbd0c6d0..dd61cbd3 100644
index 3f2fa7f4..4a997d4c 100644
--- a/docs/virt-v2v.pod
+++ b/docs/virt-v2v.pod
@@ -12,7 +12,7 @@ virt-v2v - Convert a guest to use KVM
@ -316,7 +316,7 @@ index fbd0c6d0..dd61cbd3 100644
=head2 Enabling virtio
"Virtio" is the name for a set of drivers which make disk (block
@@ -1244,7 +1204,7 @@ bandwidth. Virt-v2v should be able to copy guest data at gigabit
@@ -1260,7 +1220,7 @@ bandwidth. Virt-v2v should be able to copy guest data at gigabit
ethernet speeds or greater.
Ensure that the network connections between servers (conversion

View File

@ -1,4 +1,4 @@
From 6d16a6c76a5d1ae2a6e259b969a1de3fa4e42173 Mon Sep 17 00:00:00 2001
From 44b8d14f356d9ba4e0e8a6c17b0b64f98394dada Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Wed, 30 Jun 2021 11:15:52 +0100
Subject: [PATCH] RHEL: Remove -o glance
@ -100,7 +100,7 @@ index 9bef76ea..04595816 100644
=head1 AUTHOR
diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
index dd61cbd3..3e12914a 100644
index 4a997d4c..1ae73040 100644
--- a/docs/virt-v2v.pod
+++ b/docs/virt-v2v.pod
@@ -438,14 +438,6 @@ See L</Networks and bridges> below.
@ -118,7 +118,7 @@ index dd61cbd3..3e12914a 100644
=item B<-o> B<kubevirt>
Set the output method to I<kubevirt>. B<Note the way this mode works
@@ -1226,11 +1218,6 @@ and output methods may use disk space, as outlined in the table below.
@@ -1242,11 +1234,6 @@ and output methods may use disk space, as outlined in the table below.
This temporarily places a full copy of the uncompressed source disks
in C<$VIRT_V2V_TMPDIR> (or F</var/tmp>).
@ -130,7 +130,7 @@ index dd61cbd3..3e12914a 100644
=item I<-o local>
=item I<-o qemu>
@@ -1433,13 +1420,6 @@ See also L</Starting the libvirt system instance>.
@@ -1449,13 +1436,6 @@ See also L</Starting the libvirt system instance>.
Because of how Cinder volumes are presented as F</dev> block devices,
using I<-o openstack> normally requires that virt-v2v is run as root.

View File

@ -1,4 +1,4 @@
From b192b37492e6db2b35dd1e78700dcecdd2d46d33 Mon Sep 17 00:00:00 2001
From 1d69b1369e2e90555511f95f67590970d2e24cb5 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 5 Jul 2022 11:58:09 +0100
Subject: [PATCH] RHEL: tests: Remove btrfs test

View File

@ -1,4 +1,4 @@
From 8eded5d846ad265b2c73e986b38e6d572544101c Mon Sep 17 00:00:00 2001
From 469b53b4f6451f21d31e162cd0c0d8afaff1930e Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Fri, 28 Apr 2023 12:28:19 +0100
Subject: [PATCH] RHEL: Remove --block-driver option
@ -37,7 +37,7 @@ index 6c02a99c..3d0d1b28 100644
=item B<--colours>
diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
index 3e12914a..0bf464da 100644
index 1ae73040..47e9fa36 100644
--- a/docs/virt-v2v.pod
+++ b/docs/virt-v2v.pod
@@ -211,16 +211,6 @@ The options are silently ignored for other input methods.

View File

@ -1,4 +1,4 @@
From 71196cb1c4180e5a107da9d3f1aeba27e637e703 Mon Sep 17 00:00:00 2001
From 7442dc3c13348410ad56f2d9a90f0c3948e22119 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Mon, 8 Jul 2024 09:56:54 +0100
Subject: [PATCH] RHEL: Remove -o ovirt, -o ovirt-upload and -o vdsm modes
@ -360,7 +360,7 @@ index 6ba04ad0..00000000
-
-Copyright (C) 2009-2025 Red Hat Inc.
diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
index 0bf464da..c6a12086 100644
index 47e9fa36..d7d3c6aa 100644
--- a/docs/virt-v2v.pod
+++ b/docs/virt-v2v.pod
@@ -14,9 +14,9 @@ virt-v2v - Convert a guest to use KVM
@ -597,7 +597,7 @@ index 0bf464da..c6a12086 100644
=item B<--parallel> N
Enable parallel copying if the guest has multiple disks. I<N> is the
@@ -1371,26 +1197,6 @@ require either root or a special user:
@@ -1387,26 +1213,6 @@ require either root or a special user:
=over 4
@ -624,7 +624,7 @@ index 0bf464da..c6a12086 100644
=item Writing to libvirt
When using I<-o libvirt>, you may need to run virt-v2v as root so that
@@ -1498,7 +1304,6 @@ virt-v2v binary. Typical output looks like this:
@@ -1514,7 +1320,6 @@ virt-v2v binary. Typical output looks like this:
virt-v2v
libguestfs-rewrite
colours-option

View File

@ -1,4 +1,4 @@
From 7070cae9b9c239786c2cbaa61e8a091b5dd77ba2 Mon Sep 17 00:00:00 2001
From eb22fe315be71bcd836bdeb64253f0ea6477a690 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 9 Jul 2024 11:30:09 +0100
Subject: [PATCH] RHEL: Add warning about virt-v2v-in-place not being supported

View File

@ -1,2 +1,2 @@
SHA512 (virt-v2v-2.7.17.tar.gz) = 72b476ca6f0198ddd1ac9f52b834bc6720374b86d52014a3707ba42a0bfdb2098a8a8f76bae6b01c222c1d83c60909e472fc4ad000e057faad337fce49299a15
SHA512 (virt-v2v-2.7.17.tar.gz.sig) = a196e3e2100777a714c11e9adb7f8bf49bb626b57ec5ec7db9bf459a2942d3523fd4801aacffc0354357b5054fd69e1dfc222c7a254ff6b53f55d8832dea8295
SHA512 (virt-v2v-2.8.0.tar.gz) = b4ceb8694a418fc4c1dd0951ddabe332cbce4e9b75137ab5a186a22d1ad0d1e09476aa51b44fd6da3016d3d45b69b2c0ee40941b5f0a2cf25f3f3df514b3dd25
SHA512 (virt-v2v-2.8.0.tar.gz.sig) = cd79caaea2edb345f641f6be7ffda3f58322d788aa716cde0654dc7f340f13303c437a7e8dd7507ed01e502257a0b808977e5b93c88b7b26669b9c0ba32753a7

View File

@ -2,11 +2,11 @@
%global verify_tarball_signature 1
# The source directory.
%global source_directory 2.7-development
%global source_directory 2.8-stable
Name: virt-v2v
Epoch: 1
Version: 2.7.17
Version: 2.8.0
Release: 1%{?dist}
Summary: Convert a virtual machine to run on KVM
@ -27,19 +27,18 @@ Source3: copy-patches.sh
# https://github.com/libguestfs/virt-v2v/commits/rhel-10.1
# Patches.
Patch0001: 0001-convert-Replay-dirty-log-for-XFS-filesystems-before-.patch
Patch0002: 0002-RHEL-Fixes-for-libguestfs-winsupport.patch
Patch0003: 0003-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch
Patch0004: 0004-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch
Patch0005: 0005-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch
Patch0006: 0006-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch
Patch0007: 0007-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch
Patch0008: 0008-RHEL-Remove-input-from-Xen.patch
Patch0009: 0009-RHEL-Remove-o-glance.patch
Patch0010: 0010-RHEL-tests-Remove-btrfs-test.patch
Patch0011: 0011-RHEL-Remove-block-driver-option.patch
Patch0012: 0012-RHEL-Remove-o-ovirt-o-ovirt-upload-and-o-vdsm-modes.patch
Patch0013: 0013-RHEL-Add-warning-about-virt-v2v-in-place-not-being-s.patch
Patch0001: 0001-RHEL-Fixes-for-libguestfs-winsupport.patch
Patch0002: 0002-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch
Patch0003: 0003-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch
Patch0004: 0004-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch
Patch0005: 0005-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch
Patch0006: 0006-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch
Patch0007: 0007-RHEL-Remove-input-from-Xen.patch
Patch0008: 0008-RHEL-Remove-o-glance.patch
Patch0009: 0009-RHEL-tests-Remove-btrfs-test.patch
Patch0010: 0010-RHEL-Remove-block-driver-option.patch
Patch0011: 0011-RHEL-Remove-o-ovirt-o-ovirt-upload-and-o-vdsm-modes.patch
Patch0012: 0012-RHEL-Add-warning-about-virt-v2v-in-place-not-being-s.patch
%if !0%{?rhel}
# libguestfs hasn't been built on i686 for a while since there is no
@ -64,13 +63,13 @@ BuildRequires: /usr/bin/pod2man
BuildRequires: gcc
BuildRequires: ocaml >= 4.08
BuildRequires: libguestfs-devel >= 1:1.55.13-1
BuildRequires: libguestfs-devel >= 1:1.56.0-1
BuildRequires: augeas-devel
BuildRequires: bash-completion
BuildRequires: file-devel
BuildRequires: file
BuildRequires: gettext-devel
BuildRequires: json-c-devel
BuildRequires: libnbd-devel
BuildRequires: libnbd-devel >= 1.14
BuildRequires: libosinfo-devel
BuildRequires: libvirt-daemon-kvm
BuildRequires: libvirt-devel
@ -330,8 +329,8 @@ done
%changelog
* Thu Jun 05 2025 Richard W.M. Jones <rjones@redhat.com> - 1:2.7.17-1
- Rebase to virt-v2v 2.7.17
* Thu Jun 12 2025 Richard W.M. Jones <rjones@redhat.com> - 1:2.8.0-1
- Rebase to virt-v2v 2.8.0
related: RHEL-81735
- Fix virt-v2v -v --install dnf5 error
resolves: RHEL-83288