virt-v2v/0006-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch
Richard W.M. Jones 8190ec8540 Include a few experimental non-upstream patches
These two patches fix potential issues.  Best to get them tested over
Christmas and New Year.

    v2v: Swap over the output and conversion stages

    In old virt-v2v, we did (approximately, since the steps were not as
    clear):

      Input -> Convert -> Output -> Copy -> Finalize

    After modularizing virt-v2v we changed this to:

      Input -> Output -> Convert -> Copy -> Finalize

    However this has a (sort of) problem.  For -o rhv-upload when we start
    the nbdkit rhv-upload-plugin machinery, it obtains a time-limited
    ticket from imageio.  This ticket could expire if the conversion step
    takes longer than a certain time (60 seconds by default, may be
    increased in a future version of oVirt).

    I believe this is really a problem in imageio or that the
    rhv-upload-plugin should really renew this ticket automatically, but
    it does not, instead failing.  (The ticket *is* renewed automatically
    whenever a request is sent to imageio, but in this case no requests
    are being sent).

    Anyway the easiest thing is to switch the ordering back to how it was
    in old virt-v2v (at top).  It doesn't make a difference for any other
    output modes.

    Reported-by: Nir Soffer

and:

    v2v: Remove nbdcopy --request-size=4M flag

    This was added when we were setting the cow-block-size to 1M.  However
    since commit 351d61f768 ("input: -it vddk: Reduce cow-block-size to 4K")
    we stopped doing that so this is no longer needed.

    Reverts: commit 08e764959ec9dadd71a95d22d3d88d647a18d165

Related: rhbz#2011713
2021-12-18 13:51:11 +00:00

113 lines
3.7 KiB
Diff
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

From 0888b1586f975aa7e1eb3c99f44b2016a4fb01f0 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
(RHBZ#1147313).
This cannot work because there is no Gtk or SDL output mode
in RHEL's qemu-kvm.
In addition you will have to edit the -display option in the
qemu script.
---
docs/virt-v2v-output-local.pod | 6 ++----
docs/virt-v2v.pod | 12 ------------
output/output_qemu.ml | 3 +++
v2v/v2v.ml | 2 --
4 files changed, 5 insertions(+), 18 deletions(-)
diff --git a/docs/virt-v2v-output-local.pod b/docs/virt-v2v-output-local.pod
index a5f155cb..3a2e6238 100644
--- a/docs/virt-v2v-output-local.pod
+++ b/docs/virt-v2v-output-local.pod
@@ -9,7 +9,7 @@ or libvirt
virt-v2v [-i* options] -o local -os DIRECTORY
- virt-v2v [-i* options] -o qemu -os DIRECTORY [--qemu-boot]
+ virt-v2v [-i* options] -o qemu -os DIRECTORY
virt-v2v [-i* options] -o json -os DIRECTORY
[-oo json-disks-pattern=PATTERN]
@@ -50,12 +50,10 @@ where C<NAME> is the guest name.
=item B<-o qemu -os> C<DIRECTORY>
-=item B<-o qemu -os> C<DIRECTORY> B<--qemu-boot>
-
This converts the guest to files in C<DIRECTORY>. Unlike I<-o local>
above, a shell script is created which contains the raw qemu command
you would need to boot the guest. However the shell script is not
-run, I<unless> you also add the I<--qemu-boot> option.
+run.
=item B<-o json -os> C<DIRECTORY>
diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
index 3d0e00a3..04f3efd2 100644
--- a/docs/virt-v2v.pod
+++ b/docs/virt-v2v.pod
@@ -141,11 +141,6 @@ Since F<guest-domain.xml> contains the path(s) to the guest disk
image(s) you do not need to specify the name of the disk image on the
command line.
-To convert a local disk image and immediately boot it in local
-qemu, do:
-
- virt-v2v -i disk disk.img -o qemu -os /var/tmp -oo qemu-boot
-
=head1 OPTIONS
=over 4
@@ -510,9 +505,6 @@ This is similar to I<-o local>, except that a shell script is written
which you can use to boot the guest in qemu. The converted disks and
shell script are written to the directory specified by I<-os>.
-When using this output mode, you can also specify the I<-oo qemu-boot>
-option which boots the guest under qemu immediately.
-
=item B<-o> B<rhev>
This is the same as I<-o rhv>.
@@ -768,10 +760,6 @@ Print information about the source guest and stop. This option is
useful when you are setting up network and bridge maps.
See L</Networks and bridges>.
-=item B<--qemu-boot>
-
-This is the same as I<-oo qemu-boot>.
-
=item B<-q>
=item B<--quiet>
diff --git a/output/output_qemu.ml b/output/output_qemu.ml
index c4265703..822e4c72 100644
--- a/output/output_qemu.ml
+++ b/output/output_qemu.ml
@@ -52,6 +52,9 @@ and qemu_parse_options options =
) options.output_options;
let qemu_boot = !qemu_boot in
+ if qemu_boot then
+ error (f_"-o qemu: the -oo qemu-boot option cannot be used in RHEL");
+
(* -os must be set to a directory. *)
let output_storage =
match options.output_storage with
diff --git a/v2v/v2v.ml b/v2v/v2v.ml
index 47e6e937..503dfb55 100644
--- a/v2v/v2v.ml
+++ b/v2v/v2v.ml
@@ -277,8 +277,6 @@ let rec main () =
s_"Same as -ip filename";
[ L"print-source" ], Getopt.Set print_source,
s_"Print source and stop";
- [ L"qemu-boot" ], Getopt.Unit (fun () -> set_output_option_compat "qemu-boot" ""),
- s_"Boot in qemu (-o qemu only)";
[ L"root" ], Getopt.String ("ask|... ", set_root_choice),
s_"How to choose root filesystem";
[ L"vddk-config" ], Getopt.String ("filename", set_input_option_compat "vddk-config"),
--
2.31.1