- 17 4月, 2013 1 次提交
-
-
由 Osier Yang 提交于
No reason to include it in both "if" and "else" branches.
-
- 16 4月, 2013 32 次提交
-
-
由 Stefan Berger 提交于
Fix the error util/vircgroup.c: In function 'virCgroupNewDomainPartition': util/vircgroup.c:1299:11: error: declaration of 'dirname' shadows a global declaration [-Werror=shadow] Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
-
由 John Ferlan 提交于
Using "./autogen.sh --system lv_cv_static_analysis=yes" for my daily Coverity builds resulted in the following error when building: In file included from util/vircgrouppriv.h:32:0, from util/vircgroup.c:44: util/vircgroup.h:59:5: error: nonnull argument with out-of-range operand number (argument 1, operand 5) util/vircgroup.h:74:5: error: nonnull argument references non-pointer operand (argument 1, operand 4) make[3]: *** [libvirt_util_la-vircgroup.lo] Error 1 make[3]: Leaving directory `/home/jferlan/libvirt.cov.curr/src' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/jferlan/libvirt.cov.curr/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/jferlan/libvirt.cov.curr' make: *** [all] Error 2
-
由 John Ferlan 提交于
Commit id '1acfc171' resulted in the following valgrind failure: ==25317== 136 (24 direct, 112 indirect) bytes in 1 blocks are definitely lost in loss record 4 of 4 ==25317== at 0x4A06B6F: calloc (vg_replace_malloc.c:593) ==25317== by 0x4C6F851: virAlloc (viralloc.c:124) ==25317== by 0x4C71493: virBitmapNew (virbitmap.c:74) ==25317== by 0x4C71B79: virBitmapNewData (virbitmap.c:434) ==25317== by 0x402EF2: test8 (virbitmaptest.c:436) ==25317== by 0x40499F: virtTestRun (testutils.c:157) ==25317== by 0x402E8D: mymain (virbitmaptest.c:474) ==25317== by 0x404FDA: virtTestMain (testutils.c:719) ==25317== by 0x39D0821A04: (below main) (in /usr/lib64/libc-2.16.so)
-
由 Stefan Berger 提交于
Check for an unsupported QMP command when using the query-tpm-models and query-tpm-types commands before checking for general errors in order to avoid error messages in the log. Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Revert the patch checking for the QMP query-tpm-models command. Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
-
由 Peter Krempa 提交于
Add support for array elements for agent commands just like 64d5e815 did for monitor commands
-
由 Peter Krempa 提交于
The return value description stated that 0 is returned in case of success instead of the count of vCPUs.
-
由 Stefan Berger 提交于
Check for QMP query-tpm-models and set a capability flag. Do not use this QMP command if it is not supported. Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
-
由 Daniel P. Berrange 提交于
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
The LXC driver currently has code to detect cgroups mounts and then re-mount them inside the new root filesystem. Replace this fragile code with a call to virCgroupIsolateMount. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Add a virCgroupIsolateMount method which looks at where the current process is place in the cgroups (eg /system/demo.lxc.libvirt) and then remounts the cgroups such that this sub-directory becomes the root directory from the current process' POV. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
If a cgroup controller is co-mounted with another, eg /sys/fs/cgroup/cpu,cpuacct Then it is a requirement that there exist symlinks at /sys/fs/cgroup/cpu /sys/fs/cgroup/cpuacct pointing to the real mount point. Add support to virCgroupPtr to detect and track these symlinks Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
The virCgroupNewDriver method had a 'bool privileged' param. If a false value was ever passed in, it would simply not work, since non-root users don't have any privileges to create new cgroups. Just delete this broken code entirely and make the QEMU driver skip cgroup setup in non-privileged mode Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Historically QEMU/LXC guests have been placed in a cgroup layout that is $LOCATION-OF-LIBVIRTD/libvirt/{qemu,lxc}/$VMNAME This is bad for a number of reasons - The cgroup hierarchy gets very deep which seriously impacts kernel performance due to cgroups scalability limitations. - It is hard to setup cgroup policies which apply across services and virtual machines, since all VMs are underneath the libvirtd service. To address this the default cgroup location is changed to be /system/$VMNAME.{lxc,qemu}.libvirt This puts virtual machines at the same level in the hierarchy as system services, allowing consistent policy to be setup across all of them. This also honours the new resource partition location from the XML configuration, for example <resource> <partition>/virtualmachines/production</partitions> </resource> will result in the VM being placed at /virtualmachines/production/$VMNAME.{lxc,qemu}.libvirt NB, with the exception of the default, /system, path which is intended to always exist, libvirt will not attempt to auto-create the partitions in the XML. It is the responsibility of the admin/app to configure the partitions. Later libvirt APIs will provide a way todo this. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Allow VMs to be placed into resource groups using the following syntax <resource> <partition>/virtualmachines/production</partition> </resource> A resource cgroup will be backed by some hypervisor specific functionality, such as cgroups with KVM/LXC. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
A resource partition is an absolute cgroup path, ignoring the current process placement. Expose a virCgroupNewPartition API for constructing such cgroups Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Currently if virCgroupMakeGroup fails, we can get in a situation where some controllers have been setup, but others not. Ensure we call virCgroupRemove to remove what we've done upon failure Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Currently the virCgroupPtr struct contains 3 pieces of information - path - path of the cgroup, relative to current process' cgroup placement - placement - current process' placement in each controller - mounts - mount point of each controller When reading/writing cgroup settings, the path & placement strings are combined to form the file path. This approach only works if we assume all cgroups will be relative to the current process' cgroup placement. To allow support for managing cgroups at any place in the heirarchy a change is needed. The 'placement' data should reflect the absolute path to the cgroup, and the 'path' value should no longer be used to form the paths to the cgroup attribute files. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Some aspects of the cgroups setup / detection code are quite subtle and easy to break. It would greatly benefit from unit testing, but this is difficult because the test suite won't have privileges to play around with cgroups. The solution is to use monkey patching via LD_PRELOAD to override the fopen, open, mkdir, access functions to redirect access of cgroups files to some magic stubs in the test suite. Using this we provide custom content for the /proc/cgroup and /proc/self/mounts files which report a fixed cgroup setup. We then override open/mkdir/access so that access to the cgroups filesystem gets redirected into files in a temporary directory tree in the test suite build dir. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Rename all the virCgroupForXXX methods to use the form virCgroupNewXXX since they are all constructors. Also make sure the output parameter is the last one in the list, and annotate all pointers as non-null. Fix up all callers, and make sure they use true/false not 0/1 for the boolean parameters Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
The definition of structs for cgroups are kept in vircgroup.c since they are intended to be private from users of the API. To enable effective testing, however, they need to be accessible. To address the latter issue, without compronmising the former, this introduces a new vircgrouppriv.h file to hold the struct definitions. To prevent other files including this private header, it requires that __VIR_CGROUP_ALLOW_INCLUDE_PRIV_H__ be defined before inclusion Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Instead of calling virCgroupForDomain every time we need the virCgrouPtr instance, just do it once at Vm startup and cache a reference to the object in virLXCDomainObjPrivatePtr until shutdown of the VM. Removing the virCgroupPtr from the LXC driver state also means we don't have stale mount info, if someone mounts the cgroups filesystem after libvirtd has been started Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Instead of calling virCgroupForDomain every time we need the virCgrouPtr instance, just do it once at Vm startup and cache a reference to the object in qemuDomainObjPrivatePtr until shutdown of the VM. Removing the virCgroupPtr from the QEMU driver state also means we don't have stale mount info, if someone mounts the cgroups filesystem after libvirtd has been started Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
The virCgroupForDriver method recently gained an 'int controllers' parameter, but the stub impl did not Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Introduce a method virFileDeleteTree for recursively deleting an entire directory tree Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Only compile storagevolxml2argvtest if WITH_STORAGE is set, because it links to that driver Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
On Win32 symlink() is not available, so virstoragetest.c must be conditionalized to avoid compile failures. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
The second param of virNetlinkCommand should be struct nlmsghdr, not unsigned char. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Win32 does not like undefined symbols, so define an empty virThreadCancel impl. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
On win32, all code is position independent and adding -fPIE to the compiler flags results in warnings being printed Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Eric Blake 提交于
Upstream gnulib determined that we were needlessly compiling in gnulib's regex instead of glibc's when targetting new-enough glibc, because the m4 test was being too strict in requiring a particular answer to undefined behavior. https://lists.gnu.org/archive/html/bug-gnulib/2013-04/msg00032.html * .gnulib: Update to latest, for regex.
-
- 15 4月, 2013 4 次提交
-
-
由 Osier Yang 提交于
Though they are the same thing, mixed use of them is uncomfortable. "unsigned" is used a lot in old codes, this just tries to change the ones in utils.
-
由 Daniel P. Berrange 提交于
If libvirt makes any gcry_control() calls, then this prevents gnutls for doing any initialization. As such we must take care to do full initialization of libcrypt on a par with what gnutls would have done. In particular we must disable "sec mem" for cases where the user does not have mlock() permission. We also skip our init of libgcrypt if something else (ie the app using libvirt) has beaten us to it. https://bugzilla.redhat.com/show_bug.cgi?id=951630Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Peter Krempa 提交于
Report the errors as: Domain not found: no domain with matching uuid '41414141-4141-4141-4141-414141414141' (crashtest) instead of: Domain not found: no domain with matching uuid '41414141-4141-4141-4141-414141414141'
-
由 Peter Krempa 提交于
Use the helper to lookup the domain object in the remaining places. This patch also fixes error reporting when the domain was not found in several functions that were printing the raw UUID buffer instead of the formatted string. The offending functions were: qemuDomainGetInterfaceParameters qemuDomainSetInterfaceParameters qemuGetSchedulerParametersFlags qemuSetSchedulerParametersFlags qemuDomainGetNumaParameters qemuDomainSetNumaParameters qemuDomainGetMemoryParameters qemuDomainSetMemoryParameters qemuDomainGetBlkioParameters qemuDomainSetBlkioParameters qemuDomainGetCPUStats
-
- 13 4月, 2013 3 次提交
-
-
由 Osier Yang 提交于
Pushed under trivial rule
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-