summaryrefslogtreecommitdiffstats
path: root/src/launch.c
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2012-06-12 14:52:43 +0100
committerRichard W.M. Jones <rjones@redhat.com>2012-06-12 19:19:03 +0100
commite0b5ecc801da55998405df77f5e21a79b2ba7caf (patch)
tree168e4f6326bc916e5b04808e04f0fa46406cf18b /src/launch.c
parent295d6af48d1d8c5238d1536b0c6a2ece42b0b445 (diff)
downloadlibguestfs-e0b5ecc801da55998405df77f5e21a79b2ba7caf.tar.gz
libguestfs-e0b5ecc801da55998405df77f5e21a79b2ba7caf.tar.xz
libguestfs-e0b5ecc801da55998405df77f5e21a79b2ba7caf.zip
Record output of qemu -device '?'.
This allows us to find out what qemu devices are supported at runtime.
Diffstat (limited to 'src/launch.c')
-rw-r--r--src/launch.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/launch.c b/src/launch.c
index e175dd96..1eae0278 100644
--- a/src/launch.c
+++ b/src/launch.c
@@ -1319,6 +1319,8 @@ test_qemu (guestfs_h *g)
g->qemu_help = NULL;
free (g->qemu_version);
g->qemu_version = NULL;
+ free (g->qemu_devices);
+ g->qemu_devices = NULL;
snprintf (cmd, sizeof cmd, "LC_ALL=C '%s' -nographic -help", g->qemu);
@@ -1338,6 +1340,13 @@ test_qemu (guestfs_h *g)
if (test_qemu_cmd (g, cmd, &g->qemu_version) == -1)
goto qemu_error;
+ snprintf (cmd, sizeof cmd,
+ "LC_ALL=C '%s' -nographic -machine accel=kvm:tcg -device '?' 2>&1",
+ g->qemu);
+
+ if (test_qemu_cmd (g, cmd, &g->qemu_devices) == -1)
+ goto qemu_error;
+
return 0;
}