On Thu, Nov 19, 2009 at 11:27 PM, Daniel Veillard <veillard@xxxxxxxxxx> wrote: > On Thu, Nov 19, 2009 at 09:45:48PM +0900, Ryota Ozaki wrote: >> Even if qemudStartVMDaemon suceeds, an error is logged such as >> 'qemuRemoveCgroup:1778 : internal error Unable to find cgroup for'. >> This is because qemudStartVMDaemon calls qemuRemoveCgroup to >> ensure that old cgroup does not remain. This workaround makes >> sense but leaving an error message may confuse users. >> >> This patch simply adds an option to suppress the error >> log if not needed. >> --- >> src/qemu/qemu_driver.c | 16 +++++++++------- >> 1 files changed, 9 insertions(+), 7 deletions(-) >> >> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c >> index a4a87ac..84ee942 100644 >> --- a/src/qemu/qemu_driver.c >> +++ b/src/qemu/qemu_driver.c >> @@ -1763,7 +1763,8 @@ cleanup: >> >> static int qemuRemoveCgroup(virConnectPtr conn, >> struct qemud_driver *driver, >> - virDomainObjPtr vm) >> + virDomainObjPtr vm, >> + int quiet) >> { >> virCgroupPtr cgroup; >> int rc; >> @@ -1773,9 +1774,10 @@ static int qemuRemoveCgroup(virConnectPtr conn, >> >> rc = virCgroupForDomain(driver->cgroup, vm->def->name, &cgroup, 0); >> if (rc != 0) { >> - qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR, >> - _("Unable to find cgroup for %s\n"), >> - vm->def->name); >> + if (!quiet) >> + qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR, >> + _("Unable to find cgroup for %s\n"), >> + vm->def->name); >> return rc; >> } >> >> @@ -2142,7 +2144,7 @@ static int qemudStartVMDaemon(virConnectPtr conn, >> return -1; >> >> /* Ensure no historical cgroup for this VM is lieing around bogus settings */ >> - qemuRemoveCgroup(conn, driver, vm); >> + qemuRemoveCgroup(conn, driver, vm, 1); >> >> if ((vm->def->ngraphics == 1) && >> vm->def->graphics[0]->type == VIR_DOMAIN_GRAPHICS_TYPE_VNC && >> @@ -2327,7 +2329,7 @@ cleanup: >> VIR_FREE(vm->def->seclabel.label); >> VIR_FREE(vm->def->seclabel.imagelabel); >> } >> - qemuRemoveCgroup(conn, driver, vm); >> + qemuRemoveCgroup(conn, driver, vm, 0); >> if ((vm->def->ngraphics == 1) && >> vm->def->graphics[0]->type == VIR_DOMAIN_GRAPHICS_TYPE_VNC && >> vm->def->graphics[0]->data.vnc.autoport) >> @@ -2416,7 +2418,7 @@ static void qemudShutdownVMDaemon(virConnectPtr conn, >> qemuDomainReAttachHostDevices(conn, driver, vm->def); >> >> retry: >> - if ((ret = qemuRemoveCgroup(conn, driver, vm)) < 0) { >> + if ((ret = qemuRemoveCgroup(conn, driver, vm, 0)) < 0) { >> if (ret == -EBUSY && (retries++ < 5)) { >> usleep(200*1000); >> goto retry; > > ACK, looks fine to me, but I would rather apply this after the 0.7.3 > release as this is just a superfluous error message > Please remind me to push this next week if I forget :-) OK, this fix is so trivial. I can wait! ozaki-r > > thanks ! > > Daniel > > -- > Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ > daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ > http://veillard.com/ | virtualization library http://libvirt.org/ > -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list