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
Wang Yufei 9ac9450780 libxl: fix vm lock overwritten bug
In libxl driver we do virObjectRef in libxlDomainObjBeginJob,
If virCondWaitUntil failed, it goes to error, do virObjectUnref,
There's a chance that someone undefine the vm at the same time,
and refs unref to zero, vm is freed in libxlDomainObjBeginJob.
But the vm outside function is not Null, we do virObjectUnlock(vm).
That's how we overwrite the vm memory after it's freed. I fix it.

Signed-off-by: Wang Yufei <james.wangyufei@huawei.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
2016-06-13 13:34:37 +02:00
.gnulib@246b3b2880 maint: update to latest gnulib 2016-05-27 14:06:45 -06:00
build-aux bracket-spacing: Add syntax-check for unnecessary curly brackets 2014-11-14 17:13:36 +01:00
daemon libvirtd: add config option for TLS priority 2016-06-08 13:48:45 +01:00
docs vnc: add support for listen type none 2016-06-09 14:46:45 +02:00
examples apparmor: Don't scrub environment of virtlogd process 2016-06-12 13:36:28 +02:00
gnulib maint: update to latest gnulib 2016-01-04 13:56:35 -07:00
include/libvirt libvirt-lxc: add virDomainLxcEnterCGroup API 2016-06-10 11:02:53 +01:00
m4 virt-login-shell: mark as Linux only 2016-06-13 12:51:17 +03:00
po nodeinfo: move host memory APIs out into virhostmem file 2016-06-09 18:43:18 +01:00
src libxl: fix vm lock overwritten bug 2016-06-13 13:34:37 +02:00
tests tests: fix CPUID detection tests compilation failure 2016-06-13 12:19:53 +02:00
tools virt-host-validate: improve tests for arm/aarch64 2016-06-13 12:50:28 +02:00
.ctags maint: Make ctags work out of the box 2013-07-18 08:47:21 +02:00
.dir-locals.el build: avoid tabs that failed syntax-check 2012-09-06 09:43:46 -06:00
.gitignore Introduce virschematest 2016-06-08 10:03:29 +02:00
.gitmodules
.mailmap maint: update .mailmap for recent contributions 2015-03-20 06:17:55 -06:00
AUTHORS.in Change maintainers list 2016-02-12 13:10:05 +03:00
autobuild.sh Disable libvirtd by default when building on Win32 2014-04-29 11:30:32 +01:00
autogen.sh maint: improve usage of autogen's --no-git 2015-02-06 11:35:29 -07:00
bootstrap maint: update to latest gnulib 2016-05-26 10:47:03 -06:00
bootstrap.conf build: use gnulib's unsetenv 2016-05-28 23:13:26 +02:00
cfg.mk nodeinfo: move host CPU APIs out into virhostcpu.c file 2016-06-09 18:31:11 +01:00
ChangeLog-old Fix typos in src/* 2014-04-21 16:49:08 -06:00
config-post.h libvirt-lxc: add virDomainLxcEnterCGroup API 2016-06-10 11:02:53 +01:00
configure.ac configure: allow setting default TLS priority string 2016-06-08 13:48:45 +01: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
HACKING virtestmock: Print invalid file accesses into a file 2016-05-14 09:46:23 +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 Use @SYSTEM priority for TLS on Fedora >= 21 2016-06-08 13:48:46 +01:00
Makefile.am tests: Introduce check-file-access.pl 2016-05-14 09:46:44 +02:00
Makefile.nonreentrant maint: use LGPL correctly 2013-05-20 14:03:48 -06:00
mingw-libvirt.spec.in parallels: substitute parallels with vz spec file and Makefile 2015-06-17 15:07:55 +03:00
README
README-hacking docs: update README-hacking 2014-05-06 16:20:24 -06:00
run.in Add PKG_CONFIG_PATH to run.in script. 2014-06-26 14:32:35 +01:00
TODO

         LibVirt : simple API for virtualization

  Libvirt is a C toolkit to interact with the virtualization capabilities
of recent versions of Linux (and other OSes). It is free software
available under the GNU Lesser General Public License. Virtualization of
the Linux Operating System means the ability to run multiple instances of
Operating Systems concurrently on a single hardware system where the basic
resources are driven by a Linux instance. The library aim at providing
long term stable C API initially for the Xen paravirtualization but
should be able to integrate other virtualization mechanisms if needed.

Daniel Veillard <veillard@redhat.com>