- 10 12月, 2013 34 次提交
-
-
由 Cédric Bosdonnat 提交于
Each unique event ID will thus be composed by 1 byte for the namespace and 1 byte for a namespace-specific ID. The namespace for domain event needs to be 0 for compatibility reasons.
-
由 Cédric Bosdonnat 提交于
The virDomainEvent class is kept as it indicates what meta informations are valid for the children classes. This may be useful in the future.
-
由 Cédric Bosdonnat 提交于
RIP virDomainEvent union. All data are now stored in each virObjectEvent subclass.
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
This change may be confusing at first, but provides a much more consistent naming scheme for the virObjectEvent children construction functions.
-
由 Cédric Bosdonnat 提交于
This aims at providing some consistency with other domain events
-
由 Cédric Bosdonnat 提交于
-
由 Cédric Bosdonnat 提交于
Added a parent class virObjectEvent for future event types
-
由 Cédric Bosdonnat 提交于
Keep virDomainEventStateRegisterID as a convenience wrapper around this new function.
-
由 Cédric Bosdonnat 提交于
Keep the legacy Domain lifecycle event functions as is.
-
由 Cédric Bosdonnat 提交于
Leave virDomainEventRegister and its Deregister brother as these are legacy functions only for domain lifecycle events.
-
由 Cédric Bosdonnat 提交于
The event queue will be generalized to hold events related to any object type.
-
由 Cédric Bosdonnat 提交于
The metadata struct will hold the unique identifiers for any type of object, though not all fields will be used for all types.
-
由 Cédric Bosdonnat 提交于
The event callbacks will be generalized to handle events for any object type.
-
由 Cédric Bosdonnat 提交于
These unit tests are aiming at providing some help during the domain events refactoring.
-
由 Michael Chapman 提交于
- systemctl and the %systemd_* RPM macros can take multiple unit names in the one invocation. Make use of this to avoid repeated systemd daemon reloads. - virtlockd was only properly enabled and disabled when using systemd, but when systemd RPM macros were not available (e.g. on Fedora < 18). Make sure it's enabled when systemd RPM macros are present, or when using initscripts. - Always use "reload" on virtlockd, not "condrestart". This allows it to cleanly re-execute itself without losing running state. Ignore any error should the reload fail. - Move the reloading of virtlockd and libvirtd via their initscripts into the daemon package's %postun scriptlet. These services must be restarted after all of the libvirt-daemon-driver-* packages have been upgraded during the same RPM transaction. - Add a %triggerpostun executed only when upgrading an older libvirt-daemon. As an older package would only reload libvirtd during %post, and the newer package would only reload libvirtd during %postun, such an upgrade would not reload libvirtd at all without the trigger. Signed-off-by: NMichael Chapman <mike@very.puzzling.org>
-
由 Michael Chapman 提交于
Also use a distinct, valid exit status for daemon re-execution failure. Signed-off-by: NMichael Chapman <mike@very.puzzling.org>
-
由 Michael Chapman 提交于
SIGHUP is commonly used to instruct a daemon to reload its config. For now we should handle it in virtlockd just like SIGUSR1, rather than having it kill the process. Signed-off-by: NMichael Chapman <mike@very.puzzling.org> Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Michael Chapman 提交于
- Use SIGUSR1, not SIGHUP, on reload. At present, virtlockd only responds to the former. - Fix PID file for virtlockd. - Do not start virtlockd in any runlevels by default. It needs to be explicitly selected in libvirt's qemu.conf anyway, so there is no need to have it running on all systems regardless. - Fix chkconfig priorities to ensure virtlockd is started before libvirtd is started, and stopped after libvirtd is stopped. - Add "Should-Start: virtlockd" to the libvirtd initscript's LSB header, for the same reason. - Add "Default-Stop" to both libvirtd and virtlockd initscripts. LSB does not guarantee that this defaults to the inverse of "Default-Start". Signed-off-by: NMichael Chapman <mike@very.puzzling.org> Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Michael Chapman 提交于
- Pass VIRTLOCKD_ARGS through to virtlockd. - Use SIGUSR1, not SIGHUP, in ExecReload. At present, virtlockd only responds to the former. - Have "systemctl enable virtlockd.service" enable virtlockd.socket, rather than throw an error. - Make virtlockd.socket wanted by sockets.target, rather than multi-user.target. This is consistent with other socket units in Fedora, and it ensures that the socket is available before libvirtd is started. Signed-off-by: NMichael Chapman <mike@very.puzzling.org>
-
由 Martin Kletzander 提交于
When changing memtune limits to unlimited with AFFECT_CONFIG, the values in virDomainDef are set to PARAM_UNLIMITED, which causes the whole <memtune> to be formatted. This can be changed in all drivers, but it also makes sense to use the default (0) as another value for "unlimited", since zero memory limit makes no sense. Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
由 Martin Kletzander 提交于
Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
由 Martin Kletzander 提交于
For dead domains that have no memtune limits, we return 0 instead of "unlimited", this patch fixes it to return PARAM_UNLIMITED. Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
由 Martin Kletzander 提交于
Since kernel 3.12 (commit 34ff8dc08956098563989d8599840b130be81252 in linux-stable.git in particular) the value for 'unlimited' in cgroup memory limits changed from LLONG_MAX to ULLONG_MAX. Due to rather unfortunate choice of our VIR_DOMAIN_MEMORY_PARAM_UNLIMITED constant (which we transfer as an unsigned long long in Kibibytes), we ended up with the situation described below (applies to x86_64): - 2^64-1 (ULLONG_MAX) -- "unlimited" in kernel = 3.12 - 2^63-1 (LLONG_MAX) -- "unlimited" in kernel < 3.12 - 2^63-1024 -- our PARAM_UNLIMITED scaled to Bytes - 2^53-1 -- our PARAM_UNLIMITED unscaled (in Kibibytes) This means that when any number within (2^63-1, 2^64-1] is read from memory cgroup, we are transferring that number instead of "unlimited". Unfortunately, changing VIR_DOMAIN_MEMORY_PARAM_UNLIMITED would break ABI compatibility and thus we have to resort to a different solution. With this patch every value greater than PARAM_UNLIMITED means "unlimited". Even though this may seem misleading, we are already in such unclear situation when running 3.12 kernel with memory limits set to 2^63. One example showing most of the problems at once (with kernel 3.12.2): # virsh memtune asdf --hard-limit 9007199254740991 --swap-hard-limit -1 # echo 12345678901234567890 >\ /sys/fs/cgroup/memory/machine/asdf.libvirt-qemu/memory.soft_limit_in_bytes # virsh memtune asdf hard_limit : 18014398509481983 soft_limit : 12056327051986884 swap_hard_limit: 18014398509481983 Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
由 Cole Robinson 提交于
We were unconditionally removing the device from the host list, when it should only be done on error. This fixes USB collision detection when hotplugging the same device to two guests.
-
由 Cole Robinson 提交于
If we hit a collision, we free the USB device while it is still part of our temporary USBDeviceList. When the list is unref'd, the device is free'd again. Make the initial device freeing dependent on whether it is present in the temporary list or not.
-
由 Cole Robinson 提交于
Similar to what Jiri did for cgroup setup/teardown in 05e149f9, push it all into the device handler functions so we can do the necessary prep work before claiming the device. This also fixes hotplugging USB devices by product/vendor (virt-manager's default behavior): https://bugzilla.redhat.com/show_bug.cgi?id=1016511
-
- 09 12月, 2013 1 次提交
-
-
由 Jiri Denemark 提交于
Mention the need to set memtune/hard_limit. https://bugzilla.redhat.com/show_bug.cgi?id=1035954
-
- 07 12月, 2013 5 次提交
-
-
由 Jim Fehlig 提交于
The libvirt-daemon package contains several driver-specific files, directories, and script, which can be problematic when building the package with multiple hypervisor support, e.g. both QEMU and Xen. E.g. installing a QEMU+Xen enabled libvirt-daemon on a Xen-only system will result in the creation of qemu and kvm groups and a qemu user. Move the driver-specific files, directories, and script to the respective driver subpackages.
-
由 Jim Fehlig 提交于
Collapse the various {with_<hypervisor>} conditionals in the libvirt-daemon package files section into a single {with_<hypervisor>} conditional
-
由 Jim Fehlig 提交于
Move some hypervisor-specific files in the libvirt-daemon subpackage within conditionals for those hypervisors.
-
由 Jim Fehlig 提交于
The daemon-config-{network,nwfilter} subpackages are built regardless of whether or not with_driver_modules is defined, therefore don't conditionally define their files list.
-
由 Jim Fehlig 提交于
The %pre script in libvirt-daemon is specific to qemu, so only include it if building with qemu support.
-