Removing the "QXL" constructor mostly needs the obvious fixup in the
various pattern matches. Worth highlighting is
"convert/windows_virtio.ml": the somewhat quirky QXL branches disappear,
and the resultant display selections match the Linux guest case (i.e.,
default: stdvga, or else stdvga/cirrus per requested guest caps).

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1961107
Signed-off-by: Laszlo Ersek <[email protected]>
---
 convert/convert_linux.ml             |  1 -
 convert/windows_virtio.ml            | 29 ++++----------------
 lib/types.ml                         |  3 +-
 lib/types.mli                        |  2 +-
 output/create_json.ml                |  1 -
 output/create_libvirt_xml.ml         |  1 -
 output/openstack_image_properties.ml |  1 -
 output/output.ml                     |  1 -
 8 files changed, 8 insertions(+), 31 deletions(-)

diff --git a/convert/convert_linux.ml b/convert/convert_linux.ml
index ae0bd39d1b2d..20fe68424413 100644
--- a/convert/convert_linux.ml
+++ b/convert/convert_linux.ml
@@ -832,7 +832,6 @@ let convert (g : G.guestfs) source inspect 
keep_serial_console rcaps _ =
     let video_driver =
       match video with
       | Standard_VGA -> "modesetting"
-      | QXL -> "qxl"
       | Cirrus -> "cirrus" in
 
     let updated = ref false in
diff --git a/convert/windows_virtio.ml b/convert/windows_virtio.ml
index 1a47a1500076..e69deab2fccc 100644
--- a/convert/windows_virtio.ml
+++ b/convert/windows_virtio.ml
@@ -52,15 +52,13 @@ let rec install_drivers ((g, _) as reg) inspect rcaps =
   if not (copy_drivers g inspect driverdir) then (
     match rcaps with
     | { rcaps_block_bus = Some Virtio_blk | Some Virtio_SCSI }
-    | { rcaps_net_bus = Some Virtio_net }
-    | { rcaps_video = Some QXL } ->
+    | { rcaps_net_bus = Some Virtio_net } ->
       error (f_"there are no virtio drivers available for this version of 
Windows (%d.%d %s %s).  virt-v2v looks for drivers in %s")
             inspect.i_major_version inspect.i_minor_version inspect.i_arch
             inspect.i_product_variant virtio_win
 
     | { rcaps_block_bus = ((Some IDE | None) as block_type);
-        rcaps_net_bus = ((Some E1000 | Some RTL8139 | None) as net_type);
-        rcaps_video = ((Some Standard_VGA | Some Cirrus | None) as video_type) 
} ->
+        rcaps_net_bus = ((Some E1000 | Some RTL8139 | None) as net_type) } ->
       if block_type = None || net_type = None then
         warning (f_"there are no virtio drivers available for this version of 
Windows (%d.%d %s %s).  virt-v2v looks for drivers in %s\n\nThe guest will be 
configured to use slower emulated devices.")
                 inspect.i_major_version inspect.i_minor_version inspect.i_arch
@@ -71,7 +69,7 @@ let rec install_drivers ((g, _) as reg) inspect rcaps =
         | Some model -> model
         | None -> RTL8139
       and video_type =
-        match video_type with
+        match rcaps.rcaps_video with
         | Some model -> model
         | None -> Standard_VGA in
       (IDE, net_type, video_type, false, false, false, false)
@@ -159,25 +157,10 @@ let rec install_drivers ((g, _) as reg) inspect rcaps =
       | Some net_type, _ ->
         net_type in
 
-    (* Can we install the QXL driver? *)
     let video : guestcaps_video_type =
-      let has_qxl =
-        g#exists (driverdir // "qxl.inf") ||
-        g#exists (driverdir // "qxldod.inf") in
-      match rcaps.rcaps_video, has_qxl with
-      | Some QXL, false ->
-        error (f_"there is no QXL driver for this version of Windows (%d.%d 
%s).  virt-v2v looks for this driver in %s")
-              inspect.i_major_version inspect.i_minor_version
-              inspect.i_arch virtio_win
-
-      | None, _ ->
-        Standard_VGA
-
-      | Some QXL, true ->
-        QXL
-
-      | Some (Cirrus | Standard_VGA as video_type), _ ->
-        video_type in
+      match rcaps.rcaps_video with
+      | None -> Standard_VGA
+      | Some video_type -> video_type in
 
     (* Did we install the miscellaneous drivers? *)
     let virtio_rng_supported = g#exists (driverdir // "viorng.inf") in
diff --git a/lib/types.ml b/lib/types.ml
index 0156d55954e9..347f3e6c2672 100644
--- a/lib/types.ml
+++ b/lib/types.ml
@@ -429,7 +429,7 @@ and requested_guestcaps = {
 }
 and guestcaps_block_type = Virtio_blk | Virtio_SCSI | IDE
 and guestcaps_net_type = Virtio_net | E1000 | RTL8139
-and guestcaps_video_type = Standard_VGA | QXL | Cirrus
+and guestcaps_video_type = Standard_VGA | Cirrus
 and guestcaps_machine = I440FX | Q35 | Virt
 
 let string_of_block_type = function
@@ -442,7 +442,6 @@ let string_of_net_type = function
   | RTL8139 -> "rtl8139"
 let string_of_video = function
   | Standard_VGA -> "stdvga"
-  | QXL -> "qxl"
   | Cirrus -> "cirrus"
 let string_of_machine = function
   | I440FX -> "i440fx"
diff --git a/lib/types.mli b/lib/types.mli
index 19790f375035..43ec0f971a3c 100644
--- a/lib/types.mli
+++ b/lib/types.mli
@@ -293,7 +293,7 @@ and requested_guestcaps = {
 
 and guestcaps_block_type = Virtio_blk | Virtio_SCSI | IDE
 and guestcaps_net_type = Virtio_net | E1000 | RTL8139
-and guestcaps_video_type = Standard_VGA | QXL | Cirrus
+and guestcaps_video_type = Standard_VGA | Cirrus
 and guestcaps_machine = I440FX | Q35 | Virt
 
 val string_of_guestcaps : guestcaps -> string
diff --git a/output/create_json.ml b/output/create_json.ml
index aae4d09c59bd..ef866143d6d5 100644
--- a/output/create_json.ml
+++ b/output/create_json.ml
@@ -205,7 +205,6 @@ let create_json_metadata source inspect
     let video =
       match guestcaps.gcaps_video with
       | Standard_VGA -> assert false
-      | QXL -> "qxl"
       | Cirrus -> "cirrus" in
     let machine =
       match guestcaps.gcaps_machine with
diff --git a/output/create_libvirt_xml.ml b/output/create_libvirt_xml.ml
index 623755de7212..9cf872861110 100644
--- a/output/create_libvirt_xml.ml
+++ b/output/create_libvirt_xml.ml
@@ -422,7 +422,6 @@ let create_libvirt_xml ?pool source inspect
     let video_model =
       match guestcaps.gcaps_video with
       | Standard_VGA -> e "model" [ "type", "vga"; "vram", "16384" ] []
-      | QXL ->    e "model" [ "type", "qxl"; "ram", "65536" ] []
       | Cirrus -> e "model" [ "type", "cirrus"; "vram", "9216" ] [] in
     append_attr ("heads", "1") video_model;
     e "video" [] [ video_model ] in
diff --git a/output/openstack_image_properties.ml 
b/output/openstack_image_properties.ml
index 592da3e40e44..cbf2e9533178 100644
--- a/output/openstack_image_properties.ml
+++ b/output/openstack_image_properties.ml
@@ -45,7 +45,6 @@ let create source inspect { target_buses; guestcaps; 
target_firmware } =
     "hw_video_model",
     (match guestcaps.gcaps_video with
      | Standard_VGA -> assert false
-     | QXL -> "qxl"
      | Cirrus -> "cirrus");
     "hw_machine_type",
     (match guestcaps.gcaps_machine with
diff --git a/output/output.ml b/output/output.ml
index b27d53059712..4218354f8330 100644
--- a/output/output.ml
+++ b/output/output.ml
@@ -1542,7 +1542,6 @@ and qemu_finalize dir source inspect target_meta
         (match guestcaps.gcaps_video with
          | Standard_VGA -> "std"
          | Cirrus -> "cirrus"
-         | QXL -> "qxl"
         )
   );
 
-- 
2.19.1.3.g30247aa5d201


_______________________________________________
Libguestfs mailing list
[email protected]
https://listman.redhat.com/mailman/listinfo/libguestfs

Reply via email to