- 24 6月, 2010 2 次提交
-
-
由 Ryota Ozaki 提交于
Through conversation with Kumar L Srikanth-B22348, I found that the function of getting memory usage (e.g., virsh dominfo) doesn't work for lxc with ns subsystem of cgroup enabled. This is because of features of ns and memory subsystems. Ns creates child cgroup on every process fork and as a result processes in a container are not assigned in a cgroup for domain (e.g., libvirt/lxc/test1/). For example, libvirt_lxc and init (or somewhat specified in XML) are assigned into libvirt/lxc/test1/8839/ and libvirt/lxc/test1/8839/8849/, respectively. On the other hand, memory subsystem accounts memory usage within a group of processes by default, i.e., it does not take any child (and descendant) groups into account. With the two features, virsh dominfo which just checks memory usage of a cgroup for domain always returns zero because the cgroup has no process. Setting memory.use_hierarchy of a group allows to account (and limit) memory usage of every descendant groups of the group. By setting it of a cgroup for domain, we can get proper memory usage of lxc with ns subsystem enabled. (To be exact, the setting is required only when memory and ns subsystems are enabled at the same time, e.g., mount -t cgroup none /cgroup.)
-
由 Ryota Ozaki 提交于
As same as normal directories, a cgroup cannot be removed if it contains sub groups. This patch changes virCgroupRemove to remove all descendant groups (subdirectories) of a target group before removing the target group. The handling is required when we run lxc with ns subsystem of cgroup. Ns subsystem automatically creates child cgroups on every process forks, but unfortunately the groups are not removed on process exits, so we have to remove them by ourselves. With this patch, such child (and descendant) groups are surely removed at lxc shutdown, i.e., lxcVmCleanup which calls virCgroupRemove.
-
- 21 5月, 2010 2 次提交
-
-
由 Jim Meyering 提交于
Run this: git grep -l 'VIR_ERROR\s*("'|xargs perl -pi -e \ 's/(VIR_ERROR)\s*\((".*?"),/$1(_($2),/'
-
由 Jim Meyering 提交于
Run this: git grep -l 'VIR_ERROR0\s*("'|xargs perl -pi -e \ 's/(VIR_ERROR0)\s*\((".*?")\)/$1(_($2))/'
-
- 04 5月, 2010 1 次提交
-
-
由 Ryota Ozaki 提交于
* src/util/cgroup.c: free temporal path string before breaking loop
-
- 24 4月, 2010 1 次提交
-
-
由 Matthias Bolte 提交于
Cygwin has mntent.h but lacks getmntent_r. Update preprocessor checks to catch this combination.
-
- 01 4月, 2010 1 次提交
-
-
由 Matthias Bolte 提交于
The switch from %lli to %lld in virCgroupGetValueI64 is intended, as virCgroupGetValueU64 uses base 10 too, and virCgroupSetValueI64 uses %lld to format the number to string. Parsing is stricter now and doesn't accept trailing characters after the actual value anymore.
-
- 22 3月, 2010 1 次提交
-
-
由 Jim Fehlig 提交于
Invoking virDomainSetMemory() on lxc driver results in libvirtd segfault when cgroups has not been configured on the host. Ensure driver->cgroup is non-null before invoking virCgroupForDomain(). To prevent similar segfaults in the future, ensure driver parameter to virCgroupForDomain() is non-null before dereferencing.
-
- 10 3月, 2010 1 次提交
-
-
由 Eric Blake 提交于
* global: patch created by running: for f in $(git ls-files '*.[ch]') ; do cppi $f > $f.t && mv $f.t $f done
-
- 05 3月, 2010 1 次提交
-
-
由 Daniel P. Berrange 提交于
When getting the driver/domain cgroup it is possible to specify whether it should be auto created. If auto-creation was turned off, libvirt still mistakenly created its own top level cgroup * src/util/cgroup.c: Honour autocreate flag for top level cgroup
-
- 09 2月, 2010 1 次提交
-
-
由 Matthias Bolte 提交于
It was used for error reporting only.
-
- 05 2月, 2010 2 次提交
-
-
由 Jim Meyering 提交于
* src/util/cgroup.c (virCgroupDetectPlacement): Close the mapping FILE* also upon error.
-
由 Jim Meyering 提交于
* src/util/cgroup.c (virCgroupCpuSetInherit) [HAVE_MNTENT_H]: Don't leak CPU-set inheritance value strings.
-
- 13 11月, 2009 1 次提交
-
-
由 Daniel P. Berrange 提交于
In the scenario where the cgroups were mounted but the particular group did not exist, and the caller had not requested auto-creation, the code would fail to return an error condition. This caused the lxc_controller to think the cgroup existed, and it then later failed when attempting to use it * src/util/cgroup.c: Raise an error if the cgroup path does not exist
-
- 19 10月, 2009 1 次提交
-
-
由 Ryota Ozaki 提交于
A cgroup file returns integer value terminated with '\n' and remaining it has sometimes harmful effects, for example it leads virStrToLong_ull to fail. * src/util/cgroup.c: strip out terminating \n when reading a value
-
- 08 10月, 2009 2 次提交
-
-
由 Cole Robinson 提交于
-
由 Daniel P. Berrange 提交于
* daemon/Makefile.am: Fix missing sasl rule * src/datatypes.c: Add unistd.h to avoid gnulib bug * src/util/cgroup.c: Disable mntent if not available
-
- 07 10月, 2009 1 次提交
-
-
由 Ryota Ozaki 提交于
The patch implements the missing memory control APIs for lxc, i.e., domainGetMaxMemory, domainSetMaxMemory, domainSetMemory, and improves domainGetInfo to return proper amount of used memory via cgroup. * src/libvirt_private.syms: Export virCgroupGetMemoryUsage and add missing virCgroupSetMemory * src/lxc/lxc_driver.c: Implement missing memory functions * src/util/cgroup.c, src/util/cgroup.h: Add the function to get used memory
-
- 22 9月, 2009 1 次提交
-
-
由 Ryota Ozaki 提交于
* src/conf/domain_conf.c: Don't assume all virDomainObjPtr have a non-NULL monitor_chr field in virDomainObjFormat. * src/lxc/lxc_driver.c: Implement suspend/resume driver APis * src/util/cgroup.c, src/util/cgroup.h: Support the 'freezer' cgroup controller * src/libvirt_private.syms: Export virCgroupSetFreezerState and virCgroupGetFreezerState
-
- 21 9月, 2009 1 次提交
-
-
由 Daniel P. Berrange 提交于
* src/bridge.c, src/bridge.h, src/buf.c, src/buf.h, src/cgroup.c, src/cgroup.h, src/conf.c, src/conf.h, src/event.c, src/event.h, src/hash.c, src/hash.h, src/hostusb.c, src/hostusb.h, src/iptables.c, src/iptables.h, src/logging.c, src/logging.h, src/memory.c, src/memory.h, src/pci.c, src/pci.h, src/qparams.c, src/qparams.h, src/stats_linux.c, src/stats_linux.h, src/threads-pthread.c, src/threads-pthread.h, src/threads-win32.c, src/threads-win32.h, src/threads.c, src/threads.h, src/util.c, src/util.h, src/uuid.c, src/uuid.h, src/virterror.c, src/virterror_internal.h, src/xml.c, src/xml.h: Move all files into src/util/ * daemon/Makefile.am: Add -Isrc/util/ to build flags * src/Makefile.am: Add -Isrc/util/ to build flags and update for moved files * src/libvirt_private.syms: Export cgroup APIs since they're now in util rather than linking directly to drivers * src/xen/xs_internal.c: Disable bogus virEventRemoveHandle call when built under PROXY * proxy/Makefile.am: Update for changed file locations. Remove bogus build of event.c * tools/Makefile.am, tests/Makefile.am: Add -Isrc/util/ to build flags
-
- 24 7月, 2009 6 次提交
-
-
由 Daniel P. Berrange 提交于
* src/cgroup.c: Fix cast to uint64 from unsigned long long
-
由 Daniel P. Berrange 提交于
* qemud/libvirtd_qemu.aug, qemud/test_libvirtd_qemu.aug, src/qemu.conf: Add 'cgroups_controllers' and 'cgroups_device_acl' parameters * src/qemu_conf.h, src/qemu_conf.c: Load & parse configuration params for cgroups * src/qemu_driver.c: Only use cgroups controllers that are activated, and use configured device whitelist instead of default, if set.
-
由 Daniel P. Berrange 提交于
* src/qemu_driver.c: Set a restrictive block device whitelist for all QEMU guests. Update whitelist when hotplugging disks. * src/cgroup.h, src/cgroup.c: Add some more convenience methods for dealing with block device whitelists.
-
由 Daniel P. Berrange 提交于
* src/qemu_driver.c: Add driver methods qemuGetSchedulerType, qemuGetSchedulerParameters, qemuSetSchedulerParameters * src/lxc_driver.c: Fix to use unsigned long long consistently for schedular parameters * src/cgroup.h, src/cgroup.c: Fix cpu_shares to take unsigned long long * src/util.c, src/util.h, src/libvirt_private.syms: Add a virStrToDouble helper * src/virsh.c: Fix handling of --set arg to schedinfo command to honour the designated data type of each schedular tunable as declared by the driver
-
由 Daniel P. Berrange 提交于
Allow the driver level cgroup to be managed explicitly by the hypervisor drivers, in order to detect whether to enable or disable cgroup support for domains. Provides better error reporting of failures. Also allow for creation of cgroups for unprivileged drivers if controller is accessible by the user. * src/cgroup.c, src/cgroup.h: Add an API to obtain a driver cgroup * src/lxc_conf.h, src/lxc_controller.c, src/lxc_driver.c: Obtain a driver cgroup at startup and use that instead of re-creating everytime. * src/util.c, src/util.h, src/libvirt_private.syms: Add a virGetUserName() helper
-
由 Daniel P. Berrange 提交于
* src/cgroup.c: Detect the mount location of every controller at time a virCgroupPtr is created. Detect current process' placement within group to avoid assuming it is in the root. Pass controller ID into SetValueStr/GetValueStr to enable much duplicated code to be eliminated
-
- 23 7月, 2009 2 次提交
-
-
由 Daniel P. Berrange 提交于
-
由 Daniel P. Berrange 提交于
-
- 08 5月, 2009 1 次提交
-
-
由 Daniel P. Berrange 提交于
-
- 16 3月, 2009 1 次提交
-
-
由 Daniel Veillard 提交于
* qemud/qemud.c src/cgroup.c src/uml_driver.c src/util.c: close some potential FILE * leaks Daniel
-
- 06 3月, 2009 1 次提交
-
-
由 Daniel Veillard 提交于
CPU usage of a lxc using cpuacct subsystem of cgroups, patch by Ryota Ozaki Daniel
-
- 06 2月, 2009 1 次提交
-
-
由 Jim Meyering 提交于
* src/bridge.c (brAddTap): Remove redundant errno=ENOMEM assignment after failed strdup. * src/cgroup.c (virCgroupFree): Remove redundant *group=NULL assignment after VIR_FREE(*group). * src/lxc_driver.c (lxcShutdown): Likewise. * src/xen_unified.c (xenUnifiedClose): Likewise. * src/xm_internal.c (xenXMDomainConfigFormat): Rewrite disk- and net-config-setting code to be clearer.
-
- 23 12月, 2008 1 次提交
-
-
由 Guido Günther 提交于
-
- 07 11月, 2008 1 次提交
-
-
由 Daniel Veillard 提交于
* src/logging.c src/logging.h proxy/Makefile.am proxy/libvirt_proxy.c src/Makefile.am src/cgroup.c src/datatypes.c src/domain_event.c src/internal.h src/libvirt.c src/lxc_container.c src/lxc_controller.c src/lxc_driver.c src/proxy_internal.c src/qemu_driver.c src/remote_internal.c src/storage_backend_disk.c src/util.c src/veth.c src/xen_internal.c src/xen_unified.c src/xend_internal.c: add new logging module, and move existing definitions there Daniel
-
- 22 10月, 2008 1 次提交
-
-
由 Dan Smith 提交于
-
- 09 10月, 2008 1 次提交
-
-
由 Dan Smith 提交于
-
- 08 10月, 2008 2 次提交
-
-
由 Daniel Veillard 提交于
* src/cgroup.c: use safewrite() * src/qemu_driver.c: missing VIR_FREE pojnted out by Eduardo Habkost Daniel
-
由 Jim Meyering 提交于
* src/cgroup.c (virCgroupSetValueStr): Use safe_write, not write.
-
- 04 10月, 2008 1 次提交
-
-
由 Dan Smith 提交于
-