On Fri, Feb 11, 2011 at 02:17:55PM +0100, Matthias Bolte wrote: > Patch attached. > > Matthias > From e50c5ed1fd2e1b1aabd0c10a6fba1af22e787ddf Mon Sep 17 00:00:00 2001 > From: Matthias Bolte <matthias.bolte@xxxxxxxxxxxxxx> > Date: Fri, 11 Feb 2011 11:02:39 +0100 > Subject: [PATCH] qemu: Report a more informative error for missing cgroup controllers > > Also use VIR_ERR_OPERATION_INVALID instead of VIR_ERR_NO_SUPPORT, as > the operation could succeed when the cgroup controller was mounted. > --- > src/qemu/qemu_driver.c | 22 +++++++++++----------- > 1 files changed, 11 insertions(+), 11 deletions(-) > > diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c > index 21d7779..fa462f9 100644 > --- a/src/qemu/qemu_driver.c > +++ b/src/qemu/qemu_driver.c > @@ -3962,7 +3962,7 @@ static int qemudDomainSetMemory(virDomainPtr dom, unsigned long newmem) { > > /* Lack of balloon support is a fatal error */ > if (r == 0) { > - qemuReportError(VIR_ERR_NO_SUPPORT, > + qemuReportError(VIR_ERR_OPERATION_INVALID, > "%s", _("cannot set memory of an active domain")); > goto endjob; > } > @@ -6980,8 +6980,8 @@ static char *qemuGetSchedulerType(virDomainPtr dom, > > qemuDriverLock(driver); > if (!qemuCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_CPU)) { > - qemuReportError(VIR_ERR_NO_SUPPORT, > - __FUNCTION__); > + qemuReportError(VIR_ERR_OPERATION_INVALID, > + "%s", _("cgroup CPU controller is not mounted")); > goto cleanup; > } > > @@ -7011,8 +7011,8 @@ static int qemuDomainSetMemoryParameters(virDomainPtr dom, > > qemuDriverLock(driver); > if (!qemuCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_MEMORY)) { > - qemuReportError(VIR_ERR_NO_SUPPORT, > - __FUNCTION__); > + qemuReportError(VIR_ERR_OPERATION_INVALID, > + "%s", _("cgroup memory controller is not mounted")); > goto cleanup; > } > > @@ -7114,8 +7114,8 @@ static int qemuDomainGetMemoryParameters(virDomainPtr dom, > qemuDriverLock(driver); > > if (!qemuCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_MEMORY)) { > - qemuReportError(VIR_ERR_NO_SUPPORT, > - __FUNCTION__); > + qemuReportError(VIR_ERR_OPERATION_INVALID, > + "%s", _("cgroup memory controller is not mounted")); > goto cleanup; > } > > @@ -7227,8 +7227,8 @@ static int qemuSetSchedulerParameters(virDomainPtr dom, > > qemuDriverLock(driver); > if (!qemuCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_CPU)) { > - qemuReportError(VIR_ERR_NO_SUPPORT, > - __FUNCTION__); > + qemuReportError(VIR_ERR_OPERATION_INVALID, > + "%s", _("cgroup CPU controller is not mounted")); > goto cleanup; > } > > @@ -7292,8 +7292,8 @@ static int qemuGetSchedulerParameters(virDomainPtr dom, > > qemuDriverLock(driver); > if (!qemuCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_CPU)) { > - qemuReportError(VIR_ERR_NO_SUPPORT, > - __FUNCTION__); > + qemuReportError(VIR_ERR_OPERATION_INVALID, > + "%s", _("cgroup CPU controller is not mounted")); > goto cleanup; > } > Looks fine to me, ACK 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