Blob Blame History Raw
From aa5608a922bd35db28f555e53aea2308361991dd Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Mon, 14 May 2018 10:16:58 +0100
Subject: [PATCH] RHEL 7: v2v: rhv-upload: Remove restriction on -oa sparse.

See: https://bugzilla.redhat.com/show_bug.cgi?id=1565681
and the v2v-devel private thread "Do we already support migration using FC?"
---
 v2v/output_rhv_upload.ml | 11 +----------
 v2v/rhv-upload-plugin.py |  4 +---
 v2v/virt-v2v.pod         |  6 ------
 3 files changed, 2 insertions(+), 19 deletions(-)

diff --git a/v2v/output_rhv_upload.ml b/v2v/output_rhv_upload.ml
index 7dbd98a0d..32c2f8f64 100644
--- a/v2v/output_rhv_upload.ml
+++ b/v2v/output_rhv_upload.ml
@@ -176,19 +176,11 @@ See also \"OUTPUT TO RHV\" in the virt-v2v(1) manual.")
       error (f_"nbdkit was compiled without SELinux support.  You will have to recompile nbdkit with libselinux-devel installed, or else set SELinux to Permissive mode while doing the conversion.")
   in
 
-  (* Output format/sparse must be raw/sparse.  We may be able to
-   * lift this limitation in future, but it requires changes on the
-   * RHV side.  See TODO file for details.  XXX
-   *)
+  (* Output format must be raw. *)
   let error_current_limitation required_param =
     error (f_"rhv-upload: currently you must use ā€˜%sā€™.  This restriction will be loosened in a future version.") required_param
   in
 
-  let error_unless_output_alloc_sparse () =
-    if output_alloc <> Sparse then
-      error_current_limitation "-oa sparse"
-  in
-
   (* JSON parameters which are invariant between disks. *)
   let json_params = [
     "verbose", JSON.Bool (verbose ());
@@ -241,7 +233,6 @@ object
     error_unless_ovirtsdk4_module_available ();
     error_unless_nbdkit_working ();
     error_unless_nbdkit_python3_working ();
-    error_unless_output_alloc_sparse ();
     if have_selinux then
       error_unless_nbdkit_compiled_with_selinux ()
 
diff --git a/v2v/rhv-upload-plugin.py b/v2v/rhv-upload-plugin.py
index 4fad27fb8..41cb29992 100644
--- a/v2v/rhv-upload-plugin.py
+++ b/v2v/rhv-upload-plugin.py
@@ -139,10 +139,8 @@ def open(readonly):
             format = disk_format,
             initial_size = params['disk_size'],
             provisioned_size = params['disk_size'],
-            # XXX Ignores params['output_sparse'].
-            # Handling this properly will be complex, see:
             # https://www.redhat.com/archives/libguestfs/2018-March/msg00177.html
-            sparse = True,
+            sparse = params['output_sparse'],
             storage_domains = [
                 types.StorageDomain(
                     name = params['output_storage'],
diff --git a/v2v/virt-v2v.pod b/v2v/virt-v2v.pod
index 90443373f..91f575617 100644
--- a/v2v/virt-v2v.pod
+++ b/v2v/virt-v2v.pod
@@ -1813,12 +1813,6 @@ username is not specified then virt-v2v defaults to using
 C<admin@internal> which is the typical superuser account for oVirt
 instances.
 
-=item I<-of raw>
-
-Currently you must use I<-of raw> and you cannot use I<-oa preallocated>.
-
-These restrictions will be loosened in a future version.
-
 =item I<-op> F<password-file>
 
 A file containing a password to be used when connecting to the oVirt
-- 
2.20.1