- 11 1月, 2013 11 次提交
-
-
由 Daniel P. Berrange 提交于
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Most checks for libraries take the same format * --with-libFOO=yes|no|check|/some/path argument * check for a function NNN in libFOO.so * check for a header file DDD/HHH.h * Define a WITH_FOO config.h symbol * Define a WITH_FOO make conditional * Substitute FOO_CFLAGS and FOO_LIBS make variables * Print CFLAGS & LIBS summary at the end Doing all this correctly is rather difficult, typically done by copy+paste of a previous usage. Further small improvements people make are not applied to all previous usages. Improve this by creating some helper macros to apply good practice. First, to perform the actual checks: LIBVIRT_CHECK_LIB([SELINUX], [selinux], [getfilecon], [selinux/selinux.h]) This checks for 'getfilecon' in -lselinux, and the existence of 'selinux/selinux.h' header file. If successful it sets SELINUX_CFLAGS and SELINUX_LIBS. The WITH_SELINUX config.h macro and WITH_SELINUX make conditional are also defined. In some cases we need to check two variants of the same library LIBVIRT_CHECK_LIB_ALT([SASL], [sasl2], [sasl_client_init], [sasl/sasl.h], [SASL1], [sasl], [sasl_client_init], [sasl/sasl.h]) This checks for sasl_client_init in libsasl2, and if that is not found, checks sasl_client_init in libsasl. If the first check succeeds WITH_SASL is set, while if the second check succeeds *both* WITH_SASL and WITH_SASL1 are set. If the library supports pkg-config, then another variant is available LIBVIRT_CHECK_PKG([AVAHI], [avahi-client], [0.6.0]) This checks for avahi-client >= 0.6.0 via pkg-config and sets WITH_AVAHI if found. Finally to print a summary of CFLAGS & LIBs found (if any): LIBVIRT_RESULT_LIB([SELINUX]) Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Yufang Zhang 提交于
On rhel5, libs of avahi are packaged into avahi instead of avahi-libs. Actually, there is no avahi-libs package shipped with rhel5. This patch fixes this by requiring avahi on rhel5.
-
由 John Ferlan 提交于
-
由 John Ferlan 提交于
The phypUUIDTable_Push and phypUUIDTable_Pull leaked their file descriptors on normal return. Each function had an unnecessary use of creating a buffer to print conn->uri->user and needed a bit better flow control. I also noted that the Read function had a cut-n-paste error from the write function on a couple of VIR_WARN's. The openSSHSession leaked the sock on the failure path. Additionally that turns into the internal_socket in the phypOpen code. That was neither saved nor closed on any path. So I used the connnection_data->sock field to save the socket for eventual close. Of interest here is that phypExec used the connection_data->sock field even though it had never been initialized.
-
由 Eric Blake 提交于
I ran 'make dist' in the directory left over from ./autobuild.sh (which was configured for a mingw cross build); the resulting tarball had more files than 'make dist' on a normal Linux build. I traced it to the fact that we were distributing a generated file, but only when configure said the end user had to generate the file in the first place. In the process, I noticed that we had some difference in symbol file names; I added a comment explaining why the difference exists (after first trying to normalize the names and hitting VPATH build failures). * configure.ac (LIBVIRT_QEMU_SYMBOL_FILE): Add some comments. * src/Makefile.am (EXTRA_DIST): No need to ship a generated file; particularly since which file is built depends on configure results.
-
由 Eric Blake 提交于
The daemon-driver-{qemu,lxc} packages are only built if %{with_driver_modules} is specified, so they do not need to further test this condition. Likewise, the daemon package is only built if %{with_libvirtd} is specified, so it does not need to further test this condition. * libvirt.spec.in (daemon-driver-qemu, daemon-driver-lxc): Unconditionally require libvirt-daemon-driver-network. (daemon): Unconditionally include lock-driver files.
-
由 Laine Stump 提交于
This was preventing make rpm from completing.
-
由 Eric Blake 提交于
There's no need to do lots of readlink() calls to canonicalize a name if we're only going to use stat() on it, since stat() already chases symlinks. * src/util/virutil.c (virGetDeviceID): Let stat() do the symlink chasing.
-
由 Chunyan Liu 提交于
Pass stub driver name directly to pciDettachDevice and pciReAttachDevice to fit for different libvirt drivers. For example, qemu driver prefers pci-stub, but Xen prefers pciback. Signed-off-by: NChunyan Liu <cyliu@suse.com>
-
- 10 1月, 2013 10 次提交
-
-
由 Guannan Ren 提交于
QEMU_CAPS_DEVICE_USB_NET /* -device usb-net */
-
由 Guannan Ren 提交于
-
由 Guannan Ren 提交于
Add an optional 'type' attribute to <target> element of serial port device. There are two choices for its value, 'isa-serial' and 'usb-serial'. For backward compatibility, when attribute 'type' is missing the 'isa-serial' will be chosen as before. Libvirt XML sample <serial type='pty'> <target type='usb-serial' port='0'/> <address type='usb' bus='0' port='1'/> </serial> qemu commandline: qemu ${other_vm_args} \ -chardev pty,id=charserial0 \ -device usb-serial,chardev=charserial0,id=serial0,bus=usb.0,port=1
-
由 Guannan Ren 提交于
QEMU_CAPS_DEVICE_USB_SERIAL /* -device usb-serial */
-
由 Michal Privoznik 提交于
With the most recent patch from Claudio, I realized how many indentation flaws we have in the libvirt.h.in file. Even though they are harmless, it's still worth fixing them.
-
由 Claudio Bley 提交于
-
由 Michal Privoznik 提交于
https://bugzilla.redhat.com/show_bug.cgi?id=892079 With current code, if user calls virDomainPMSuspendForDuration() followed by virDomainDestroy(), the former API checks for qemu agent presence, which will evaluate as true (if agent is configured). While talking to qemu agent, the qemu driver is unlocked, so the latter API starts executing. However, if machine dies meanwhile, libvirtd gets EOF on the agent socket and qemuProcessHandleAgentEOF() is called. The handler clears reference to qemu agent while the destroy API already holding a reference to it. This leads to NULL dereferencing later in the code. Therefore, the agent pointer should be set to NULL only if we are the exclusive owner of it.
-
由 Yufang Zhang 提交于
When building libvirt rpms on rhel5, I got the following error: File must begin with "/": rm File must begin with "/": -f File must begin with "/": $RPM_BUILD_ROOT/etc/sysctl.d/libvirtd Installed (but unpackaged) file(s) found: /etc/sysctl.d/libvirtd It is triggerd by the %files list of libvirt daemon: %if 0%{?fedora} >= 14 || 0%{?rhel} >= 6 %config(noreplace) %{_prefix}/lib/sysctl.d/libvirtd.conf %else rm -f $RPM_BUILD_ROOT%{_prefix}/lib/sysctl.d/libvirtd.conf %endif After checking document of rpm spec file, I think it would be better to move the file deleting line from %files list to %install script. Bug introduced in commit a1fd56cb.
-
由 Eric Blake 提交于
While OOM can have knock-on effects that trash a system, generally the first symptom is one of memory thrashing. * src/qemu/qemu_cgroup.c (qemuSetupCgroup): Reword slightly.
-
由 Eric Blake 提交于
I did a build --without-libvirtd, then ran 'make dist'. The resulting tarball was broken, with a complaint that make did not know how to create libvirtd.service.in. I traced it to a use of EXTRA_DIST inside a conditional. * daemon/Makefile.am (EXTRA_DIST): Hoist libvirtd.service.in outside of WITH_LIBVIRTD conditional.
-
- 09 1月, 2013 8 次提交
-
-
由 Gao feng 提交于
when we has no host's src mapped to container. there is no .oldroot dir,so libvirt lxc will fail to start when mouting meminfo. in this case,the parameter srcprefix of function lxcContainerMountProcFuse should be NULL.and make this method handle NULL correctly. Signed-off-by: NGao feng <gaofeng@cn.fujitsu.com>
-
由 Andres Lagar-Cavilla 提交于
Perform all the appropriate plumbing. When qemu/KVM VMs are paused manually through a monitor not-owned by libvirt, libvirt will think of them as "paused" event after they are resumed and effectively running. With this patch the discrepancy goes away. This is meant to address bug 892791. Signed-off-by: NAndres Lagar-Cavilla <andres@lagarcavilla.org>
-
由 Claudio Bley 提交于
Libvirt's HTML documentation is not as easy to the eyes as it could be since long text has no visual breaks. Take advantage of the formatting in documentation comments and wrap each part separated by two consecutive \n into a HTML <p> element.
-
由 John Ferlan 提交于
Coverity determined that 'emulator' could no longer be set and determined the code was dead. Looking through the history, I discovered commit-id ed769e18 removed code originally added by commit-id 9237e955 and further modified by commit-id 6a7e7c4f.
-
由 John Ferlan 提交于
Commit id f8ab364c removed ability to run this driver unprivileged. Coverity detected the check and flagged it.
-
由 John Ferlan 提交于
Remove remnants from commit id '89144534'
-
由 Daniel P. Berrange 提交于
Add checks for existence of GNUTLS and automatically disable it if not found. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Viktor Mihajlovski 提交于
In a non-systemd environment the post and preun scripts of libvirt-client fail, since the required files are in libvirt-daemon. Moved them to client. Doing that I noticed %{_unitdir}/libvirt-guests.service was contained in both libvirt-client and libvirt-daemon, which I don't think was intended. Removed the extra copy from daemon. Signed-off-by: NViktor Mihajlovski <mihajlov@linux.vnet.ibm.com>
-
- 08 1月, 2013 11 次提交
-
-
由 John Ferlan 提交于
Added 'usbFreeDevice' to the useless_free_options list in cfg.mk
-
由 Eric Blake 提交于
gcc 4.1.2 on RHEL 5 warned: conf/network_conf.c:3136: warning: 'foundIdx' may be used uninitialized in this function The warning is spurious, but initializing the variable doesn't hurt. * src/conf/network_conf.c (virNetworkDefUpdateDNSHost): Silence unused variable warning.
-
由 Eric Blake 提交于
POSIX does not guarantee whether uid_t and gid_t are signed or unsigned, nor does it guarantee whether they are smaller, same size, or larger than int (or even the same size as one another). Therefore, it is possible to have platforms where '(uid_t)-1==-1' is false or where 'uid = gid = -1' sets uid to the wrong value, thanks to integer promotion rules. The only portable way to use the placeholder value of these two types is to always use a cast. Thankfully, the issue is mostly theoretical - sanlock only compiles on Linux for now, and on Linux, these types do not suffer from strange promotion problems. * src/locking/lock_driver_sanlock.c (virLockManagerSanlockSetupLockspace, virLockManagerSanlockInit) (virLockManagerSanlockCreateLease): Cast -1 to proper type before comparing with uid_t or gid_t.
-
由 Claudio Bley 提交于
-
由 Michal Privoznik 提交于
Currently, if there's no hard memory limit defined for a domain, libvirt tries to calculate one, based on domain definition and magic equation and set it upon the domain startup. The rationale behind was, if there's a memory leak or exploit in qemu, we should prevent the host system trashing. However, the equation was too tightening, as it didn't reflect what the kernel counts into the memory used by a process. Since many hosts do have a swap, nobody hasn't noticed anything, because if hard memory limit is reached, process can continue allocating memory on a swap. However, if there is no swap on the host, the process gets killed by OOM killer. In our case, the qemu process it is. To prevent this, we need to relax the hard RSS limit. Moreover, we should reflect more precisely the kernel way of accounting the memory for process. That is, even the kernel caches are counted within the memory used by a process (within cgroups at least). Hence the magic equation has to be changed: limit = 1.5 * (domain memory + total video memory) + (32MB for cache per each disk) + 200MB
-
由 John Ferlan 提交于
Fix copy-paste error doing handshake. The clientShake was not set to true, thus we'd potentially never leave the handshake while loop.
-
由 Ján Tomko 提交于
Use regfree instead of VIR_FREE.
-
由 Claudio Bley 提交于
-
由 J.B. Joret 提交于
This is the QEMU backend code for the SCLP console support. It includes SCLP capability detection, QEMU command line generation and a test case. Signed-off-by: NJ.B. Joret <jb@linux.vnet.ibm.com> Signed-off-by: NViktor Mihajlovski <mihajlov@linux.vnet.ibm.com>
-
由 J.B. Joret 提交于
The SCLP console is the native console type for s390 and is preferred over the virtio console as it doesn't require special drivers and is more efficient. Recent versions of QEMU come with SCLP support which is hereby enabled. The new target types 'sclp' and 'sclplm' can be used to specify a SCLP console. Adding documentation, domain schema and XML processing support. Signed-off-by: NJ.B. Joret <jb@linux.vnet.ibm.com> Signed-off-by: NViktor Mihajlovski <mihajlov@linux.vnet.ibm.com>
-
由 Daniel P. Berrange 提交于
To avoid confusion between the LXC driver <-> controller monitor RPC protocol and the libvirt-lxc.so <-> libvirtd public RPC protocol, rename the former to lxc_monitor_protocol.x Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-