- 24 6月, 2013 6 次提交
-
-
由 Daniel P. Berrange 提交于
Add an access control driver that uses the pkcheck command to check authorization requests. This is fairly inefficient, particularly for cases where an API returns a list of objects and needs to check permission for each object. It would be desirable to use the polkit API but this links to glib with abort-on-OOM behaviour, so can't be used. The other alternative is to speak to dbus directly Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Add a new 'access_drivers' config parameter to the libvirtd.conf configuration file. This allows admins to setup the default access control drivers to use for API authorization. The same driver is to be used by all internal drivers & APIs Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
The access control checks in the 'connectOpen' driver method will require 'conn->driver' to be non-NULL. Set this before running the 'connectOpen' method and NULL-ify it again on failure. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
This patch introduces the virAccessManagerPtr class as the interface between virtualization drivers and the access control drivers. The viraccessperm.h file defines the various permissions that will be used for each type of object libvirt manages Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Ján Tomko 提交于
We can only pass values up to LLONG_MAX through JSON and QEMU checks if the int64_t number is not negative at startup since 1.5.0. https://bugzilla.redhat.com/show_bug.cgi?id=974010
-
- 22 6月, 2013 4 次提交
-
-
由 Jim Fehlig 提交于
virConnectGetSysinfo was never implemented in the legacy xen driver. This patch provides an implementation based on the qemu driver.
-
由 Jim Fehlig 提交于
virConnectGetSysinfo was never implemented in the libxl driver. This patch provides an implementation based on the qemu driver.
-
由 Jim Fehlig 提交于
libxl contains logic to determine an appropriate devid for new devices that do not specify one in their configuration. For all device types except NICs, the libxl driver allows libxl to determine devid. Do the same for NICs.
- 21 6月, 2013 15 次提交
-
-
由 Ján Tomko 提交于
Add -o compat= and -o lazy_refcounts options for qemu-img.
-
由 Ján Tomko 提交于
Add <features> and <compat> elements to volume target XML. <compat> is a string which for qcow2 represents the QEMU version it should be compatible with. Valid values are 0.10 and 1.1. 1.1 is implicit if the <features> element is present, otherwise qemu-img default is used. 0.10 can be specified to explicitly create older images after the qemu-img default changes. <features> contains optional features, so far <lazy_refcounts/> is available, which enables caching of reference counters, improving performance for snapshots.
-
由 Ján Tomko 提交于
Detect qcow2 images with version 3 in the image header as VIR_STORAGE_FILE_QCOW2. These images have a feature bitfield, with just one feature supported so far: lazy_refcounts. The header length changed too, moving the location of the backing format name.
-
由 Ján Tomko 提交于
XML: <features> <hyperv> <vapic state='on'/> <spinlocks state='on' retries='4096'/> </hyperv> </features> results in the following QEMU command line: qemu -cpu <cpu_model>,hv_vapic,hv_spinlocks=0x1000 https://bugzilla.redhat.com/show_bug.cgi?id=784836
-
由 Ján Tomko 提交于
Add new CPU features for HyperV: vapic for virtual APIC support spinlocks for setting spinlock support <features> <hyperv> <vapic state='on'/> <spinlocks state='on' retries='4096'/> </hyperv> </features> https://bugzilla.redhat.com/show_bug.cgi?id=784836
-
由 Roman Bogorodskiy 提交于
-
由 Roman Bogorodskiy 提交于
Implementation uses SIOCIFCREATE2 and SIOCIFDESTROY ioctls. Also, drop static virNetDevSetupControl() as we have public one avialable now.
-
由 Osier Yang 提交于
As the RNG schema for disk auth secret implies, it requires either "uuid" or "usage": <define name='diskAuthSecret'> <element name='secret'> <attribute name='type'> <choice> <value>ceph</value> <value>iscsi</value> </choice> </attribute> <choice> <attribute name='uuid'> <ref name="UUID"/> </attribute> <attribute name='usage'> <ref name='genericName'/> </attribute> </choice> </element> </define>
-
由 Jiri Denemark 提交于
-
由 Jiri Denemark 提交于
-
由 Jim Fehlig 提交于
Commit 752596b5 broke the build with -Werror qemu/qemu_hotplug.c: In function 'qemuDomainChangeGraphics': qemu/qemu_hotplug.c:1980:39: error: declaration of 'listen' shadows a global declaration [-Werror=shadow] Fix with s/listen/newlisten/
-
由 Laine Stump 提交于
This fixes the problem reported in: https://bugzilla.redhat.com/show_bug.cgi?id=972690 When checking for a collision of a new libvirt network's subnet with any existing routes, we read all of /proc/net/route into memory, then parse all the entries. The function that we use to read this file requires a "maximum length" parameter, which had previously been set to 64*1024. As each line in /proc/net/route is 128 bytes, this would allow for a maximum of 512 entries in the routing table. This patch increases that number to 128 * 100000, which allows for 100,000 routing table entries. This means that it's possible that 12MB would be allocated, but that would only happen if there really were 100,000 route table entries on the system, it's only held for a very short time. Since there is no method of specifying and unlimited max (and that would create a potential denial of service anyway) hopefully this limit is large enough to accomodate everyone.
-
Signed-off-by: NMarek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
-
由 Michal Privoznik 提交于
Currently, we have a bug when updating a graphics device. A graphics device can have a listen address set. This address is either defined by user (in which case it's type is VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS) or it can be inherited from a network (in which case it's type is VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK). However, in both cases we have a listen address to process (e.g. during migration, as I've tried to fix in 7f15ebc7). Later, when a user tries to update the graphics device (e.g. set a password), we check if listen addresses match the original as qemu doesn't know how to change listen address yet. Hence, users are required to not change the listen address. The implementation then just dumps listen addresses and compare them. Previously, while dumping the listen addresses, NULL was returned for NETWORK. After my patch, this is no longer true, and we get a listen address for olddev even if it is a type of NETWORK. So we have a real string on one side, the NULL from user's XML on the other side and hence we think user wants to change the listen address and we refuse it. Therefore, we must take the type of listen address into account as well.
-
Do not leave uninitialized variables, not all parameters are set in libxlMake*. Signed-off-by: NMarek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
-
- 20 6月, 2013 3 次提交
-
-
libxl uses some xenstore entries for hints in memory management (especially when starting new domain). This includes dom0 memory limit and Xen free memory margin, based on current system state. Entries are created at first function usage, so force such call at daemon startup, which most likely will be before any domain startup. Also prevent automatic memory management if dom0_mem= option passed to xen hypervisor - it is known to be incompatible with autoballoon. Signed-off-by: NMarek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
-
由 John Ferlan 提交于
As a consequence of the cgroup layout changes from commit 'cfed9ad4', the lxcDomainGetSchedulerParameters[Flags]()' and lxcGetSchedulerType() APIs failed to return data for a non running domain. This can be seen through a 'virsh schedinfo <domain>' command which returns: Scheduler : Unknown error: Requested operation is not valid: cgroup CPU controller is not mounted Prior to that change a non running domain would return: Scheduler : posix cpu_shares : 0 vcpu_period : 0 vcpu_quota : 0 emulator_period: 0 emulator_quota : 0 This patch will restore the capability to return configuration only data for a non running domain regardless of whether cgroups are available.
-
由 John Ferlan 提交于
As a consequence of the cgroup layout changes from commit '632f78ca', the qemuDomainGetSchedulerParameters[Flags]()' and qemuGetSchedulerType() APIs failed to return data for a non running domain. This can be seen through a 'virsh schedinfo <domain>' command which returns: Scheduler : Unknown error: Requested operation is not valid: cgroup CPU controller is not mounted Prior to that change a non running domain would return: Scheduler : posix cpu_shares : 0 vcpu_period : 0 vcpu_quota : 0 emulator_period: 0 emulator_quota : 0 This patch will restore the capability to return configuration only data for a non running domain regardless of whether cgroups are available.
-
- 19 6月, 2013 3 次提交
-
-
由 Ján Tomko 提交于
Just to reduce the indentation levels. Remove the unneeded NULL check for disk->file, as virBufferEscapeString doesn't print anything with NULL arguments.
-
由 Ján Tomko 提交于
Split out option string generation to make adding new options easier and simplify the code.
-
由 Ján Tomko 提交于
We don't care whether the trim was succesful or not anywhere except the tests. Switch it to void and set the buffer error on wrong usage.
-
- 18 6月, 2013 9 次提交
-
-
由 Peter Krempa 提交于
This flag is meant for errors happening on the source of the migration and isn't used on the destination. To allow better migration compatibility, don't propagate it to the destination.
-
由 Peter Krempa 提交于
Paolo Bonzini pointed out that it's actually possible to migrate a qemu instance that was paused due to I/O error and it will be able to work on the destination if the storage is accessible. This patch introduces flag VIR_MIGRATE_ABORT_ON_ERROR that cancels the migration in case an I/O error happens while it's being performed and allows migration without this flag. This flag can be possibly used for other error reasons that may be introduced in the future.
-
由 Jiri Denemark 提交于
-
由 Michal Privoznik 提交于
Currently, we wait for SPICE to migrate in the very same loop where we wait for qemu to migrate. This has a disadvantage of slowing seamless migration down. One one hand, we should not kill the domain until all SPICE data has been migrated. On the other hand, there is no need to wait in the very same loop and hence slowing down 'cont' on the destination. For instance, if users are watching a movie, they can experience the movie to be stopped for a couple of seconds, as processors are not running nor on src nor on dst as libvirt waits for SPICE to migrate. We should move the waiting phase to migration CONFIRM phase.
-
由 Cole Robinson 提交于
F20/rawhide has support for this. From: Peter Robinson <pbrobinson@gmail.com>
-
由 Osier Yang 提交于
Document for nodedev-list is also updated.
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
The xml outputed by HAL backend for scsi generic device: <device> <name>pci_8086_2922_scsi_host_scsi_device_lun0_scsi_generic</name> <path>/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0</path> <parent>pci_8086_2922_scsi_host_scsi_device_lun0</parent> <capability type='scsi_generic'> <char>/dev/sg0</char> </capability> </device>
-
由 Osier Yang 提交于
Since scsi generic device doesn't have DEVTYPE property set, the only way to know if it's a scsi generic device or not is to read the "SUBSYSTEM" property. The XML of the scsi generic device will be like: <device> <name>scsi_generic_sg0</name> <path>/sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/scsi_generic/sg0</path> <parent>scsi_0_0_0_0</parent> <capability type='scsi_generic'> <char>/dev/sg0</char> </capability> </device>
-