summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/libxl/libxl_conf.c11
-rw-r--r--src/libxl/libxl_domain.c4
2 files changed, 15 insertions, 0 deletions
diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c
index b65d2617b8..9b258acbbc 100644
--- a/src/libxl/libxl_conf.c
+++ b/src/libxl/libxl_conf.c
@@ -1741,6 +1741,17 @@ libxlMakeVideo(virDomainDefPtr def, libxl_domain_config *d_config)
}
break;
+#ifdef LIBXL_HAVE_QXL
+ case VIR_DOMAIN_VIDEO_TYPE_QXL:
+ b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_QXL;
+ if (def->videos[0]->vram < 128 * 1024) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("videoram must be at least 128MB for QXL"));
+ return -1;
+ }
+ break;
+#endif
+
default:
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("video type %s is not supported by libxl"),
diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c
index 68dd28e9c8..c7f0ed9d29 100644
--- a/src/libxl/libxl_domain.c
+++ b/src/libxl/libxl_domain.c
@@ -324,6 +324,10 @@ libxlDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
dev->data.video->vram = 4 * 1024;
}
break;
+ case VIR_DOMAIN_VIDEO_TYPE_QXL:
+ if (dev->data.video->vram == 0)
+ dev->data.video->vram = 128 * 1024;
+ break;
}
}