Compare commits
14
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
748df35c5f | ||
|
|
a6e23d00fa | ||
|
|
c6d11b43c9 | ||
|
|
83091ff0dd | ||
|
|
4465a63872 | ||
|
|
3f397d9786 | ||
|
|
750aec5507 | ||
|
|
d7c1d3bbc0 | ||
|
|
fa0f21c263 | ||
|
|
afdaf5d354 | ||
|
|
26bba5aea9 | ||
|
|
1a4185bdcc | ||
|
|
6a73119e65 | ||
|
|
1e2f9fce0a |
@@ -6,3 +6,4 @@ libvirt-*.tar.gz
|
||||
libvirt-0.6.0.tar.gz
|
||||
libvirt-0.6.1.tar.gz
|
||||
libvirt-0.6.2.tar.gz
|
||||
libvirt-0.6.3.tar.gz
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
From 934b71abf1b908f720811a44ad5411cfc1a4ca37 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel P. Berrange <berrange@redhat.com>
|
||||
Date: Thu, 28 May 2009 13:15:57 +0000
|
||||
Subject: [PATCH 1/1] Avoid broken networking with new QEMU/KVM >= 86
|
||||
|
||||
---
|
||||
src/qemu_conf.c | 4 ++--
|
||||
1 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
|
||||
index 93dc0b7..a04d216 100644
|
||||
--- a/src/qemu_conf.c
|
||||
+++ b/src/qemu_conf.c
|
||||
@@ -658,8 +658,8 @@ qemudNetworkIfaceConnect(virConnectPtr conn,
|
||||
}
|
||||
|
||||
snprintf(tapfdstr, sizeof(tapfdstr),
|
||||
- "tap,fd=%d,script=,vlan=%d,ifname=%s",
|
||||
- tapfd, vlan, net->ifname);
|
||||
+ "tap,fd=%d,vlan=%d",
|
||||
+ tapfd, vlan);
|
||||
|
||||
if (!(retval = strdup(tapfdstr)))
|
||||
goto no_memory;
|
||||
--
|
||||
1.6.0.6
|
||||
|
||||
@@ -1,204 +0,0 @@
|
||||
From fbd16cecc72494e8a9450f38197221f2f50c9d0e Mon Sep 17 00:00:00 2001
|
||||
From: =?utf-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
|
||||
Date: Thu, 16 Apr 2009 15:56:27 +0000
|
||||
Subject: [PATCH 1/1] Don't log monitor output to domain log file.
|
||||
|
||||
It's logged via the logging system already. Prefix monitor debug output with vm
|
||||
name.
|
||||
---
|
||||
src/qemu_driver.c | 60 +++++++++++++++++++++-------------------------------
|
||||
1 files changed, 24 insertions(+), 36 deletions(-)
|
||||
|
||||
diff --git a/src/qemu_driver.c b/src/qemu_driver.c
|
||||
index 79ee072..f5b5fa5 100644
|
||||
--- a/src/qemu_driver.c
|
||||
+++ b/src/qemu_driver.c
|
||||
@@ -1710,27 +1710,11 @@ qemudMonitorCommandExtra(const virDomainObjPtr vm,
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
-
|
||||
- /* Log, but ignore failures to write logfile for VM */
|
||||
- if (safewrite(vm->logfile, buf, strlen(buf)) < 0) {
|
||||
- char ebuf[1024];
|
||||
- VIR_WARN(_("Unable to log VM console data: %s\n"),
|
||||
- virStrerror(errno, ebuf, sizeof ebuf));
|
||||
- }
|
||||
-
|
||||
*reply = buf;
|
||||
return 0;
|
||||
|
||||
error:
|
||||
- if (buf) {
|
||||
- /* Log, but ignore failures to write logfile for VM */
|
||||
- if (safewrite(vm->logfile, buf, strlen(buf)) < 0) {
|
||||
- char ebuf[1024];
|
||||
- VIR_WARN(_("Unable to log VM console data: %s\n"),
|
||||
- virStrerror(errno, ebuf, sizeof ebuf));
|
||||
- }
|
||||
- VIR_FREE(buf);
|
||||
- }
|
||||
+ VIR_FREE(buf);
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -2463,7 +2447,7 @@ static int qemudDomainGetMemoryBalloon(virConnectPtr conn,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
- DEBUG ("balloon reply: '%s'", reply);
|
||||
+ DEBUG ("%s: balloon reply: '%s'", vm->def->name, reply);
|
||||
if ((offset = strstr(reply, BALLOON_PREFIX)) != NULL) {
|
||||
unsigned int memMB;
|
||||
char *end;
|
||||
@@ -2517,7 +2501,7 @@ static int qemudDomainSetMemoryBalloon(virConnectPtr conn,
|
||||
|
||||
/* If the command failed qemu prints: 'unknown command'
|
||||
* No message is printed on success it seems */
|
||||
- DEBUG ("balloon reply: %s", reply);
|
||||
+ DEBUG ("%s: balloon reply: %s",vm->def->name, reply);
|
||||
if (strstr(reply, "\nunknown command:")) {
|
||||
/* Don't set error - it is expected memory balloon fails on many qemu */
|
||||
ret = 0;
|
||||
@@ -2812,7 +2796,7 @@ static int qemudDomainSave(virDomainPtr dom,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
- DEBUG ("migrate reply: %s", info);
|
||||
+ DEBUG ("%s: migrate reply: %s", vm->def->name, info);
|
||||
|
||||
/* If the command isn't supported then qemu prints:
|
||||
* unknown command: migrate" */
|
||||
@@ -3658,7 +3642,7 @@ static int qemudDomainChangeEjectableMedia(virConnectPtr conn,
|
||||
/* If the command failed qemu prints:
|
||||
* device not found, device is locked ...
|
||||
* No message is printed on success it seems */
|
||||
- DEBUG ("ejectable media change reply: %s", reply);
|
||||
+ DEBUG ("%s: ejectable media change reply: %s", vm->def->name, reply);
|
||||
if (strstr(reply, "\ndevice ")) {
|
||||
qemudReportError (conn, dom, NULL, VIR_ERR_OPERATION_FAILED,
|
||||
_("changing cdrom media failed: %s"), reply);
|
||||
@@ -3719,7 +3703,7 @@ static int qemudDomainAttachPciDiskDevice(virConnectPtr conn,
|
||||
return -1;
|
||||
}
|
||||
|
||||
- DEBUG ("pci_add reply: %s", reply);
|
||||
+ DEBUG ("%s: pci_add reply: %s", vm->def->name, reply);
|
||||
/* If the command succeeds qemu prints:
|
||||
* OK bus 0... */
|
||||
#define PCI_ATTACH_OK_MSG "OK bus 0, slot "
|
||||
@@ -3787,7 +3771,7 @@ static int qemudDomainAttachUsbMassstorageDevice(virConnectPtr conn,
|
||||
return -1;
|
||||
}
|
||||
|
||||
- DEBUG ("attach_usb reply: %s", reply);
|
||||
+ DEBUG ("%s: attach_usb reply: %s",vm->def->name, reply);
|
||||
/* If the command failed qemu prints:
|
||||
* Could not add ... */
|
||||
if (strstr(reply, "Could not add ")) {
|
||||
@@ -3841,7 +3825,7 @@ static int qemudDomainAttachHostDevice(virConnectPtr conn,
|
||||
return -1;
|
||||
}
|
||||
|
||||
- DEBUG ("attach_usb reply: %s", reply);
|
||||
+ DEBUG ("%s: attach_usb reply: %s", vm->def->name, reply);
|
||||
/* If the command failed qemu prints:
|
||||
* Could not add ... */
|
||||
if (strstr(reply, "Could not add ")) {
|
||||
@@ -3980,7 +3964,7 @@ static int qemudDomainDetachPciDiskDevice(virConnectPtr conn,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
- DEBUG ("pci_del reply: %s", reply);
|
||||
+ DEBUG ("%s: pci_del reply: %s",vm->def->name, reply);
|
||||
/* If the command fails due to a wrong slot qemu prints: invalid slot,
|
||||
* nothing is printed on success */
|
||||
if (strstr(reply, "invalid slot")) {
|
||||
@@ -4210,7 +4194,7 @@ qemudDomainBlockStats (virDomainPtr dom,
|
||||
"%s", _("'info blockstats' command failed"));
|
||||
goto cleanup;
|
||||
}
|
||||
- DEBUG ("info blockstats reply: %s", info);
|
||||
+ DEBUG ("%s: info blockstats reply: %s", vm->def->name, info);
|
||||
|
||||
/* If the command isn't supported then qemu prints the supported
|
||||
* info commands, so the output starts "info ". Since this is
|
||||
@@ -4251,21 +4235,25 @@ qemudDomainBlockStats (virDomainPtr dom,
|
||||
if (STRPREFIX (p, "rd_bytes=")) {
|
||||
p += 9;
|
||||
if (virStrToLong_ll (p, &dummy, 10, &stats->rd_bytes) == -1)
|
||||
- DEBUG ("error reading rd_bytes: %s", p);
|
||||
+ DEBUG ("%s: error reading rd_bytes: %s",
|
||||
+ vm->def->name, p);
|
||||
} else if (STRPREFIX (p, "wr_bytes=")) {
|
||||
p += 9;
|
||||
if (virStrToLong_ll (p, &dummy, 10, &stats->wr_bytes) == -1)
|
||||
- DEBUG ("error reading wr_bytes: %s", p);
|
||||
+ DEBUG ("%s: error reading wr_bytes: %s",
|
||||
+ vm->def->name, p);
|
||||
} else if (STRPREFIX (p, "rd_operations=")) {
|
||||
p += 14;
|
||||
if (virStrToLong_ll (p, &dummy, 10, &stats->rd_req) == -1)
|
||||
- DEBUG ("error reading rd_req: %s", p);
|
||||
+ DEBUG ("%s: error reading rd_req: %s",
|
||||
+ vm->def->name, p);
|
||||
} else if (STRPREFIX (p, "wr_operations=")) {
|
||||
p += 14;
|
||||
if (virStrToLong_ll (p, &dummy, 10, &stats->wr_req) == -1)
|
||||
- DEBUG ("error reading wr_req: %s", p);
|
||||
+ DEBUG ("%s: error reading wr_req: %s",
|
||||
+ vm->def->name, p);
|
||||
} else
|
||||
- DEBUG ("unknown block stat near %s", p);
|
||||
+ DEBUG ("%s: unknown block stat near %s", vm->def->name, p);
|
||||
|
||||
/* Skip to next label. */
|
||||
p = strchr (p, ' ');
|
||||
@@ -4477,7 +4465,7 @@ qemudDomainMemoryPeek (virDomainPtr dom,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
- DEBUG ("memsave reply: %s", info);
|
||||
+ DEBUG ("%s: memsave reply: %s", vm->def->name, info);
|
||||
|
||||
/* Read the memory file into buffer. */
|
||||
if (saferead (fd, buffer, size) == (ssize_t) -1) {
|
||||
@@ -4794,7 +4782,7 @@ qemudDomainMigratePerform (virDomainPtr dom,
|
||||
"%s", _("off-line migration specified, but suspend operation failed"));
|
||||
goto cleanup;
|
||||
}
|
||||
- DEBUG ("stop reply: %s", info);
|
||||
+ DEBUG ("%s: stop reply: %s", vm->def->name, info);
|
||||
VIR_FREE(info);
|
||||
paused = 1;
|
||||
|
||||
@@ -4811,7 +4799,7 @@ qemudDomainMigratePerform (virDomainPtr dom,
|
||||
snprintf (cmd, sizeof cmd, "migrate_set_speed %lum", resource);
|
||||
qemudMonitorCommand (vm, cmd, &info);
|
||||
|
||||
- DEBUG ("migrate_set_speed reply: %s", info);
|
||||
+ DEBUG ("%s: migrate_set_speed reply: %s", vm->def->name, info);
|
||||
VIR_FREE (info);
|
||||
}
|
||||
|
||||
@@ -4830,7 +4818,7 @@ qemudDomainMigratePerform (virDomainPtr dom,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
- DEBUG ("migrate reply: %s", info);
|
||||
+ DEBUG ("%s: migrate reply: %s", vm->def->name, info);
|
||||
|
||||
/* Now check for "fail" in the output string */
|
||||
if (strstr(info, "fail") != NULL) {
|
||||
@@ -4869,7 +4857,7 @@ cleanup:
|
||||
vm->def->name);
|
||||
}
|
||||
else {
|
||||
- DEBUG ("cont reply: %s", info);
|
||||
+ DEBUG ("%s: cont reply: %s", vm->def->name, info);
|
||||
VIR_FREE(info);
|
||||
}
|
||||
|
||||
--
|
||||
1.6.0.6
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
From ae4523336ac06e3ff7cc7b416fad9e57998c6b54 Mon Sep 17 00:00:00 2001
|
||||
From: Tim Waugh <twaugh@redhat.com>
|
||||
Date: Fri, 3 Jul 2009 10:29:01 +0100
|
||||
Subject: [PATCH 2/3] Don't unnecessarily try to change a file context
|
||||
|
||||
As pointed out by Tim Waugh here:
|
||||
|
||||
https://bugzilla.redhat.com/507555
|
||||
|
||||
We shouldn't bother trying to set the context of a file if it already
|
||||
matches what we want.
|
||||
|
||||
(Fixed to use STREQ() and not use tabs, as pointed out by danpb)
|
||||
|
||||
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
|
||||
---
|
||||
src/security_selinux.c | 11 ++++++++++-
|
||||
1 files changed, 10 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/src/security_selinux.c b/src/security_selinux.c
|
||||
index db1c27d..c2015a1 100644
|
||||
--- a/src/security_selinux.c
|
||||
+++ b/src/security_selinux.c
|
||||
@@ -280,10 +280,19 @@ static int
|
||||
SELinuxSetFilecon(virConnectPtr conn, const char *path, char *tcon)
|
||||
{
|
||||
char ebuf[1024];
|
||||
+ security_context_t econ;
|
||||
|
||||
VIR_INFO("Setting SELinux context on '%s' to '%s'", path, tcon);
|
||||
|
||||
- if(setfilecon(path, tcon) < 0) {
|
||||
+ if (setfilecon(path, tcon) < 0) {
|
||||
+ if (getfilecon(path, &econ) >= 0) {
|
||||
+ if (STREQ(tcon, econ)) {
|
||||
+ freecon(econ);
|
||||
+ /* It's alright, there's nothing to change anyway. */
|
||||
+ return 0;
|
||||
+ }
|
||||
+ freecon(econ);
|
||||
+ }
|
||||
virSecurityReportError(conn, VIR_ERR_ERROR,
|
||||
_("%s: unable to set security context "
|
||||
"'\%s\' on %s: %s."), __func__,
|
||||
--
|
||||
1.6.2.5
|
||||
|
||||
@@ -1,130 +0,0 @@
|
||||
From 80965bff6d46dea1808c8bbf02f50f0e289a0e65 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel P. Berrange <berrange@redhat.com>
|
||||
Date: Mon, 29 Jun 2009 10:41:56 +0000
|
||||
Subject: [PATCH] Fix crash in QEMU driver with bad capabilities data
|
||||
|
||||
---
|
||||
src/qemu_driver.c | 80 +++++++++++++++++++++++++++++++++++-----------------
|
||||
1 files changed, 54 insertions(+), 26 deletions(-)
|
||||
|
||||
diff -up libvirt-0.6.2/src/qemu_driver.c.bad-caps libvirt-0.6.2/src/qemu_driver.c
|
||||
--- libvirt-0.6.2/src/qemu_driver.c.bad-caps 2009-07-03 10:07:03.275252815 +0100
|
||||
+++ libvirt-0.6.2/src/qemu_driver.c 2009-07-03 10:08:52.143502961 +0100
|
||||
@@ -360,12 +360,43 @@ next:
|
||||
return 0;
|
||||
}
|
||||
|
||||
+
|
||||
+static int
|
||||
+qemudSecurityCapsInit(virSecurityDriverPtr secdrv,
|
||||
+ virCapsPtr caps)
|
||||
+{
|
||||
+ const char *doi, *model;
|
||||
+
|
||||
+ doi = virSecurityDriverGetDOI(secdrv);
|
||||
+ model = virSecurityDriverGetModel(secdrv);
|
||||
+
|
||||
+ caps->host.secModel.model = strdup(model);
|
||||
+ if (!caps->host.secModel.model) {
|
||||
+ char ebuf[1024];
|
||||
+ VIR_ERROR(_("Failed to copy secModel model: %s"),
|
||||
+ virStrerror(errno, ebuf, sizeof ebuf));
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ caps->host.secModel.doi = strdup(doi);
|
||||
+ if (!caps->host.secModel.doi) {
|
||||
+ char ebuf[1024];
|
||||
+ VIR_ERROR(_("Failed to copy secModel DOI: %s"),
|
||||
+ virStrerror(errno, ebuf, sizeof ebuf));
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ VIR_DEBUG("Initialized caps for security driver \"%s\" with "
|
||||
+ "DOI \"%s\"", model, doi);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
static int
|
||||
qemudSecurityInit(struct qemud_driver *qemud_drv)
|
||||
{
|
||||
int ret;
|
||||
- const char *doi, *model;
|
||||
- virCapsPtr caps;
|
||||
virSecurityDriverPtr security_drv;
|
||||
|
||||
ret = virSecurityDriverStartup(&security_drv,
|
||||
@@ -381,36 +412,17 @@ qemudSecurityInit(struct qemud_driver *q
|
||||
}
|
||||
|
||||
qemud_drv->securityDriver = security_drv;
|
||||
- doi = virSecurityDriverGetDOI(security_drv);
|
||||
- model = virSecurityDriverGetModel(security_drv);
|
||||
|
||||
- VIR_DEBUG("Initialized security driver \"%s\" with "
|
||||
- "DOI \"%s\"", model, doi);
|
||||
+ VIR_INFO("Initialized security driver %s", security_drv->name);
|
||||
|
||||
/*
|
||||
* Add security policy host caps now that the security driver is
|
||||
* initialized.
|
||||
*/
|
||||
- caps = qemud_drv->caps;
|
||||
-
|
||||
- caps->host.secModel.model = strdup(model);
|
||||
- if (!caps->host.secModel.model) {
|
||||
- char ebuf[1024];
|
||||
- VIR_ERROR(_("Failed to copy secModel model: %s"),
|
||||
- virStrerror(errno, ebuf, sizeof ebuf));
|
||||
- return -1;
|
||||
- }
|
||||
+ return qemudSecurityCapsInit(security_drv, qemud_drv->caps);
|
||||
+}
|
||||
|
||||
- caps->host.secModel.doi = strdup(doi);
|
||||
- if (!caps->host.secModel.doi) {
|
||||
- char ebuf[1024];
|
||||
- VIR_ERROR(_("Failed to copy secModel DOI: %s"),
|
||||
- virStrerror(errno, ebuf, sizeof ebuf));
|
||||
- return -1;
|
||||
- }
|
||||
|
||||
- return 0;
|
||||
-}
|
||||
|
||||
/**
|
||||
* qemudStartup:
|
||||
@@ -1852,13 +1864,29 @@ static int qemudGetNodeInfo(virConnectPt
|
||||
|
||||
static char *qemudGetCapabilities(virConnectPtr conn) {
|
||||
struct qemud_driver *driver = conn->privateData;
|
||||
+ virCapsPtr caps;
|
||||
char *xml = NULL;
|
||||
|
||||
qemuDriverLock(driver);
|
||||
+ if ((caps = qemudCapsInit()) == NULL) {
|
||||
+ virReportOOMError(conn);
|
||||
+ goto cleanup;
|
||||
+ }
|
||||
+
|
||||
+ if (qemu_driver->securityDriver &&
|
||||
+ qemudSecurityCapsInit(qemu_driver->securityDriver, caps) < 0) {
|
||||
+ virCapabilitiesFree(caps);
|
||||
+ virReportOOMError(conn);
|
||||
+ goto cleanup;
|
||||
+ }
|
||||
+
|
||||
virCapabilitiesFree(qemu_driver->caps);
|
||||
- if ((qemu_driver->caps = qemudCapsInit()) == NULL ||
|
||||
- (xml = virCapabilitiesFormatXML(driver->caps)) == NULL)
|
||||
+ qemu_driver->caps = caps;
|
||||
+
|
||||
+ if ((xml = virCapabilitiesFormatXML(driver->caps)) == NULL)
|
||||
virReportOOMError(conn);
|
||||
+
|
||||
+cleanup:
|
||||
qemuDriverUnlock(driver);
|
||||
|
||||
return xml;
|
||||
@@ -1,54 +0,0 @@
|
||||
From c3b3f6005d45552d01823504925eb587889cf25a Mon Sep 17 00:00:00 2001
|
||||
From: Daniel P. Berrange <berrange@redhat.com>
|
||||
Date: Fri, 29 May 2009 14:34:35 +0000
|
||||
Subject: [PATCH 1/1] Avoid double-free in daemon client cleanup code
|
||||
|
||||
---
|
||||
qemud/qemud.c | 22 +++++++++++++++++-----
|
||||
1 files changed, 17 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/qemud/qemud.c b/qemud/qemud.c
|
||||
index 1375560..783dc69 100644
|
||||
--- a/qemud/qemud.c
|
||||
+++ b/qemud/qemud.c
|
||||
@@ -1397,7 +1397,10 @@ static int qemudDispatchServer(struct qemud_server *server, struct qemud_socket
|
||||
* jobs have finished, then clean it up elsehwere
|
||||
*/
|
||||
void qemudDispatchClientFailure(struct qemud_client *client) {
|
||||
- virEventRemoveHandleImpl(client->watch);
|
||||
+ if (client->watch != -1) {
|
||||
+ virEventRemoveHandleImpl(client->watch);
|
||||
+ client->watch = -1;
|
||||
+ }
|
||||
|
||||
/* Deregister event delivery callback */
|
||||
if(client->conn) {
|
||||
@@ -1406,12 +1406,21 @@ void qemudDispatchClientFailure(struct qemud_client *client) {
|
||||
}
|
||||
|
||||
#if HAVE_SASL
|
||||
- if (client->saslconn) sasl_dispose(&client->saslconn);
|
||||
+ if (client->saslconn) {
|
||||
+ sasl_dispose(&client->saslconn);
|
||||
+ client->saslconn = NULL;
|
||||
+ }
|
||||
free(client->saslUsername);
|
||||
+ client->saslUsername = NULL;
|
||||
#endif
|
||||
- if (client->tlssession) gnutls_deinit (client->tlssession);
|
||||
- close(client->fd);
|
||||
- client->fd = -1;
|
||||
+ if (client->tlssession) {
|
||||
+ gnutls_deinit (client->tlssession);
|
||||
+ client->tlssession = NULL;
|
||||
+ }
|
||||
+ if (client->fd != -1) {
|
||||
+ close(client->fd);
|
||||
+ client->fd = -1;
|
||||
+ }
|
||||
}
|
||||
|
||||
|
||||
--
|
||||
1.6.0.6
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
From 0ae4c67ff5f1d24698c5cfc8a9719d333c892644 Mon Sep 17 00:00:00 2001
|
||||
From: Mark McLoughlin <markmc@redhat.com>
|
||||
Date: Thu, 16 Apr 2009 11:23:55 +0100
|
||||
Subject: [PATCH 1/3] qemu -drive takes format= not fmt=
|
||||
|
||||
Seems like a simple typo - it has been "format=" since the flag
|
||||
was introduced, but we added it as "fmt=".
|
||||
|
||||
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
|
||||
---
|
||||
src/qemu_conf.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
|
||||
index f36c927..6f9e610 100644
|
||||
--- a/src/qemu_conf.c
|
||||
+++ b/src/qemu_conf.c
|
||||
@@ -1135,7 +1135,7 @@ int qemudBuildCommandLine(virConnectPtr conn,
|
||||
disk->device == VIR_DOMAIN_DISK_DEVICE_DISK)
|
||||
virBufferAddLit(&opt, ",boot=on");
|
||||
if (disk->driverType)
|
||||
- virBufferVSprintf(&opt, ",fmt=%s", disk->driverType);
|
||||
+ virBufferVSprintf(&opt, ",format=%s", disk->driverType);
|
||||
|
||||
if (disk->cachemode) {
|
||||
const char *mode =
|
||||
@@ -1,57 +0,0 @@
|
||||
From daf3db93457427c25325781af684758c0341a6aa Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Veillard <veillard@redhat.com>
|
||||
Date: Fri, 29 May 2009 13:32:06 +0000
|
||||
Subject: [PATCH 1/1] PPC Qemu Machine Type update
|
||||
* src/qemu_conf.c docs/schemas/domain.rng
|
||||
tests/capabilityschemadata/caps-qemu-kvm.xml: PPC Qemu Machine Type
|
||||
changed from g3bw to g3beige some time ago, patch by Thomas Baker
|
||||
Daniel
|
||||
|
||||
---
|
||||
docs/schemas/domain.rng | 2 +-
|
||||
src/qemu_conf.c | 2 +-
|
||||
tests/capabilityschemadata/caps-qemu-kvm.xml | 2 +-
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/docs/schemas/domain.rng b/docs/schemas/domain.rng
|
||||
index 204c633..11cf04a 100644
|
||||
--- a/docs/schemas/domain.rng
|
||||
+++ b/docs/schemas/domain.rng
|
||||
@@ -184,7 +184,7 @@
|
||||
</attribute>
|
||||
<attribute name="machine">
|
||||
<choice>
|
||||
- <value>g3bw</value>
|
||||
+ <value>g3beige</value>
|
||||
<value>mac99</value>
|
||||
<value>prep</value>
|
||||
</choice>
|
||||
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
|
||||
index 18156cd..d54f2ca 100644
|
||||
--- a/src/qemu_conf.c
|
||||
+++ b/src/qemu_conf.c
|
||||
@@ -192,7 +192,7 @@ static const char *const arch_info_hvm_sparc_machines[] = {
|
||||
"sun4m"
|
||||
};
|
||||
static const char *const arch_info_hvm_ppc_machines[] = {
|
||||
- "g3bw", "mac99", "prep"
|
||||
+ "g3beige", "mac99", "prep"
|
||||
};
|
||||
|
||||
static const char *const arch_info_xen_x86_machines[] = {
|
||||
diff --git a/tests/capabilityschemadata/caps-qemu-kvm.xml b/tests/capabilityschemadata/caps-qemu-kvm.xml
|
||||
index fd8523e..893f9ed 100644
|
||||
--- a/tests/capabilityschemadata/caps-qemu-kvm.xml
|
||||
+++ b/tests/capabilityschemadata/caps-qemu-kvm.xml
|
||||
@@ -81,7 +81,7 @@
|
||||
<arch name='ppc'>
|
||||
<wordsize>32</wordsize>
|
||||
<emulator>/usr/bin/qemu-system-ppc</emulator>
|
||||
- <machine>g3bw</machine>
|
||||
+ <machine>g3beige</machine>
|
||||
<machine>mac99</machine>
|
||||
<machine>prep</machine>
|
||||
<domain type='qemu'>
|
||||
--
|
||||
1.6.0.6
|
||||
|
||||
+2
-2
@@ -11,7 +11,7 @@ Daniel
|
||||
diff -r be7993675e07 src/qemu_conf.c
|
||||
--- a/src/qemu_conf.c Thu Apr 30 14:49:27 2009 +0100
|
||||
+++ b/src/qemu_conf.c Thu Apr 30 15:08:45 2009 +0100
|
||||
@@ -472,16 +472,13 @@ int qemudExtractVersionInfo(const char *
|
||||
@@ -473,16 +473,13 @@ int qemudExtractVersionInfo(const char *
|
||||
|
||||
/*
|
||||
* Handling of -incoming arg with varying features
|
||||
@@ -30,7 +30,7 @@ diff -r be7993675e07 src/qemu_conf.c
|
||||
*/
|
||||
if (kvm_version >= 79) {
|
||||
flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_TCP;
|
||||
@@ -489,6 +486,9 @@ int qemudExtractVersionInfo(const char *
|
||||
@@ -490,6 +487,9 @@ int qemudExtractVersionInfo(const char *
|
||||
flags |= QEMUD_CMD_FLAG_MIGRATE_QEMU_EXEC;
|
||||
} else if (kvm_version > 0) {
|
||||
flags |= QEMUD_CMD_FLAG_MIGRATE_KVM_STDIO;
|
||||
@@ -12,7 +12,7 @@
|
||||
+ getuid() == 0) {
|
||||
+ static int soundWarned = 0;
|
||||
+ skipSound = 1;
|
||||
+ if (vm->def->nsounds &&
|
||||
+ if (def->nsounds &&
|
||||
+ !soundWarned) {
|
||||
+ soundWarned = 1;
|
||||
+ VIR_WARN0("Sound cards for VMs are disabled while SELinux security model is active");
|
||||
@@ -25,8 +25,8 @@
|
||||
}
|
||||
|
||||
/* Add sound hardware */
|
||||
- if (vm->def->nsounds) {
|
||||
+ if (vm->def->nsounds &&
|
||||
- if (def->nsounds) {
|
||||
+ if (def->nsounds &&
|
||||
+ !skipSound) {
|
||||
int size = 100;
|
||||
char *modstr;
|
||||
+56
-77
@@ -1,26 +1,14 @@
|
||||
# -*- rpm-spec -*-
|
||||
|
||||
%define with_xen 0%{!?_without_xen:1}
|
||||
%define with_xen_proxy 0%{!?_without_xen_proxy:1}
|
||||
%define with_qemu 0%{!?_without_qemu:1}
|
||||
%define with_openvz 0%{!?_without_openvz:1}
|
||||
%define with_lxc 0%{!?_without_lxc:1}
|
||||
%define with_sasl 0%{!?_without_sasl:1}
|
||||
%define with_avahi 0%{!?_without_avahi:1}
|
||||
%define with_polkit 0%{!?_without_polkit:0}
|
||||
%define with_python 0%{!?_without_python:1}
|
||||
%define with_libvirtd 0%{!?_without_libvirtd:1}
|
||||
%define with_uml 0%{!?_without_uml:1}
|
||||
%define with_network 0%{!?_without_network:1}
|
||||
|
||||
%define with_xen 0%{!?_without_xen:1}
|
||||
%define with_xen_proxy 0%{!?_without_xen_proxy:1}
|
||||
%define with_qemu 0%{!?_without_qemu:1}
|
||||
%define with_openvz 0%{!?_without_openvz:1}
|
||||
%define with_lxc 0%{!?_without_lxc:1}
|
||||
%define with_vbox 0%{!?_without_vbox:1}
|
||||
%define with_sasl 0%{!?_without_sasl:1}
|
||||
%define with_avahi 0%{!?_without_avahi:1}
|
||||
%define with_polkit 0%{!?_without_polkit:0}
|
||||
%define with_polkit 0%{!?_without_polkit:1}
|
||||
%define with_python 0%{!?_without_python:1}
|
||||
%define with_libvirtd 0%{!?_without_libvirtd:1}
|
||||
%define with_uml 0%{!?_without_uml:1}
|
||||
@@ -60,54 +48,45 @@
|
||||
%define with_rhel5 0
|
||||
%else
|
||||
%define with_rhel5 1
|
||||
%define with_polkit 0
|
||||
%endif
|
||||
|
||||
|
||||
Summary: Library providing a simple API virtualization
|
||||
Name: libvirt
|
||||
Version: 0.6.2
|
||||
Release: 13%{?dist}%{?extra_release}
|
||||
Version: 0.6.3
|
||||
Release: 11%{?dist}%{?extra_release}
|
||||
License: LGPLv2+
|
||||
Group: Development/Libraries
|
||||
Source: libvirt-%{version}.tar.gz
|
||||
|
||||
# Patches cherry-picked from upstream
|
||||
Patch0: libvirt-0.6.2-qemu-drive-format.patch
|
||||
# Fix shared/readonly disk labelling
|
||||
Patch1: libvirt-0.6.2-shared-readonly-label.patch
|
||||
# Fix <hostdev managed='yes'>
|
||||
|
||||
# Handle shared/readonly image labelling (bz 493692)
|
||||
Patch1: libvirt-0.6.3-shared-readonly-label.patch
|
||||
# Handle <hostdev managed='yes'> correctly (bz 499386)
|
||||
Patch2: libvirt-0.6.3-hostdev-managed.patch
|
||||
# Refresh qemu caps when getCapabilities is called (bz 460649)
|
||||
Patch3: libvirt-0.6.3-refresh-qemu-caps.patch
|
||||
# Enable migration with qemu 0.10
|
||||
Patch4: libvirt-0.6.2-enable-qemu-0-10-migration.patch
|
||||
# Enable migration with qemu 0.10 Enable (bz 499704)
|
||||
Patch4: libvirt-0.6.3-enable-qemu-0-10-migration.patch
|
||||
# Don't try to label a disk with no path (e.g. empty cdrom) (bz 499569)
|
||||
Patch5: libvirt-0.6.2-fix-nosource-label.patch
|
||||
# Fix qemu argv detection with latest qemu (bz 501923)
|
||||
Patch6: libvirt-0.6.2-fix-qemu-argv-detection-with-kvm-85.patch
|
||||
Patch6: libvirt-0.6.3-fix-qemu-argv-detection-with-kvm-85.patch
|
||||
# Fix XML attribute escaping (bz 499791)
|
||||
Patch7: libvirt-0.6.2-xml-attribute-escaping.patch
|
||||
Patch7: libvirt-0.6.3-xml-attribute-escaping.patch
|
||||
# Fix serious event handling issues causing guests to be destroyed (bz 499698)
|
||||
Patch8: libvirt-0.6.2-event-handling-1.patch
|
||||
Patch9: libvirt-0.6.2-event-handling-2.patch
|
||||
# Don't log monitor output to domain log file (bz 499584)
|
||||
Patch10: libvirt-0.6.2-do-not-log-monitor-output.patch
|
||||
Patch8: libvirt-0.6.3-event-handling-1.patch
|
||||
Patch9: libvirt-0.6.3-event-handling-2.patch
|
||||
# Bring up the bridge, even if it doesn't have an IP address (bz 501912)
|
||||
Patch11: libvirt-0.6.2-bring-up-ipless-bridge.patch
|
||||
# Use the correct QEMU machine type for ppc (bz 502862)
|
||||
Patch12: libvirt-0.6.2-qemu-ppc-machine-type.patch
|
||||
# Fix crash with TLS connections (bz 503066)
|
||||
Patch13: libvirt-0.6.2-libvirtd-double-free.patch
|
||||
# Fix broken networking with newer qemu releases (bz 503275)
|
||||
Patch14: libvirt-0.6.2-avoid-broken-networking-with-newer-qemu.patch
|
||||
# Fix libvirtd crash with bad capabilities data (bz 505635)
|
||||
Patch15: libvirt-0.6.2-fix-libvirtd-crash-with-bad-capabilities-data.patch
|
||||
# Don't unnecessarily try to change a file context (bug #507555)
|
||||
Patch16: libvirt-0.6.2-do-not-unnecessarily-try-to-change-a-file-context.patch
|
||||
Patch10: libvirt-0.6.3-bring-up-ipless-bridge.patch
|
||||
|
||||
# Not for upstream. Temporary hack till PulseAudio autostart
|
||||
# problems are sorted out when SELinux enforcing
|
||||
Patch200: libvirt-0.6.2-svirt-sound.patch
|
||||
# Patches not for upstream.
|
||||
|
||||
# Temporary hack till PulseAudio autostart problems are sorted
|
||||
# out when SELinux enforcing (bz 486112)
|
||||
Patch200: libvirt-0.6.3-svirt-sound.patch
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||
URL: http://libvirt.org/
|
||||
@@ -177,6 +156,9 @@ BuildRequires: avahi-devel
|
||||
BuildRequires: libselinux-devel
|
||||
BuildRequires: dnsmasq
|
||||
BuildRequires: bridge-utils
|
||||
%if %{with_qemu}
|
||||
BuildRequires: qemu
|
||||
%endif
|
||||
%if %{with_sasl}
|
||||
BuildRequires: cyrus-sasl-devel
|
||||
%endif
|
||||
@@ -254,8 +236,6 @@ of recent versions of Linux (and other OSes).
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
@@ -266,12 +246,6 @@ of recent versions of Linux (and other OSes).
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
%patch16 -p1
|
||||
|
||||
%patch200 -p0
|
||||
|
||||
@@ -295,6 +269,10 @@ iconv -f ISO-8859-1 -t UTF-8 < NEWS.old > NEWS
|
||||
%define _without_lxc --without-lxc
|
||||
%endif
|
||||
|
||||
%if ! %{with_vbox}
|
||||
%define _without_vbox --without-vbox
|
||||
%endif
|
||||
|
||||
%if ! %{with_sasl}
|
||||
%define _without_sasl --without-sasl
|
||||
%endif
|
||||
@@ -351,6 +329,7 @@ iconv -f ISO-8859-1 -t UTF-8 < NEWS.old > NEWS
|
||||
%{?_without_qemu} \
|
||||
%{?_without_openvz} \
|
||||
%{?_without_lxc} \
|
||||
%{?_without_vbox} \
|
||||
%{?_without_sasl} \
|
||||
%{?_without_avahi} \
|
||||
%{?_without_polkit} \
|
||||
@@ -385,7 +364,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.a
|
||||
install -d -m 0755 $RPM_BUILD_ROOT%{_localstatedir}/run/libvirt/
|
||||
# Default dir for disk images defined in SELinux policy
|
||||
install -d -m 0755 $RPM_BUILD_ROOT%{_localstatedir}/lib/libvirt/images/
|
||||
# Default dir for kernel+initrd images defnied in SELinux policy
|
||||
# Default dir for kernel+initrd images defined in SELinux policy
|
||||
install -d -m 0755 $RPM_BUILD_ROOT%{_localstatedir}/lib/libvirt/boot/
|
||||
# used for virDomainMemoryPeek
|
||||
install -d -m 0700 $RPM_BUILD_ROOT%{_localstatedir}/cache/libvirt/
|
||||
@@ -460,8 +439,10 @@ fi
|
||||
%defattr(-, root, root)
|
||||
|
||||
%doc AUTHORS ChangeLog NEWS README COPYING.LIB TODO
|
||||
%doc %{_mandir}/man1/virsh.1*
|
||||
%{_mandir}/man1/virsh.1*
|
||||
%{_mandir}/man1/virt-xml-validate.1*
|
||||
%{_bindir}/virsh
|
||||
%{_bindir}/virt-xml-validate
|
||||
%{_libdir}/lib*.so.*
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/
|
||||
|
||||
@@ -595,46 +576,44 @@ fi
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Fri Jul 3 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-13.fc11
|
||||
- Fix libvirtd crash with bad capabilities data (bug #505635)
|
||||
- Don't unnecessarily try to change a file context (bug #507555)
|
||||
|
||||
* Fri Jun 5 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-12.fc11
|
||||
- Use the correct QEMU machine type for ppc (bug #502862)
|
||||
- Fix crash with TLS connections (bug #503066)
|
||||
- Fix broken networking with newer qemu releases (bug #503275)
|
||||
- Remove the qemu BuildRequires
|
||||
|
||||
* Mon May 25 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-11.fc11
|
||||
* Mon May 25 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.3-11.fc12
|
||||
- Bring up the bridge, even if it doesn't have an IP address (bug #501912)
|
||||
|
||||
* Fri May 22 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-10.fc11
|
||||
- Don't log monitor output to domain log file (bug #499584)
|
||||
|
||||
* Thu May 21 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-9.fc11
|
||||
- Fix qemu argv detection with latest qemu (bug #501923)
|
||||
* Thu May 21 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.3-10.fc12
|
||||
- Fix XML attribute escaping (bug #499791)
|
||||
- Fix serious event handling issues causing guests to be destroyed (bug #499698)
|
||||
|
||||
* Sun May 10 2009 Cole Robinson <crobinso@redhat.com> - 0.6.2-8.fc11
|
||||
* Thu May 21 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.3-9.fc12
|
||||
- Fix qemu argv detection with latest qemu (bug #501923)
|
||||
|
||||
* Sun May 10 2009 Cole Robinson <crobinso@redhat.com> - 0.6.2-8.fc12
|
||||
- Don't try to label a disk with no path (e.g. empty cdrom) (bug #499569)
|
||||
|
||||
* Thu May 7 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-7.fc11
|
||||
* Thu May 7 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.3-7.fc12
|
||||
- Enable migration for qemu 0.10 (bug #499704)
|
||||
|
||||
* Wed May 6 2009 Cole Robinson <crobinso@redhat.com> - 0.6.2-6.fc11
|
||||
* Wed May 6 2009 Cole Robinson <crobinso@redhat.com> - 0.6.3-6.fc12
|
||||
- Refresh qemu caps when getCapabilities is called (bug #460649)
|
||||
|
||||
* Wed May 6 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-5.fc11
|
||||
* Wed May 6 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.3-5.fc12
|
||||
- Fix handling of <hostdev managed='yes'> (bug #499386)
|
||||
|
||||
* Tue May 5 2009 Daniel P. Berrange <berrange@redhat.com> - 0.6.2-4.fc11
|
||||
- Fix labelling of shared/readonly disks (rhbz #493692)
|
||||
* Tue May 5 2009 Daniel Berrange <berrange@redhat.com> - 0.6.3-4.fc12
|
||||
- Fix readonly/shared disk image labelling (rhbz #493692)
|
||||
|
||||
* Tue Apr 28 2009 Daniel Veillard <veillard@redhat.com> - 0.6.2-3.fc11
|
||||
- Fix missing directories in spec (#496945 and gtk-doc)
|
||||
* Tue Apr 28 2009 Daniel Veillard <veillard@redhat.com> - 0.6.3-3.fc12
|
||||
- was also missing /usr/share/gtk-doc/html/libvirt in -devel
|
||||
|
||||
* Thu Apr 16 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-2.fc11
|
||||
* Tue Apr 28 2009 Daniel Veillard <veillard@redhat.com> - 0.6.3-2.fc12
|
||||
- fix packaging bug #496945 libvirt should own /var/cache/libvirt
|
||||
|
||||
* Fri Apr 24 2009 Daniel Veillard <veillard@redhat.com> - 0.6.3-1.fc12
|
||||
- release of 0.6.3
|
||||
- VirtualBox driver
|
||||
- new virt-xml-validate command
|
||||
- assorted bug fixes
|
||||
|
||||
* Thu Apr 16 2009 Mark McLoughlin <markmc@redhat.com> - 0.6.2-2.fc12
|
||||
- Fix qemu drive format specification (#496092)
|
||||
|
||||
* Fri Apr 3 2009 Daniel Veillard <veillard@redhat.com> - 0.6.2-1.fc11
|
||||
|
||||
Reference in New Issue
Block a user