Re: [PATCH v2 0/9] Add function that raises error if domain is not active

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 17, 2018 at 10:13:25PM +0000, Clementine Hayat wrote:
This is my GSOC patch contribution.

This change was suggested on BiteSizedTasks in the libvirt wiki[1].

in libvirt there is lots of occurences of this same pattern:

	if (!virDomainObjIsActive(vm)) {
	    virReportError(VIR_ERR_OPERATION_INVALID,
	                   "%s", _("domain is not running"));
	    goto out;
	}

This series replace these calls with a new function that check if the
domain is active and log directly the error. This allows to remove
almost 300 lines of code in the code base.

[1] https://wiki.libvirt.org/page/BiteSizedTasks#Add_function_that_raises_error_if_domain_is_not_active

Changes since v2:
* renamed virDomainObjCheckIsActive into virDomainObjCheckActive
* add the remaining occurences

Clementine Hayat (9):
 Add function that raises error if domain is not active
 qemu: start using virDomainObjCheckActive
 test: start using virDomainObjCheckActive
 libxl: start using virDomainObjCheckActive
 bhyve: start using virDomainObjCheckActive
 lxc: start using virDomainObjCheckActive
 openvz: start using virDomainObjCheckActive
 uml: start using virDomainObjCheckActive
 vz: start using virDomainObjCheckActive

src/bhyve/bhyve_driver.c   |  20 +--
src/conf/domain_conf.c     |  11 ++
src/conf/domain_conf.h     |   2 +
src/libvirt_private.syms   |   1 +
src/libxl/libxl_driver.c   |  97 +++----------
src/lxc/lxc_driver.c       |  60 ++------
src/openvz/openvz_driver.c |  20 +--
src/qemu/qemu_domain.c     |   5 +-
src/qemu/qemu_driver.c     | 271 ++++++++-----------------------------
src/test/test_driver.c     |  35 +----
src/uml/uml_driver.c       |   5 +-
src/vz/vz_driver.c         |   5 +-
12 files changed, 120 insertions(+), 412 deletions(-)


I have pushed most of the patches, except for qemu, lxc and bhyve.

On top of that, some APIs like GetVcpus or GetIOThreads use
unnecessarily specific error messages:

src/qemu/qemu_driver.c:5517:    if (!virDomainObjIsActive(vm)) {
src/qemu/qemu_driver.c-5518-        virReportError(VIR_ERR_OPERATION_INVALID, "%s",
src/qemu/qemu_driver.c-5519-                       _("cannot list IOThreads for an inactive domain"));
src/qemu/qemu_driver.c-5520-        goto endjob;

which essentially repeat the API name in the error message, but those
can be cleaned up separately.

Jano

Attachment: signature.asc
Description: Digital signature

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux