[libvirt] [PATCH] openvz: Handle domain obj hash map errors

Guido Günther agx at sigxcpu.org
Tue Jul 10 05:21:17 UTC 2012


This makes the driver fail with a clear error message in case of uuid
collisions (for example if somebody copied a container configuration
without updating the UUID).

OpenVZ itself doesn't complain about duplicate UUIDs since this
parameter is only used by libvirt.
---
 src/openvz/openvz_conf.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/openvz/openvz_conf.c b/src/openvz/openvz_conf.c
index 503c8a0..0764c2c 100644
--- a/src/openvz/openvz_conf.c
+++ b/src/openvz/openvz_conf.c
@@ -684,8 +684,11 @@ int openvzLoadDomains(struct openvz_driver *driver) {
         openvzReadMemConf(dom->def, veid);
 
         virUUIDFormat(dom->def->uuid, uuidstr);
-        if (virHashAddEntry(driver->domains.objs, uuidstr, dom) < 0)
+        if (virHashAddEntry(driver->domains.objs, uuidstr, dom) < 0) {
+            openvzError(VIR_ERR_INTERNAL_ERROR,
+                        _("Could not add UUID for container %d"), veid);
             goto cleanup;
+        }
 
         virDomainObjUnlock(dom);
         dom = NULL;
-- 
1.7.10.4




More information about the libvir-list mailing list