]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
conf: use enum variable for video type
authorJonathon Jongsma <jjongsma@redhat.com>
Thu, 10 Feb 2022 16:51:00 +0000 (10:51 -0600)
committerJonathon Jongsma <jjongsma@redhat.com>
Wed, 8 Mar 2023 19:05:05 +0000 (13:05 -0600)
Rather than storing the video type as an integer, use the proper enum
type within the struct.

Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/conf/domain_conf.c
src/conf/domain_conf.h
src/libxl/libxl_conf.c
src/libxl/libxl_domain.c
src/qemu/qemu_monitor_json.c
src/qemu/qemu_process.c

index 5dc59870b0a3564add37ba2291684a0b6e9f3545..8dbab41db85138822f5d0c81efd7d8b07d7919d9 100644 (file)
@@ -12868,7 +12868,6 @@ virDomainVideoModelDefParseXML(virDomainVideoDef *def,
     xmlNodePtr accel_node;
     xmlNodePtr res_node;
     VIR_XPATH_NODE_AUTORESTORE(ctxt)
-    virDomainVideoType type;
     virTristateBool primary;
 
     ctxt->node = node;
@@ -12886,10 +12885,9 @@ virDomainVideoModelDefParseXML(virDomainVideoDef *def,
 
     if (virXMLPropEnumDefault(node, "type",
                               virDomainVideoTypeFromString,
-                              VIR_XML_PROP_NONE, &type,
+                              VIR_XML_PROP_NONE, &def->type,
                               VIR_DOMAIN_VIDEO_TYPE_DEFAULT) < 0)
         return -1;
-    def->type = type;
 
     if (virXMLPropUInt(node, "ram", 10, VIR_XML_PROP_NONE, &def->ram) < 0)
         return -1;
index bacadb5ae09e7ee6cc86e658da1c8868e6c95d13..f5624a0162a58ba320b28d3c515826fdfe296376 100644 (file)
@@ -1815,7 +1815,7 @@ struct _virDomainVideoDriverDef {
 struct _virDomainVideoDef {
     virObject *privateData;
 
-    int type;   /* enum virDomainVideoType */
+    virDomainVideoType type;
     unsigned int ram;  /* kibibytes (multiples of 1024) */
     unsigned int vram; /* kibibytes (multiples of 1024) */
     unsigned int vram64; /* kibibytes (multiples of 1024) */
index 485015ef63679ff23b2d03bd3c24df1d681fe9be..15369b27912f6b5a5cfee80da6f0b56fe831cd1f 100644 (file)
@@ -2378,6 +2378,16 @@ libxlMakeVideo(virDomainDef *def, libxl_domain_config *d_config)
             }
             break;
 
+        case VIR_DOMAIN_VIDEO_TYPE_DEFAULT:
+        case VIR_DOMAIN_VIDEO_TYPE_VMVGA:
+        case VIR_DOMAIN_VIDEO_TYPE_VBOX:
+        case VIR_DOMAIN_VIDEO_TYPE_PARALLELS:
+        case VIR_DOMAIN_VIDEO_TYPE_VIRTIO:
+        case VIR_DOMAIN_VIDEO_TYPE_GOP:
+        case VIR_DOMAIN_VIDEO_TYPE_NONE:
+        case VIR_DOMAIN_VIDEO_TYPE_BOCHS:
+        case VIR_DOMAIN_VIDEO_TYPE_RAMFB:
+        case VIR_DOMAIN_VIDEO_TYPE_LAST:
         default:
             virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
                            _("video type %s is not supported by libxl"),
index 66a82ca317481498201ae9a3127458e67d992ee9..f28a6207a3d4c961b4a3df2d3db88b7208e501e2 100644 (file)
@@ -201,6 +201,17 @@ libxlDomainDeviceDefPostParse(virDomainDeviceDef *dev,
                     if (dev->data.video->vram == 0)
                         dev->data.video->vram = 128 * 1024;
                     break;
+                case VIR_DOMAIN_VIDEO_TYPE_DEFAULT:
+                case VIR_DOMAIN_VIDEO_TYPE_VMVGA:
+                case VIR_DOMAIN_VIDEO_TYPE_VBOX:
+                case VIR_DOMAIN_VIDEO_TYPE_PARALLELS:
+                case VIR_DOMAIN_VIDEO_TYPE_VIRTIO:
+                case VIR_DOMAIN_VIDEO_TYPE_GOP:
+                case VIR_DOMAIN_VIDEO_TYPE_NONE:
+                case VIR_DOMAIN_VIDEO_TYPE_BOCHS:
+                case VIR_DOMAIN_VIDEO_TYPE_RAMFB:
+                case VIR_DOMAIN_VIDEO_TYPE_LAST:
+                    break;
             }
         }
     }
index ee2ea68acb1d1a155800dc332a4de45af5238989..f4416c929fc7356f57099a9639dab6924b543b28 100644 (file)
@@ -1802,9 +1802,16 @@ qemuMonitorJSONUpdateVideoMemorySize(qemuMonitor *mon,
         }
         video->vram = prop.val.ul * 1024;
         break;
+    case VIR_DOMAIN_VIDEO_TYPE_DEFAULT:
     case VIR_DOMAIN_VIDEO_TYPE_CIRRUS:
     case VIR_DOMAIN_VIDEO_TYPE_XEN:
     case VIR_DOMAIN_VIDEO_TYPE_VBOX:
+    case VIR_DOMAIN_VIDEO_TYPE_PARALLELS:
+    case VIR_DOMAIN_VIDEO_TYPE_VIRTIO:
+    case VIR_DOMAIN_VIDEO_TYPE_GOP:
+    case VIR_DOMAIN_VIDEO_TYPE_NONE:
+    case VIR_DOMAIN_VIDEO_TYPE_BOCHS:
+    case VIR_DOMAIN_VIDEO_TYPE_RAMFB:
     case VIR_DOMAIN_VIDEO_TYPE_LAST:
         break;
     }
@@ -1842,11 +1849,18 @@ qemuMonitorJSONUpdateVideoVram64Size(qemuMonitor *mon,
             video->vram64 = prop.val.ul * 1024;
         }
         break;
+    case VIR_DOMAIN_VIDEO_TYPE_DEFAULT:
     case VIR_DOMAIN_VIDEO_TYPE_VGA:
-    case VIR_DOMAIN_VIDEO_TYPE_VMVGA:
     case VIR_DOMAIN_VIDEO_TYPE_CIRRUS:
+    case VIR_DOMAIN_VIDEO_TYPE_VMVGA:
     case VIR_DOMAIN_VIDEO_TYPE_XEN:
     case VIR_DOMAIN_VIDEO_TYPE_VBOX:
+    case VIR_DOMAIN_VIDEO_TYPE_PARALLELS:
+    case VIR_DOMAIN_VIDEO_TYPE_VIRTIO:
+    case VIR_DOMAIN_VIDEO_TYPE_GOP:
+    case VIR_DOMAIN_VIDEO_TYPE_NONE:
+    case VIR_DOMAIN_VIDEO_TYPE_BOCHS:
+    case VIR_DOMAIN_VIDEO_TYPE_RAMFB:
     case VIR_DOMAIN_VIDEO_TYPE_LAST:
         break;
     }
index 9a612ca443f9bbe417feea3fe24d2613f26e97fd..deebd03717855adb6ef049b66b530bf0307cd577 100644 (file)
@@ -3052,9 +3052,16 @@ qemuProcessUpdateVideoRamSize(virQEMUDriver *driver,
                     goto error;
             }
             break;
+        case VIR_DOMAIN_VIDEO_TYPE_DEFAULT:
         case VIR_DOMAIN_VIDEO_TYPE_CIRRUS:
         case VIR_DOMAIN_VIDEO_TYPE_XEN:
         case VIR_DOMAIN_VIDEO_TYPE_VBOX:
+        case VIR_DOMAIN_VIDEO_TYPE_PARALLELS:
+        case VIR_DOMAIN_VIDEO_TYPE_VIRTIO:
+        case VIR_DOMAIN_VIDEO_TYPE_GOP:
+        case VIR_DOMAIN_VIDEO_TYPE_NONE:
+        case VIR_DOMAIN_VIDEO_TYPE_BOCHS:
+        case VIR_DOMAIN_VIDEO_TYPE_RAMFB:
         case VIR_DOMAIN_VIDEO_TYPE_LAST:
             break;
         }