virt-v2v/0047-v2v-Cope-with-libvirt-vpx-esx-driver-which-does-not-.patch
Richard W.M. Jones 2f9214744a Reapply patches since we are using git format-patch --submodule=diff
- Don't comment out patch 0029 (the common submodule update).

- Use a common/.gitattributes trick to exclude files from the common
  patch that are not included in virt-v2v tarball.  This also requires
  some sed hacking.

NB: I tried using ':(exclude)...' stuff and it does not work for
submodules, at least not with the git version in RHEL 8.

For more info see private email thread "Customer case requiring our
assistance" in 2023.

Reviewed-by: Laszlo Ersek <lersek@redhat.com>
resolves: rhbz#2184183
2023-04-04 08:45:24 +01:00

42 lines
1.8 KiB
Diff

From 992af0707ad54d39ec707da6daa6c4ca7c3fc69a Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Wed, 24 Nov 2021 11:23:38 +0000
Subject: [PATCH] v2v: Cope with libvirt vpx/esx driver which does not set
format
See discussion in this bug:
https://bugzilla.redhat.com/show_bug.cgi?id=2026199
Fixes: commit 40cfe6da0861ca6360f670e254c71ed923a0402f
(cherry picked from commit 59dc3293a9b4fdf11da8571c50e3e5badbb511c2)
---
v2v/parse_libvirt_xml.ml | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/v2v/parse_libvirt_xml.ml b/v2v/parse_libvirt_xml.ml
index 27e08135..e65fbf4a 100644
--- a/v2v/parse_libvirt_xml.ml
+++ b/v2v/parse_libvirt_xml.ml
@@ -273,7 +273,11 @@ let parse_libvirt_xml ?bandwidth ?conn xml =
| Some "aio" -> "raw" (* Xen wierdness *)
| Some format -> format
| None ->
- error (f_"<disk><driver type=\"format\"> attribute is missing from the libvirt XML") in
+ (* Some libvirt drivers don't set the format. Typically
+ * this is the vpx/esx driver (see RHBZ#2026199). We
+ * can assume "raw", as it will be overwritten later.
+ *)
+ "raw" in
(* The <disk type='...'> attribute may be 'block', 'file',
* 'network' or 'volume'. We ignore any other types.
@@ -344,7 +348,7 @@ let parse_libvirt_xml ?bandwidth ?conn xml =
match xpath_string "/volume/target/format/@type" with
| Some format -> format
| None ->
- error (f_"<volume><target>.<format type=\"format\"> attribute is missing from the libvirt XML of volume %s") vol in
+ error (f_"<volume><target><format type=\"format\"> attribute is missing from the libvirt XML of volume %s") vol in
(match xpath_string "/volume/@type" with
| None | Some "file" ->