Go to file
Jim Fehlig de49d5bad3 xen: Don't add dom0 twice on driver reload
When the xen driver loads, it probes libxl for some info about dom0 and
adds it to the virDomainObjList. The driver then looks for any domains
in stateDir and if they are still alive adds them to the list as well.
This logic is a bit flawed wrt handling driver reload and causes the
following error

  internal error: unexpected domain Domain-0 already exists

A simple fix is to load all domains from stateDir first and then only
add dom0 if needed.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2020-09-23 22:30:29 -06:00
.ctags.d maint: Add support for .ctags.d 2019-05-31 17:54:28 +02:00
.github github: skip lockdown of old issues/prs 2020-04-07 17:50:54 +01:00
build-aux syntax-check: Don't forbid curly braces around single line condition body 2020-09-15 15:20:23 +02:00
ci Add FreeBSD 11.4 CI job on Cirrus 2020-09-10 13:11:46 +01:00
docs docs: manpages: Strip table of contents from manpages 2020-09-23 16:20:36 +02:00
examples Use (un)signed printf specifiers correctly 2020-09-23 13:26:35 +02:00
include virsh: nodedev: ability to filter CSS capabilities 2020-09-15 09:06:24 +02:00
po Translated using Weblate (Italian) 2020-09-23 17:47:15 +02:00
scripts esx: separate header and source file generation 2020-09-23 13:23:18 +02:00
src xen: Don't add dom0 twice on driver reload 2020-09-23 22:30:29 -06:00
tests qemuxml2argvtest: Test timer validation for non-x86 arches 2020-09-23 22:48:26 +02:00
tools virsh: do not return bool in virshNetworkPortUUIDCompleter 2020-09-23 13:26:35 +02:00
.color_coded.in gnulib: delete all gnulib integration 2020-02-07 15:03:54 +00:00
.ctags ctags: Generate tags for headers, i.e. function prototypes 2018-09-18 14:21:33 +02:00
.dir-locals.el build: avoid tabs that failed syntax-check 2012-09-06 09:43:46 -06:00
.editorconfig Add .editorconfig 2019-09-06 12:47:46 +02:00
.gitignore Ignore clangd-related files and folders 2020-08-03 10:57:47 +02:00
.gitlab-ci.yml Add FreeBSD 11.4 CI job on Cirrus 2020-09-10 13:11:46 +01:00
.gitmodules gnulib: delete all gnulib integration 2020-02-07 15:03:54 +00:00
.gitpublish gitpublish: add a subject prefix 2020-01-16 13:04:11 +00:00
.mailmap mailmap: Remove some duplicates 2019-06-07 13:18:08 +02:00
.ycm_extra_conf.py.in gnulib: delete all gnulib integration 2020-02-07 15:03:54 +00:00
AUTHORS.rst.in AUTHORS: Remove Emacs file variables 2020-09-02 13:20:17 +02:00
CONTRIBUTING.rst meson: adjust our documentation to mention meson instead of autoconf 2020-08-03 09:27:09 +02:00
COPYING maint: follow recommended practice for using LGPL 2013-05-20 14:15:21 -06:00
COPYING.LESSER maint: Remove control characters from LGPL license file 2015-09-25 09:16:24 +02:00
NEWS.rst NEWS.rst: update NVDIMM changes entry 2020-09-23 13:19:47 -03:00
README.rst README: drop Travis CI badge 2020-08-03 15:08:28 +02:00
config.h config.h: add a copyright blurb 2020-08-03 13:54:15 +02:00
configmake.h.in meson: generate configmake.h 2020-08-03 09:26:48 +02:00
gitdm.config gitdm: add 'ibm' file 2019-10-18 17:32:52 +02:00
libvirt-admin.pc.in Add libvirt-admin library 2015-06-16 13:46:20 +02:00
libvirt-lxc.pc.in Add pkg-config files for libvirt-qemu & libvirt-lxc 2014-06-23 16:17:27 +01:00
libvirt-qemu.pc.in Add pkg-config files for libvirt-qemu & libvirt-lxc 2014-06-23 16:17:27 +01:00
libvirt.pc.in Add pkg-config files for libvirt-qemu & libvirt-lxc 2014-06-23 16:17:27 +01:00
libvirt.spec.in drop libdbus from libvirt 2020-09-17 18:20:33 +02:00
meson.build meson: Include value of expensive_tests in summary 2020-09-23 11:29:44 +02:00
meson_options.txt tests: Don't advertise VIR_TEST_EXPENSIVE to users 2020-09-23 11:30:05 +02:00
mingw-libvirt.spec.in spec: Require Fedora 31 2020-06-17 12:59:08 +02:00
run.in Prefer https: everywhere where possible 2020-09-01 21:58:46 +02:00

README.rst

.. image:: https://gitlab.com/libvirt/libvirt/badges/master/pipeline.svg
     :target: https://gitlab.com/libvirt/libvirt/pipelines
     :alt: GitLab CI Build Status
.. image:: https://bestpractices.coreinfrastructure.org/projects/355/badge
     :target: https://bestpractices.coreinfrastructure.org/projects/355
     :alt: CII Best Practices
.. image:: https://translate.fedoraproject.org/widgets/libvirt/-/libvirt/svg-badge.svg
     :target: https://translate.fedoraproject.org/engage/libvirt/
     :alt: 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:

* libvirt-users@redhat.com (**for user discussions**)
* libvir-list@redhat.com (**for development only**)

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

https://libvirt.org/contact.html