* Wed Sep 30 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-18
- Fix qemu-kvm version detection so GSO is enabled for virtio_net (#526472)remotes/origin/f11 libvirt-0_6_2-18_fc11
parent
5d42cf83f8
commit
e8eadea9cd
|
@ -0,0 +1,170 @@
|
||||||
|
From fe3cb2edefceacc76d0dc9c98b8d3b677a495c32 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mark McLoughlin <markmc@redhat.com>
|
||||||
|
Date: Thu, 11 Jun 2009 14:15:49 +0000
|
||||||
|
Subject: [PATCH] Detect newer qemu-kvm versions
|
||||||
|
|
||||||
|
The KVM version string can be one of the following:
|
||||||
|
|
||||||
|
- qemu-kvm-x.y.z in stable releases
|
||||||
|
- kvm-XX for kvm versions up to kvm-85
|
||||||
|
- qemu-kvm-devel-XX for kvm version kvm-86 and later
|
||||||
|
|
||||||
|
There are only a few of places where we need to detect
|
||||||
|
differences between KVM versions based on 0.9.1:
|
||||||
|
|
||||||
|
1) VNET_HDR introduced in kvm-74
|
||||||
|
|
||||||
|
2) -incoming tcp introduced in kvm-79
|
||||||
|
|
||||||
|
3) -incoming exec introduced in kvm-80
|
||||||
|
|
||||||
|
4) -incoming stdio in all earlier kvm versions
|
||||||
|
|
||||||
|
With qemu-kvm-0.10.x, we can now assume that (1) is available
|
||||||
|
if it's a KVM release, (2) and (3) is always available and
|
||||||
|
(4) is never available.
|
||||||
|
|
||||||
|
So, from now on we should only need to check the qemu version
|
||||||
|
number and the "is_kvm" flag for detecting feature availability.
|
||||||
|
We only need the KVM version number for older releases.
|
||||||
|
|
||||||
|
(cherry picked from commit 04cbe687974b3b46c96fa20180bbb07ffeff69da)
|
||||||
|
|
||||||
|
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
|
||||||
|
Fedora-patch: libvirt-0.6.2-detect-newer-qemu-kvm-versions.patch
|
||||||
|
---
|
||||||
|
src/qemu_conf.c | 44 +++++++++++++++++++++++++++++++-------------
|
||||||
|
1 files changed, 31 insertions(+), 13 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
|
||||||
|
index e488d74..d76b2b6 100644
|
||||||
|
--- a/src/qemu_conf.c
|
||||||
|
+++ b/src/qemu_conf.c
|
||||||
|
@@ -416,6 +416,7 @@ virCapsPtr qemudCapsInit(void) {
|
||||||
|
|
||||||
|
static unsigned int qemudComputeCmdFlags(const char *help,
|
||||||
|
unsigned int version,
|
||||||
|
+ unsigned int is_kvm,
|
||||||
|
unsigned int kvm_version)
|
||||||
|
{
|
||||||
|
unsigned int flags = 0;
|
||||||
|
@@ -441,7 +442,8 @@ static unsigned int qemudComputeCmdFlags(const char *help,
|
||||||
|
flags |= QEMUD_CMD_FLAG_DRIVE_BOOT;
|
||||||
|
if (version >= 9000)
|
||||||
|
flags |= QEMUD_CMD_FLAG_VNC_COLON;
|
||||||
|
- if (kvm_version >= 74)
|
||||||
|
+
|
||||||
|
+ if (is_kvm && (version >= 10000 || kvm_version >= 74))
|
||||||
|
flags |= QEMUD_CMD_FLAG_VNET_HDR;
|
||||||
|
|
||||||
|
/*
|
||||||
|
@@ -454,15 +456,15 @@ static unsigned int qemudComputeCmdFlags(const char *help,
|
||||||
|
* was broken, because it blocked the monitor console
|
||||||
|
* while waiting for data, so pretend it doesn't exist
|
||||||
|
*/
|
||||||
|
- if (kvm_version >= 79) {
|
||||||
|
+ if (version >= 10000) {
|
||||||
|
+ flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_TCP;
|
||||||
|
+ flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_EXEC;
|
||||||
|
+ } else if (kvm_version >= 79) {
|
||||||
|
flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_TCP;
|
||||||
|
if (kvm_version >= 80)
|
||||||
|
flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_EXEC;
|
||||||
|
} else if (kvm_version > 0) {
|
||||||
|
flags |= QEMUD_CMD_FLAG_MIGRATE_KVM_STDIO;
|
||||||
|
- } else if (version >= 10000) {
|
||||||
|
- flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_TCP;
|
||||||
|
- flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_EXEC;
|
||||||
|
}
|
||||||
|
|
||||||
|
return flags;
|
||||||
|
@@ -472,10 +474,19 @@ static unsigned int qemudComputeCmdFlags(const char *help,
|
||||||
|
* version number. The first bit is easy, just parse
|
||||||
|
* 'QEMU PC emulator version x.y.z'.
|
||||||
|
*
|
||||||
|
- * With qemu-kvm, however, that is followed by a kvm-XX
|
||||||
|
- * string in parenthesis.
|
||||||
|
+ * With qemu-kvm, however, that is followed by a string
|
||||||
|
+ * in parenthesis as follows:
|
||||||
|
+ * - qemu-kvm-x.y.z in stable releases
|
||||||
|
+ * - kvm-XX for kvm versions up to kvm-85
|
||||||
|
+ * - qemu-kvm-devel-XX for kvm version kvm-86 and later
|
||||||
|
+ *
|
||||||
|
+ * For qemu-kvm versions before 0.10.z, we need to detect
|
||||||
|
+ * the KVM version number for some features. With 0.10.z
|
||||||
|
+ * and later, we just need the QEMU version number and
|
||||||
|
+ * whether it is KVM QEMU or mainline QEMU.
|
||||||
|
*/
|
||||||
|
#define QEMU_VERSION_STR "QEMU PC emulator version"
|
||||||
|
+#define QEMU_KVM_VER_PREFIX "(qemu-kvm-"
|
||||||
|
#define KVM_VER_PREFIX "(kvm-"
|
||||||
|
|
||||||
|
#define SKIP_BLANKS(p) do { while ((*(p) == ' ') || (*(p) == '\t')) (p)++; } while (0)
|
||||||
|
@@ -483,12 +494,13 @@ static unsigned int qemudComputeCmdFlags(const char *help,
|
||||||
|
static int qemudParseHelpStr(const char *help,
|
||||||
|
unsigned int *flags,
|
||||||
|
unsigned int *version,
|
||||||
|
+ unsigned int *is_kvm,
|
||||||
|
unsigned int *kvm_version)
|
||||||
|
{
|
||||||
|
unsigned major, minor, micro;
|
||||||
|
const char *p = help;
|
||||||
|
|
||||||
|
- *flags = *version = *kvm_version = 0;
|
||||||
|
+ *flags = *version = *is_kvm = *kvm_version = 0;
|
||||||
|
|
||||||
|
if (!STRPREFIX(p, QEMU_VERSION_STR))
|
||||||
|
goto fail;
|
||||||
|
@@ -515,9 +527,13 @@ static int qemudParseHelpStr(const char *help,
|
||||||
|
|
||||||
|
SKIP_BLANKS(p);
|
||||||
|
|
||||||
|
- if (STRPREFIX(p, KVM_VER_PREFIX)) {
|
||||||
|
+ if (STRPREFIX(p, QEMU_KVM_VER_PREFIX)) {
|
||||||
|
+ *is_kvm = 1;
|
||||||
|
+ p += strlen(QEMU_KVM_VER_PREFIX);
|
||||||
|
+ } else if (STRPREFIX(p, KVM_VER_PREFIX)) {
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
+ *is_kvm = 1;
|
||||||
|
p += strlen(KVM_VER_PREFIX);
|
||||||
|
|
||||||
|
ret = virParseNumber(&p);
|
||||||
|
@@ -529,12 +545,14 @@ static int qemudParseHelpStr(const char *help,
|
||||||
|
|
||||||
|
*version = (major * 1000 * 1000) + (minor * 1000) + micro;
|
||||||
|
|
||||||
|
- *flags = qemudComputeCmdFlags(help, *version, *kvm_version);
|
||||||
|
+ *flags = qemudComputeCmdFlags(help, *version, *is_kvm, *kvm_version);
|
||||||
|
|
||||||
|
qemudDebug("Version %u.%u.%u, cooked version %u, flags %u",
|
||||||
|
major, minor, micro, *version, *flags);
|
||||||
|
if (*kvm_version)
|
||||||
|
- qemudDebug("KVM version %u detected", *kvm_version);
|
||||||
|
+ qemudDebug("KVM version %d detected", *kvm_version);
|
||||||
|
+ else if (*is_kvm)
|
||||||
|
+ qemudDebug("qemu-kvm version %u.%u.%u detected", major, minor, micro);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
@@ -560,7 +578,7 @@ int qemudExtractVersionInfo(const char *qemu,
|
||||||
|
pid_t child;
|
||||||
|
int newstdout = -1;
|
||||||
|
int ret = -1, status;
|
||||||
|
- unsigned int version, kvm_version;
|
||||||
|
+ unsigned int version, is_kvm, kvm_version;
|
||||||
|
unsigned int flags = 0;
|
||||||
|
|
||||||
|
if (retflags)
|
||||||
|
@@ -581,7 +599,7 @@ int qemudExtractVersionInfo(const char *qemu,
|
||||||
|
goto cleanup2;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (qemudParseHelpStr(help, &flags, &version, &kvm_version) == -1)
|
||||||
|
+ if (qemudParseHelpStr(help, &flags, &version, &is_kvm, &kvm_version) == -1)
|
||||||
|
goto cleanup2;
|
||||||
|
|
||||||
|
if (retversion)
|
||||||
|
--
|
||||||
|
1.6.2.5
|
||||||
|
|
|
@ -0,0 +1,224 @@
|
||||||
|
From 266df161bfd87220bac68918613a2ce9323c8238 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mark McLoughlin <markmc@redhat.com>
|
||||||
|
Date: Thu, 11 Jun 2009 14:12:30 +0000
|
||||||
|
Subject: [PATCH] Re-factor qemu version parsing
|
||||||
|
|
||||||
|
This patch is purely re-factoring without any functional changes
|
||||||
|
to make way for the next patch.
|
||||||
|
|
||||||
|
The main thing achieved by the refactoring is that we now have
|
||||||
|
easier access to the parenthesised string that KVM folks seem
|
||||||
|
to delight in changing.
|
||||||
|
|
||||||
|
(cherry picked from commit 56ecebf22dd5a235503028e20bf936229037664b)
|
||||||
|
|
||||||
|
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
|
||||||
|
Fedora-patch: libvirt-0.6.2-refactor-qemu-version-parsing.patch
|
||||||
|
---
|
||||||
|
src/qemu_conf.c | 174 +++++++++++++++++++++++++++++++++++++++----------------
|
||||||
|
1 files changed, 123 insertions(+), 51 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
|
||||||
|
index 1194e36..e488d74 100644
|
||||||
|
--- a/src/qemu_conf.c
|
||||||
|
+++ b/src/qemu_conf.c
|
||||||
|
@@ -414,54 +414,12 @@ virCapsPtr qemudCapsInit(void) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
-
|
||||||
|
-int qemudExtractVersionInfo(const char *qemu,
|
||||||
|
- unsigned int *retversion,
|
||||||
|
- unsigned int *retflags) {
|
||||||
|
- const char *const qemuarg[] = { qemu, "-help", NULL };
|
||||||
|
- const char *const qemuenv[] = { "LC_ALL=C", NULL };
|
||||||
|
- pid_t child;
|
||||||
|
- int newstdout = -1;
|
||||||
|
- int ret = -1, status;
|
||||||
|
- unsigned int major, minor, micro;
|
||||||
|
- unsigned int version, kvm_version;
|
||||||
|
+static unsigned int qemudComputeCmdFlags(const char *help,
|
||||||
|
+ unsigned int version,
|
||||||
|
+ unsigned int kvm_version)
|
||||||
|
+{
|
||||||
|
unsigned int flags = 0;
|
||||||
|
|
||||||
|
- if (retflags)
|
||||||
|
- *retflags = 0;
|
||||||
|
- if (retversion)
|
||||||
|
- *retversion = 0;
|
||||||
|
-
|
||||||
|
- if (virExec(NULL, qemuarg, qemuenv, NULL,
|
||||||
|
- &child, -1, &newstdout, NULL, VIR_EXEC_NONE) < 0)
|
||||||
|
- return -1;
|
||||||
|
-
|
||||||
|
- char *help = NULL;
|
||||||
|
- enum { MAX_HELP_OUTPUT_SIZE = 1024*64 };
|
||||||
|
- int len = virFileReadLimFD(newstdout, MAX_HELP_OUTPUT_SIZE, &help);
|
||||||
|
- if (len < 0) {
|
||||||
|
- virReportSystemError(NULL, errno, "%s",
|
||||||
|
- _("Unable to read QEMU help output"));
|
||||||
|
- goto cleanup2;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- if (sscanf(help, "QEMU PC emulator version %u.%u.%u (kvm-%u)",
|
||||||
|
- &major, &minor, µ, &kvm_version) != 4)
|
||||||
|
- kvm_version = 0;
|
||||||
|
-
|
||||||
|
- if (!kvm_version &&
|
||||||
|
- sscanf(help, "QEMU PC emulator version %u.%u.%u",
|
||||||
|
- &major, &minor, µ) != 3) {
|
||||||
|
- char *eol = strchr(help, '\n');
|
||||||
|
- if (eol) *eol = '\0';
|
||||||
|
- qemudReportError(NULL, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
|
||||||
|
- _("cannot parse QEMU version number in '%s'"),
|
||||||
|
- help);
|
||||||
|
- goto cleanup2;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- version = (major * 1000 * 1000) + (minor * 1000) + micro;
|
||||||
|
-
|
||||||
|
if (strstr(help, "-no-kqemu"))
|
||||||
|
flags |= QEMUD_CMD_FLAG_KQEMU;
|
||||||
|
if (strstr(help, "-no-kvm"))
|
||||||
|
@@ -507,6 +465,125 @@ int qemudExtractVersionInfo(const char *qemu,
|
||||||
|
flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_EXEC;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ return flags;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+/* We parse the output of 'qemu -help' to get the QEMU
|
||||||
|
+ * version number. The first bit is easy, just parse
|
||||||
|
+ * 'QEMU PC emulator version x.y.z'.
|
||||||
|
+ *
|
||||||
|
+ * With qemu-kvm, however, that is followed by a kvm-XX
|
||||||
|
+ * string in parenthesis.
|
||||||
|
+ */
|
||||||
|
+#define QEMU_VERSION_STR "QEMU PC emulator version"
|
||||||
|
+#define KVM_VER_PREFIX "(kvm-"
|
||||||
|
+
|
||||||
|
+#define SKIP_BLANKS(p) do { while ((*(p) == ' ') || (*(p) == '\t')) (p)++; } while (0)
|
||||||
|
+
|
||||||
|
+static int qemudParseHelpStr(const char *help,
|
||||||
|
+ unsigned int *flags,
|
||||||
|
+ unsigned int *version,
|
||||||
|
+ unsigned int *kvm_version)
|
||||||
|
+{
|
||||||
|
+ unsigned major, minor, micro;
|
||||||
|
+ const char *p = help;
|
||||||
|
+
|
||||||
|
+ *flags = *version = *kvm_version = 0;
|
||||||
|
+
|
||||||
|
+ if (!STRPREFIX(p, QEMU_VERSION_STR))
|
||||||
|
+ goto fail;
|
||||||
|
+
|
||||||
|
+ p += strlen(QEMU_VERSION_STR);
|
||||||
|
+
|
||||||
|
+ SKIP_BLANKS(p);
|
||||||
|
+
|
||||||
|
+ major = virParseNumber(&p);
|
||||||
|
+ if (major == -1 || *p != '.')
|
||||||
|
+ goto fail;
|
||||||
|
+
|
||||||
|
+ ++p;
|
||||||
|
+
|
||||||
|
+ minor = virParseNumber(&p);
|
||||||
|
+ if (major == -1 || *p != '.')
|
||||||
|
+ goto fail;
|
||||||
|
+
|
||||||
|
+ ++p;
|
||||||
|
+
|
||||||
|
+ micro = virParseNumber(&p);
|
||||||
|
+ if (major == -1)
|
||||||
|
+ goto fail;
|
||||||
|
+
|
||||||
|
+ SKIP_BLANKS(p);
|
||||||
|
+
|
||||||
|
+ if (STRPREFIX(p, KVM_VER_PREFIX)) {
|
||||||
|
+ int ret;
|
||||||
|
+
|
||||||
|
+ p += strlen(KVM_VER_PREFIX);
|
||||||
|
+
|
||||||
|
+ ret = virParseNumber(&p);
|
||||||
|
+ if (ret == -1)
|
||||||
|
+ goto fail;
|
||||||
|
+
|
||||||
|
+ *kvm_version = ret;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ *version = (major * 1000 * 1000) + (minor * 1000) + micro;
|
||||||
|
+
|
||||||
|
+ *flags = qemudComputeCmdFlags(help, *version, *kvm_version);
|
||||||
|
+
|
||||||
|
+ qemudDebug("Version %u.%u.%u, cooked version %u, flags %u",
|
||||||
|
+ major, minor, micro, *version, *flags);
|
||||||
|
+ if (*kvm_version)
|
||||||
|
+ qemudDebug("KVM version %u detected", *kvm_version);
|
||||||
|
+
|
||||||
|
+ return 0;
|
||||||
|
+
|
||||||
|
+fail:
|
||||||
|
+ p = strchr(help, '\n');
|
||||||
|
+ if (p)
|
||||||
|
+ p = strndup(help, p - help);
|
||||||
|
+
|
||||||
|
+ qemudReportError(NULL, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
|
||||||
|
+ _("cannot parse QEMU version number in '%s'"),
|
||||||
|
+ p ? p : help);
|
||||||
|
+
|
||||||
|
+ VIR_FREE(p);
|
||||||
|
+
|
||||||
|
+ return -1;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int qemudExtractVersionInfo(const char *qemu,
|
||||||
|
+ unsigned int *retversion,
|
||||||
|
+ unsigned int *retflags) {
|
||||||
|
+ const char *const qemuarg[] = { qemu, "-help", NULL };
|
||||||
|
+ const char *const qemuenv[] = { "LC_ALL=C", NULL };
|
||||||
|
+ pid_t child;
|
||||||
|
+ int newstdout = -1;
|
||||||
|
+ int ret = -1, status;
|
||||||
|
+ unsigned int version, kvm_version;
|
||||||
|
+ unsigned int flags = 0;
|
||||||
|
+
|
||||||
|
+ if (retflags)
|
||||||
|
+ *retflags = 0;
|
||||||
|
+ if (retversion)
|
||||||
|
+ *retversion = 0;
|
||||||
|
+
|
||||||
|
+ if (virExec(NULL, qemuarg, qemuenv, NULL,
|
||||||
|
+ &child, -1, &newstdout, NULL, VIR_EXEC_NONE) < 0)
|
||||||
|
+ return -1;
|
||||||
|
+
|
||||||
|
+ char *help = NULL;
|
||||||
|
+ enum { MAX_HELP_OUTPUT_SIZE = 1024*64 };
|
||||||
|
+ int len = virFileReadLimFD(newstdout, MAX_HELP_OUTPUT_SIZE, &help);
|
||||||
|
+ if (len < 0) {
|
||||||
|
+ virReportSystemError(NULL, errno, "%s",
|
||||||
|
+ _("Unable to read QEMU help output"));
|
||||||
|
+ goto cleanup2;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (qemudParseHelpStr(help, &flags, &version, &kvm_version) == -1)
|
||||||
|
+ goto cleanup2;
|
||||||
|
+
|
||||||
|
if (retversion)
|
||||||
|
*retversion = version;
|
||||||
|
if (retflags)
|
||||||
|
@@ -514,11 +591,6 @@ int qemudExtractVersionInfo(const char *qemu,
|
||||||
|
|
||||||
|
ret = 0;
|
||||||
|
|
||||||
|
- qemudDebug("Version %d %d %d Cooked version: %d, with flags ? %d",
|
||||||
|
- major, minor, micro, version, flags);
|
||||||
|
- if (kvm_version)
|
||||||
|
- qemudDebug("KVM version %d detected", kvm_version);
|
||||||
|
-
|
||||||
|
cleanup2:
|
||||||
|
VIR_FREE(help);
|
||||||
|
if (close(newstdout) < 0)
|
||||||
|
--
|
||||||
|
1.6.2.5
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
From 0d72b6fb7d4aa5e55294eb3222e7156d3d75a9e7 Mon Sep 17 00:00:00 2001
|
From 6096cb19d6b05707ca32f52b905c53818ecfc84b Mon Sep 17 00:00:00 2001
|
||||||
From: Daniel P. Berrange <berrange@redhat.com>
|
From: Daniel P. Berrange <berrange@redhat.com>
|
||||||
Date: Mon, 17 Aug 2009 08:52:30 +0100
|
Date: Mon, 17 Aug 2009 08:52:30 +0100
|
||||||
Subject: [PATCH] Disable sound cards when running sVirt
|
Subject: [PATCH] Disable sound cards when running sVirt
|
||||||
|
@ -12,10 +12,10 @@ Fedora-patch: libvirt-0.6.2-svirt-sound.patch
|
||||||
1 files changed, 16 insertions(+), 1 deletions(-)
|
1 files changed, 16 insertions(+), 1 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
|
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
|
||||||
index 1194e36..f42aeaa 100644
|
index d76b2b6..22c5363 100644
|
||||||
--- a/src/qemu_conf.c
|
--- a/src/qemu_conf.c
|
||||||
+++ b/src/qemu_conf.c
|
+++ b/src/qemu_conf.c
|
||||||
@@ -795,6 +795,20 @@ int qemudBuildCommandLine(virConnectPtr conn,
|
@@ -885,6 +885,20 @@ int qemudBuildCommandLine(virConnectPtr conn,
|
||||||
char domid[50];
|
char domid[50];
|
||||||
char *pidfile;
|
char *pidfile;
|
||||||
const char *cpu = NULL;
|
const char *cpu = NULL;
|
||||||
|
@ -36,7 +36,7 @@ index 1194e36..f42aeaa 100644
|
||||||
|
|
||||||
uname_normalize(&ut);
|
uname_normalize(&ut);
|
||||||
|
|
||||||
@@ -1441,7 +1455,8 @@ int qemudBuildCommandLine(virConnectPtr conn,
|
@@ -1531,7 +1545,8 @@ int qemudBuildCommandLine(virConnectPtr conn,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Add sound hardware */
|
/* Add sound hardware */
|
||||||
|
|
10
libvirt.spec
10
libvirt.spec
|
@ -66,7 +66,7 @@
|
||||||
Summary: Library providing a simple API virtualization
|
Summary: Library providing a simple API virtualization
|
||||||
Name: libvirt
|
Name: libvirt
|
||||||
Version: 0.6.2
|
Version: 0.6.2
|
||||||
Release: 17%{?dist}%{?extra_release}
|
Release: 18%{?dist}%{?extra_release}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
Source: http://libvirt.org/sources/libvirt-%{version}.tar.gz
|
Source: http://libvirt.org/sources/libvirt-%{version}.tar.gz
|
||||||
|
@ -134,6 +134,9 @@ Patch29: libvirt-allow-pci-hostdev-reset-to-reset-other-devices.patch
|
||||||
Patch30: libvirt-fix-migration-completion-with-newer-qemu.patch
|
Patch30: libvirt-fix-migration-completion-with-newer-qemu.patch
|
||||||
# Fix dumpxml segfault with newer versions of Xen (#518091)
|
# Fix dumpxml segfault with newer versions of Xen (#518091)
|
||||||
Patch31: libvirt-fix-xen-driver-segfault-with-newer-xen.patch
|
Patch31: libvirt-fix-xen-driver-segfault-with-newer-xen.patch
|
||||||
|
# Fix qemu-kvm version detection so GSO is enabled
|
||||||
|
Patch32: libvirt-0.6.2-refactor-qemu-version-parsing.patch
|
||||||
|
Patch33: libvirt-0.6.2-detect-newer-qemu-kvm-versions.patch
|
||||||
|
|
||||||
# Not for upstream. Temporary hack till PulseAudio autostart
|
# Not for upstream. Temporary hack till PulseAudio autostart
|
||||||
# problems are sorted out when SELinux enforcing
|
# problems are sorted out when SELinux enforcing
|
||||||
|
@ -317,6 +320,8 @@ of recent versions of Linux (and other OSes).
|
||||||
%patch29 -p1
|
%patch29 -p1
|
||||||
%patch30 -p1
|
%patch30 -p1
|
||||||
%patch31 -p1
|
%patch31 -p1
|
||||||
|
%patch32 -p1
|
||||||
|
%patch33 -p1
|
||||||
|
|
||||||
%patch200 -p1
|
%patch200 -p1
|
||||||
|
|
||||||
|
@ -640,6 +645,9 @@ fi
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Sep 30 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-18
|
||||||
|
- Fix qemu-kvm version detection so GSO is enabled for virtio_net (#526472)
|
||||||
|
|
||||||
* Wed Aug 19 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-17
|
* Wed Aug 19 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-17
|
||||||
- Fix migration completion with newer versions of qemu (#516187)
|
- Fix migration completion with newer versions of qemu (#516187)
|
||||||
- Fix dumpxml segfault with newer versions of Xen (#518091)
|
- Fix dumpxml segfault with newer versions of Xen (#518091)
|
||||||
|
|
Loading…
Reference in New Issue