- 28 4月, 2010 4 次提交
-
-
由 Daniel P. Berrange 提交于
It is possible to use block devices with domain save/restore. Upon failure QEMU unlinks the path being saved to. This isn't good when it is a block device ! * src/qemu/qemu_driver.c: Don't unlink block devices if save fails
-
由 Daniel P. Berrange 提交于
If a transient QEMU crashes during save attempt, then the virDomainPtr object may be freed. If a persistent QEMU crashes during save, then the 'priv->mon' field is no longer valid since it will be inactive. * src/qemu/qemu_driver.c: Fix two crashes when QEMU exits during a save attempt
-
由 Chris Lalancette 提交于
Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Klaus Ethgen 提交于
Signed-off-by: NGuido Günther <agx@sigxcpu.org>
-
- 27 4月, 2010 8 次提交
-
-
由 Chris Lalancette 提交于
In particular I was forgetting to take the qemuMonitorPrivatePtr lock (via qemuDomainObjBeginJob), which would cause problems if two users tried to access the same domain at the same time. This patch also fixes a problem where I was forgetting to remove a transient domain from the list of domains. Thanks to Stephen Shaw for pointing out the problem and testing out the initial patch. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Stefan Berger 提交于
This patch adds support for the RARP protocol. This may be needed due to qemu sending out a RARP packet (at least that's what it seems to want to do even though the protocol id is wrong) when migration finishes and we'd need a rule to let the packets pass. Unfortunately my installation of ebtables does not understand -p RARP and also seems to otherwise depend on strings in /etc/ethertype translated to protocol identifiers. Therefore I need to pass -p 0x8035 for RARP. To generally get rid of the dependency of that file I switch all so far supported protocols to use their protocol identifier in the -p parameter rather than the string. I am also extending the schema and added a test case. changes from v1 to v2: - added test case into patch
-
由 Jiri Denemark 提交于
With JSON qemu monitor, we get a STOP event from qemu whenever qemu stops guests CPUs. The downside of it is that vm->state is changed to PAUSED and a new generic paused event is send to applications. However, when we ask qemu to stop the CPUs we are not really interested in qemu event and we usually want to issue a more specific event. By setting vm->status to PAUSED before actually sending the request to qemu (and resetting it back if the request fails) we can ignore the event since the event handler does nothing when the guest is already paused. This solution is quite hacky but unfortunately it's the best solution which I was able to come up with and it doesn't introduce a race condition.
-
由 Jiri Denemark 提交于
-
由 David Allan 提交于
* virStorageEncryptionFormat is called from both virDomainDiskDefFormat and virStorageVolTargetDefFormat. The proper indentation in the generated XML depends on the caller. My earlier patch to fix the incorrect indentation for the domain XML broke the indentation for the storage XML. This patch adopts Laine's suggestion of requring the caller of virStorageEncryptionFormat to provide an unsigned int with the number of spaces the output should be indented. The patch modifies both callers to provide the additional argument. * Add a regression test for the domain XML * src/conf/domain_conf.c src/conf/storage_conf.c src/conf/storage_encryption_conf.c src/conf/storage_encryption_conf.h: change the indentation code * tests/qemuxml2xmltest.c tests/qemuxml2argvdata/qemuxml2argv-encrypted-disk.args tests/qemuxml2argvdata/qemuxml2argv-encrypted-disk.xml: add a regression test
-
由 Matthias Bolte 提交于
Cygwin's XDR implementation defines xdr_u_int64_t instead of xdr_uint64_t and lacks IXDR_PUT_INT32/IXDR_GET_INT32. Alter the IXDR_GET_LONG regex in rpcgen_fix.pl so it doesn't destroy the #define IXDR_GET_INT32 IXDR_GET_LONG in remote_protocol.x. Also fix the remote_protocol.h regex in rpcgen_fix.pl.
-
由 Matthias Bolte 提交于
-
由 Stefan Berger 提交于
With this patch I want to enable hex number inputs in the filter XML. A number that was entered as hex is also printed as hex unless a string representing the meaning can be found. I am also extending the schema and adding a test case. A problem with the DSCP value is fixed on the way as well. Changes from V1 to V2: - using asHex boolean in all printf type of functions to select the output format in hex or decimal format
-
- 26 4月, 2010 4 次提交
-
-
由 Satoru SATOH 提交于
This patch makes libvirtd start the dnsmasq daemon with a --dhcp-hostsfile option instead of --dhcp-host options for each '//ip/dhcp/host' entries defined in network xml file. the dnsmasq host file is stored into /var/lib/libvirt/network * src/network/bridge_driver.c: define the directory for the hostfiles and save/delete them to be used by dnsmasq
-
由 Satoru SATOH 提交于
* po/POTFILES.in: the new module contains translatable strings * src/Makefile.am: include the files in the utils set * src/libvirt_private.syms: exports the symbols internally
-
由 Satoru SATOH 提交于
It implements an idea to save dhcp hosts' macaddr vs. ipaddr mappings to static file and make dnsmasq loading it with "--dhcp-hostsfile" option, originally suggested by Dan, and can address the problem that too many "--dhcp-host" args hitting ARG_MAX limit * src/util/dnsmasq.h src/util/dnsmasq.c: adds the 2 new files
-
由 Daniel Veillard 提交于
new method generated files are missing from dist tarball.
-
- 24 4月, 2010 7 次提交
-
-
由 Chris Lalancette 提交于
While doing some testing of the snapshot code I noticed that if qemuDomainSnapshotLoad failed, it would print a NULL as part of the error. That's not desirable, so leave the full_path variable around until after we are done printing errors. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
We were freeing the virDomainSnapshotDefPtr, but not the virDomainSnapshotObjPtr in virDomainSnapshotObjFree. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Matthias Bolte 提交于
Cygwin has mntent.h but lacks getmntent_r. Update preprocessor checks to catch this combination.
-
由 Matthias Bolte 提交于
-
由 Matthias Bolte 提交于
The defined __sun is there, because inside_daemon is used in xenUnifiedOpen if __sun is defined.
-
由 Luiz Capitulino 提交于
It's not needed and is currently ignored, but this is a bug. It will get fixed soon and QMP will return an error for keys it doesn't know about, this will break libvirt. * src/qemu/qemu_monitor_json.c: remove qemuMonitorJSONCommandAddTimestamp() and the place where it's invoked in qemuMonitorJSONMakeCommand()
-
- 23 4月, 2010 9 次提交
-
-
由 Daniel P. Berrange 提交于
The nwfilterDriverActive() could de-reference a NULL pointer if it hadn't be started at the point it was called. It was also not thread safe, since it lacked locking around data accesses. * src/nwfilter/nwfilter_driver.c: Fix locking & NULL checks in nwfilterDriverActive()
-
由 Eric Blake 提交于
The user probably doesn't care what the gai error numbers are, as much as what the failed conversion IP address was. * src/remote/remote_driver.c (addrToString): Mention which address could not be converted. * daemon/remote.c (addrToString): Likewise.
-
由 Spencer Shimko 提交于
* The error messages coming from qemu's DAC support contain strings from the original SELinux security driver code. This just removes references to "security context" and other SELinux-isms from the DAC code. Signed-off-by: NSpencer Shimko <sshimko@tresys.com> Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Stefan Berger 提交于
- using INT_BUFSIZE_BOUND() to determine the length of the buffersize for printing and integer into - not explicitly initializing static var threadsTerminate to false anymore, since that's done automatically Changes after V2: - removed while looks in case of OOM error - removed on ifaceDown() call - preceding one ifaceDown() call with an ifaceCheck() call Since the name of an interface can be the same between stops and starts of different VMs I have to switch the IP address learning thread to use the index of the interface to determine whether an interface is still available or not - in the case of macvtap the thread needs to listen for traffic on the physical interface, thus having to time out periodically to check whether the VM's macvtap device is still there as an indication that the VM is still alive. Previously the following sequence of 2 VMs with macvtap device virsh start testvm1; virsh destroy testvm1 ; virsh start testvm2 would not terminate the thread upon testvm1's destroy since the name of the interface on the host could be the same (i.e, macvtap0) on testvm1 and testvm2, thus it was easily race-able. The thread would then determine the IP address parameter for testvm2 but apply the rule set for testvm1. :-( I am also introducing a lock for the interface (by name) that the thread must hold while it listens for the traffic and releases when it terminates upon VM termination or 0.5 second thereafter. Thus, the new thread for a newly started VM with the same interface name will not start while the old one still holds the lock. The only other code that I see that also needs to grab the lock to serialize operation is the one that tears down the firewall that were established on behalf of an interface. I am moving the code applying the 'basic' firewall rules during the IP address learning phase inside the thread but won't start the thread unless it is ensured that the firewall driver has the ability to apply the 'basic' firewall rules.
-
由 David Allan 提交于
* Fix for the bug reported at: https://bugzilla.redhat.com/show_bug.cgi?id=573908
-
由 Jiri Denemark 提交于
The hang fix in d376b7d6 was incomplete since it left quite a few {Enter,Exit}Monitor calls which require driver to be unlocked. Since the driver is locked throughout the whole function, {Enter,Exit}MonitorWithDriver need to be used instead to ensure driver is not locked when issuing monitor commands.
-
由 Jiri Denemark 提交于
The comment in qemuDomainWaitForMigrationComplete says we are polling every 50ms but the code sleeps only for 50us. This was already discussed during review but apparently forgotten when the series was pushed.
-
由 Daniel P. Berrange 提交于
The text monitor code was checking for a '\n' prefix on several places. Previously this would work, but since the monitor code re-write the '\n' is already stripped off, so mustn't be checked for. * src/qemu/qemu_monitor_text.c: Fix monitor error checking
-
由 Daniel P. Berrange 提交于
Probably as a result of a merge error, the CPU hotplug command names were completely wrong. * src/qemu/qemu_monitor_json.c, src/qemu/qemu_monitor_text.c: Fix the CPU hotplug command names
-
- 22 4月, 2010 7 次提交
-
-
由 Jiri Denemark 提交于
Adds ability to provide a preferred CPU model for CPUID data decoding. Such model would be considered as the best possible model (if it's supported by hypervisor) regardless on number of features which have to be added or removed for describing required CPU.
-
由 Jiri Denemark 提交于
So far, when CPUID data were converted into CPU model and features, the features can only be added to the model. As a result, when a guest asked for something like "qemu64,-svm" it would get a qemu32 plus a bunch of additional features instead. This patch adds support for removing feature from the base model. Selection algorithm remains the same: the best CPU model is the model which requires lowest number of features to be added/removed from it.
-
由 Jiri Denemark 提交于
-
由 Jiri Denemark 提交于
Qemu committed a patch which list some CPU names in [] when asked for supported CPUs (qemu -cpu ?). Yet, it needs such CPUs to be passed without those square braces. When probing for supported CPU models, we can just strip the square braces and pretend we have never seen them.
-
由 Jiri Denemark 提交于
First, inital VCPU pinning is set correctly but then it is reset by assigning qemu process to a new cgroup (which contains all CPUs). It's easily fixed by swapping these two actions.
-
-
由 Eric Blake 提交于
* src/esx/esx_vi.h: Placate cppi.
-
- 21 4月, 2010 1 次提交
-
-
由 Chris Wong 提交于
An empty root snapshot list was considered as error condition. Creating a new snapshot would fail if the domain didn't have snapshots yet, because the snapshot-create function tries to lookup the list of existing snapshots in order to verify that the snapshot name is unique. This fails if the domain doesn't have snapshots yet. Removing the NULL check from esxVI_LookupRootSnapshotTreeList fixes this.
-