Libvirt provides a portable, long term stable C API for managing the virtualization technologies provided by many operating systems. It includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER Hypervisor.
Go to file
Michal Privoznik 8ad2edad94 qemuConnectGetAllDomainStats: Simplify qemuDomainGetStats() error handling
In qemuConnectGetAllDomainStats() there a loop that iterates over
all domains that stats are to be fetched for. Within this loop
the qemuDomainGetStats() is called which is responsible for
fetching stats for an individual domain. Now, the code that
handles successful and failure cases is almost the same. Rework
it, so that the code is deduplicated. Note, that the check for
!tmp is dropped because upon successful return from
qemuDomainGetStats() it is always allocated.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2021-12-02 16:57:44 +01:00
.ctags.d
.github/workflows Switch to new GitHub repo-lockdown configuration 2021-10-20 14:27:20 +01:00
.gitlab/issue_templates gitlab: Add disclaimer to the 'feature' issue template 2021-07-30 15:26:45 +02:00
build-aux syntax-check: Fix regex for sc_require_attribute_cleanup_initialization 2021-11-05 15:00:53 +01:00
ci ci: run a mingw64 job on stable Fedora 2021-11-23 16:44:18 +00:00
docs conf: add TPM devices to domain capabilities 2021-12-01 12:14:03 +00:00
examples lib: Drop needless one line labels 2021-11-22 12:39:59 +01:00
include domain: add interface information to 'virDomainGetGuestInfo' 2021-11-05 13:38:40 +01:00
po Translated using Weblate (Ukrainian) 2021-11-27 16:16:17 +01:00
scripts scripts: Properly declare g_auto() stub for cocci 2021-11-03 14:46:54 +01:00
src qemuConnectGetAllDomainStats: Simplify qemuDomainGetStats() error handling 2021-12-02 16:57:44 +01:00
tests Switch away from virHashFree 2021-12-01 13:53:12 +01:00
tools tools: fix iterating over argv when recovering xattr 2021-11-30 10:45:35 +00:00
.color_coded.in
.ctags
.dir-locals.el
.editorconfig
.gitignore gitignore: Ignore __pycache__ directory 2021-03-22 12:05:11 +01:00
.gitlab-ci.yml ci: display installed packages at start of build 2021-11-24 11:17:10 +00:00
.gitmodules
.gitpublish
.mailmap mailmap: consolidate my email addresses 2020-10-06 12:05:09 +02:00
.ycm_extra_conf.py.in
AUTHORS.rst.in AUTHORS: Add myself to the list of commiters 2021-07-14 14:51:19 +02:00
config.h meson: Declare GLIB_VERSION_* macros at configure 2021-05-03 12:08:26 +02:00
configmake.h.in meson: generate configmake.h 2020-08-03 09:26:48 +02:00
CONTRIBUTING.rst meson: adjust our documentation to mention meson instead of autoconf 2020-08-03 09:27:09 +02:00
COPYING
COPYING.LESSER
gitdm.config
libvirt-admin.pc.in
libvirt-lxc.pc.in
libvirt-qemu.pc.in
libvirt.pc.in
libvirt.spec.in spec: Explicitly provide locations for QEMU data 2021-11-18 15:49:02 +01:00
meson_options.txt meson: Introduce qemu_datadir option 2021-11-18 15:48:59 +01:00
meson.build Post-release version bump to 8.0.0 2021-12-01 10:53:20 +01:00
mingw-libvirt.spec.in rpm: fix mingw obsoletes lines 2021-08-02 13:47:20 +01:00
NEWS.rst Post-release version bump to 8.0.0 2021-12-01 10:53:20 +01:00
README.rst README: drop Travis CI badge 2020-08-03 15:08:28 +02:00
run.in run: detect daemons when run via wrapper commands 2021-12-01 12:14:03 +00:00

GitLab CI Build Status

CII Best Practices

Translation status

Libvirt API for virtualization

Libvirt provides a portable, long term stable C API for managing the virtualization technologies provided by many operating systems. It includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER Hypervisor.

For some of these hypervisors, it provides a stateful management daemon which runs on the virtualization host allowing access to the API both by non-privileged local users and remote users.

Layered packages provide bindings of the libvirt C API into other languages including Python, Perl, PHP, Go, Java, OCaml, as well as mappings into object systems such as GObject, CIM and SNMP.

Further information about the libvirt project can be found on the website:

https://libvirt.org

License

The libvirt C API is distributed under the terms of GNU Lesser General Public License, version 2.1 (or later). Some parts of the code that are not part of the C library may have the more restrictive GNU General Public License, version 2.0 (or later). See the files COPYING.LESSER and COPYING for full license terms & conditions.

Installation

Instructions on building and installing libvirt can be found on the website:

https://libvirt.org/compiling.html

Contributing

The libvirt project welcomes contributions in many ways. For most components the best way to contribute is to send patches to the primary development mailing list. Further guidance on this can be found on the website:

https://libvirt.org/contribute.html

Contact

The libvirt project has two primary mailing lists:

Further details on contacting the project are available on the website:

https://libvirt.org/contact.html