]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
implement callback function for qemu driver
authorOsier Yang <jyang@redhat.com>
Mon, 15 Nov 2010 03:23:35 +0000 (11:23 +0800)
committerEric Blake <eblake@redhat.com>
Tue, 23 Nov 2010 22:04:42 +0000 (15:04 -0700)
* src/qemu/qemu_driver.c (add function qemuDomainIsUpdated)

src/qemu/qemu_driver.c

index a69dd4506258c44e318a7b17691270299db3c5e8..f00d8a359a762449707db192432d1cde29c158b1 100644 (file)
@@ -4781,6 +4781,26 @@ cleanup:
     return ret;
 }
 
+static int qemuDomainIsUpdated(virDomainPtr dom)
+{
+    struct qemud_driver *driver = dom->conn->privateData;
+    virDomainObjPtr obj;
+    int ret = -1;
+
+    qemuDriverLock(driver);
+    obj = virDomainFindByUUID(&driver->domains, dom->uuid);
+    qemuDriverUnlock(driver);
+    if (!obj) {
+        qemuReportError(VIR_ERR_NO_DOMAIN, NULL);
+        goto cleanup;
+    }
+    ret = obj->updated;
+
+cleanup:
+    if (obj)
+        virDomainObjUnlock(obj);
+    return ret;
+}
 
 static int qemudGetVersion(virConnectPtr conn, unsigned long *version) {
     struct qemud_driver *driver = conn->privateData;
@@ -13249,7 +13269,7 @@ static virDriver qemuDriver = {
     qemuIsSecure, /* isSecure */
     qemuDomainIsActive, /* domainIsActive */
     qemuDomainIsPersistent, /* domainIsPersistent */
-    NULL, /* domainIsUpdated */
+    qemuDomainIsUpdated, /* domainIsUpdated */
     qemuCPUCompare, /* cpuCompare */
     qemuCPUBaseline, /* cpuBaseline */
     qemuDomainGetJobInfo, /* domainGetJobInfo */