- 17 6月, 2010 8 次提交
-
-
由 Stefan Berger 提交于
This patch works around a recent extension of the netlink driver I had made use of when building the netlink messages. Unfortunately older kernels don't accept IFLA_IFNAME + name of interface as a replacement for the interface's index, so this patch now gets the interface index ifindex if it's not provided (ifindex <= 0).
-
由 Justin Clift 提交于
Trivial fix changing printf() calls to vshPrint() where the ctl variable is available.
-
由 Justin Clift 提交于
Improves the help text for vol-path, vol-name, and vol-key, which previously referred to volume UUIDs. Addresses BZ # 598365.
-
由 Justin Clift 提交于
Presently the vol-key command only supports being provided with a volume path. This patch adds support for providing it with a pool and volume identifier pair as well. virsh # vol-key --pool <pool-name-or-uuid> <vol-name-or-path>
-
由 Matthias Bolte 提交于
Justin Clift reported a problem with adding virStoragePoolIsPersistent to virsh's pool-info command, resulting in a strange problem. Here's an example: virsh # pool-create-as images_dir3 dir - - - - "/home/images2" Pool images_dir3 created virsh # pool-info images_dir3 Name: images_dir3 UUID: 90301885-94eb-4ca7-14c2-f30b25a29a36 State: running Capacity: 395.20 GB Allocation: 30.88 GB Available: 364.33 GB virsh # pool-destroy images_dir3 Pool images_dir3 destroyed At this point the images_dir3 pool should be gone (because it was transient) and we should be able to create a new pool with the same name: virsh # pool-create-as images_dir3 dir - - - - "/home/images2" Pool images_dir3 created virsh # pool-info images_dir3 Name: images_dir3 UUID: 90301885-94eb-4ca7-14c2-f30b25a29a36 error: Storage pool not found The new pool got the same UUID as the first one, but we didn't specify one. libvirt should have picked a random UUID, but it didn't. It turned out that virStoragePoolIsPersistent leaks a reference to the storage pool object (actually remoteDispatchStoragePoolIsPersistent does). As a result, pool-destroy doesn't remove the virStoragePool for the "images_dir3" pool from the virConnectPtr's storagePools hash on libvirtd's side. Then the second pool-create-as get's the stale virStoragePool object associated with the "images_dir3" name. But this object has the old UUID. This commit ensures that all get_nonnull_* and make_nonnull_* calls for libvirt objects are matched properly with vir*Free calls. This fixes the reference leaks and the reported problem. All remoteDispatch*IsActive and remoteDispatch*IsPersistent functions were affected. But also remoteDispatchDomainMigrateFinish2 was affected in the success path. I wonder why that didn't surface earlier. Probably because domainMigrateFinish2 is executed on the destination host and in the common case this connection is opened especially for the migration and gets closed after the migration is done. So there was no chance to run into a problem because of the leaked reference.
-
由 Matthias Bolte 提交于
Commit b9efc7dc made virFileHasSuffix case insensitive. Honor this in the tests by switching vmdk to VMDK.
-
由 Matthias Bolte 提交于
-
由 Eric Blake 提交于
* src/phyp/phyp_driver.c (phypNumDomainsGeneric): Avoid glob collision by quoting sed argument. (phypDomainSetCPU): Avoid non-portable \+ in sed. (phypGetVIOSPartitionID, phypDiskType, phypListDomainsGeneric) (phypListDefinedDomains): Micro-optimize anchored substitutions.
-
- 16 6月, 2010 1 次提交
-
-
由 Justin Clift 提交于
This is a trivial fix for several autostart yes/no strings that weren't correctly marked for translation.
-
- 15 6月, 2010 8 次提交
-
-
由 Eric Blake 提交于
Make 'start --paused' mirror 'create --paused'. * tools/virsh.c (cmdStart): Use new virDomainCreateWithFlags API when needed. * tools/virsh.pod (start): Document --paused.
-
由 Eric Blake 提交于
Match earlier change for qemu pause support with virDomainCreateXML. * src/qemu/qemu_driver.c (qemudDomainObjStart): Add parameter; all callers changed. (qemudDomainStartWithFlags): Implement flag support.
-
由 Eric Blake 提交于
* src/esx/esx_driver.c (esxDomainCreate): Move guts... (esxDomainCreateWithFlags): ...to new function. (esxDriver): Trivially support the new API. * src/lxc/lxc_driver.c (lxcDomainStart, lxcDomainStartWithFlags) (lxcDriver): Likewise. * src/opennebula/one_driver.c (oneDomainStart) (oneDomainStartWithFlags, oneDriver): Likewise. * src/openvz/openvz_driver.c (openvzDomainCreate) (openvzDomainCreateWithFlags, openvzDriver): Likewise. * src/qemu/qemu_driver.c (qemudDomainStart) (qemudDomainStartWithFlags, qemuDriver): Likewise. * src/test/test_driver.c (testDomainCreate) (testDomainCreateWithFlags, testDriver): Likewise. * src/uml/uml_driver.c (umlDomainStart, umlDomainStartWithFlags) (umlDriver): Likewise. * src/vbox/vbox_tmpl.c (vboxDomainCreate) (vboxDomainCreateWithFlags, Driver): Likewise. * src/xen/xen_driver.c (xenUnifiedDomainCreate) (xenUnifiedDomainCreateWithFlags, xenUnifiedDriver): Likewise. * src/xenapi/xenapi_driver.c (xenapiDomainCreate) (xenapiDomainCreateWithFlags, xenapiDriver): Likewise.
-
由 Eric Blake 提交于
Define the wire format for the new virDomainCreateWithFlags API, and implement client and server side of marshaling code. * daemon/remote.c (remoteDispatchDomainCreateWithFlags): Add server side dispatch for virDomainCreateWithFlags. * src/remote/remote_driver.c (remoteDomainCreateWithFlags) (remote_driver): Client side serialization. * src/remote/remote_protocol.x (remote_domain_create_with_flags_args) (remote_domain_create_with_flags_ret) (REMOTE_PROC_DOMAIN_CREATE_WITH_FLAGS): Define wire format. * daemon/remote_dispatch_args.h: Regenerate. * daemon/remote_dispatch_prototypes.h: Likewise. * daemon/remote_dispatch_table.h: Likewise. * src/remote/remote_protocol.c: Likewise. * src/remote/remote_protocol.h: Likewise. * src/remote_protocol-structs: Likewise.
-
由 Eric Blake 提交于
Persistent domain creation needs the same features as transient domains, but virDomainCreate lacks the flags argument present in virDomainCreateXML. virDomainCreateFlags is already claimed as a public enum, so we have to break convention and expose virDomainCreateWithFlags. * include/libvirt/libvirt.h.in (virDomainCreateWithFlags): Add. * src/driver.h (virDrvDomainCreateWithFlags): Internal API. * src/libvirt.c (virDomainCreateWithFlags): Glue public API to driver API. * src/libvirt_public.syms (LIBVIRT_0.8.2): Expose public API. * src/esx/esx_driver.c (esxDriver): Add stub for driver. * src/lxc/lxc_driver.c (lxcDriver): Likewise. * src/opennebula/one_driver.c (oneDriver): Likewise. * src/openvz/openvz_driver.c (openvzDriver): Likewise. * src/phyp/phyp_driver.c (phypDriver): Likewise. * src/qemu/qemu_driver.c (qemuDriver): Likewise. * src/remote/remote_driver.c (remote_driver): Likewise. * src/test/test_driver.c (testDriver): Likewise. * src/uml/uml_driver.c (umlDriver): Likewise. * src/vbox/vbox_tmpl.c (Driver): Likewise. * src/xen/xen_driver.c (xenUnifiedDriver): Likewise. * src/xenapi/xenapi_driver.c (xenapiDriver): Likewise.
-
由 Eric Blake 提交于
* .hgignore: Delete, no longer used. * examples/python/.gitignore: Delete, covered globally. * include/.gitignore: Likewise. * python/tests/.gitignore: Likewise. * docs/schemas/.gitignore: Likewise. * tests/xml2sexprdata/.gitignore: Likewise. * tests/sexpr2xmldata/.gitignore: Likewise. * tests/confdata/.gitignore: Likewise. * tests/xencapsdata/.gitignore: Likewise. * tests/xmconfigdata/.gitignore: Likewise. * tests/xml2sexprdata/.gitignore: Likewise.
-
由 Eric Blake 提交于
Daniel's patch works with gcc and CFLAGS containing -O (the autoconf default), but fails with non-gcc or with other CFLAGS (such as -g), since c-ctype.h declares c_isdigit as a macro only for certain compilation settings. * src/Makefile.am (libvirt_parthelper_LDFLAGS): Add gnulib library, for when c_isdigit is not a macro. * src/storage/parthelper.c (main): Avoid out-of-bounds dereference, noticed by Jim Meyering.
-
由 Daniel P. Berrange 提交于
Disks with a trailing digit in their path (eg /dev/loop0 or /dev/dm0) have an extra 'p' appended before the partition number (eg, to form /dev/loop0p1 not /dev/loop01). Fix the partition lookup to append this extra 'p' when required * src/storage/parthelper.c: Add a 'p' before partition number if required
-
- 12 6月, 2010 2 次提交
-
-
由 Eric Blake 提交于
Otherwise, a malicious packet could cause a DoS via spurious out-of-memory failure. * src/uml/uml_driver.c (umlMonitorCommand): Validate that incoming data is reliable before using it to allocate/dereference memory. Don't report bogus errno on short read. Reported by Jim Meyering.
-
由 Matthias Bolte 提交于
Report that libvirt was built without that driver instead of trying to connect to a libvirtd, when we know that this is going to fail.
-
- 11 6月, 2010 3 次提交
-
-
由 Matthias Bolte 提交于
Otherwise this will segfault if DISPLAY is not defined.
-
由 Matthias Bolte 提交于
Otherwise this will segfault if PATH is not defined. Reported by Emre Erenoglu
-
由 Justin Clift 提交于
This patch adds two new parameters to the vol-create-as command: --backing-vol <volume-name-or-key-or-path> --backing-vol-format <format-of-backing-vol> virsh # vol-create-as guest_images_lvm snapvol1 5G --backing-vol \ rhel6vm1lun1 Vol snapvol1 created virsh # vol-create-as image_dir qcow2snap2 5G --format qcow2 \ --backing-vol imagevol1.qcow2 \ --backing-vol-format qcow2 Vol qcow2snap2 created Additionally, the virsh man page update fixes incorrect snapshot parameters that were included in my prior bulk volume command patch.
-
- 10 6月, 2010 2 次提交
-
-
由 Eric Blake 提交于
On Fedora 13 with sufficient mingw32-* packages installed, running ./autobuild.sh failed to cross-compile to mingw because mingw32-pthreads installed a broken <pthread.h>. With that issue fixed, the build still failed due to use of O_SYNC. Meanwhile, recent .spec.in changes got out of sync. * bootstrap.conf (gnulib_modules): Add fcntl-h, for O_SYNC. * .gnulib: Update to latest, to work around buggy pthreads-win32 library. * bootstrap: Import latest from gnulib. * mingw32-libvirt.spec.in: Distribute new file.
-
由 Eric Blake 提交于
* src/util/threads.c (includes) [WIN32]: On mingw, favor native threading over pthreads-win32 library. * src/util/thread.h [WIN32] Likewise. Suggested by Daniel P. Berrange.
-
- 09 6月, 2010 13 次提交
-
-
由 Daniel P. Berrange 提交于
When a disk is on a root squashed NFS server, it may not be possible to stat() the disk file in virCgroupAllowDevice. The virStorageFileGetMeta method may also fail to extract the parent backing store. Both of these errors have to be ignored to avoid breaking NFS deployments * src/qemu/qemu_driver.c: Ignore errors in cgroup setup to keep root squash NFS happy
-
由 Justin Clift 提交于
-
由 Justin Clift 提交于
With libvirt and virsh now being used for much more than Xen, this patch removes the outdated reference to Xen in the file header.
-
由 Matthias Bolte 提交于
Allow to specify a proxy to be used by libcurl.
-
由 Matthias Bolte 提交于
Pass a struct containing the parameters instead of passing each one individually. This make future extensions a bit simpler.
-
由 Justin Clift 提交于
This patch also includes the new vol-pool command.
-
由 Justin Clift 提交于
This patch adds a new "vol-pool" command to virsh, to round out the identifier conversion functions for volumes in virsh. Now it is possible to work with volumes when starting from just a volume key or volume path.
-
由 Eric Blake 提交于
* tools/virsh.c (opts_create): Add --paused option. (cmdCreate): Pass appropriate flag. * tools/virsh.pod: Document it.
-
由 Eric Blake 提交于
https://bugzilla.redhat.com/show_bug.cgi?id=589465 Some guests (eg with badly configured grub, or Windows' installation cd) require quick response from the console user. That's why we have a "launchPaused" option in vdsm. To implement it via libvirt, we need to ask libvirt not to call qemuMonitorStartCPUs() after starting qemu. Calling virDomainStop immediately after the domain is up is inherently raceful. * src/qemu/qemu_driver.c (qemudStartVMDaemon): Add new parameter; all callers adjusted. (qemudDomainCreate): Implement support for new flag.
-
由 Eric Blake 提交于
* include/libvirt/libvirt.h.in (virDomainCreateFlags): Add VIR_DOMAIN_START_PAUSED. * src/libvirt.c (virDomainCreateXML): Update documentation. * src/lxc/lxc_driver.c (lxcDomainCreateAndStart): Reject new flag as unimplemented. * src/opennebula/one_driver.c (oneDomainCreateAndStart): Likewise. * src/openvz/openvz_driver.c (openvzDomainCreateXML): Likewise. * src/phyp/phyp_driver.c (phypDomainCreateAndStart): Likewise. * src/qemu/qemu_driver.c (qemudDomainCreate): Likewise. * src/test/test_driver.c (testDomainCreateXML): Likewise. * src/uml/uml_driver.c (umlDomainCreate): Likewise. * src/vbox/vbox_tmpl.c (vboxDomainCreateXML): Likewise. * src/xen/xend_internal.c (xenDaemonCreateXML): Likewise. * src/xenapi/xenapi_driver.c (xenapiDomainCreateXML): Likewise.
-
由 David Allan 提交于
* This patch is a modification of a patch submitted by Nigel Jones. It fixes several memory leaks on device addition/removal: 1. Free the virNodeDeviceDefPtr in udevAddOneDevice if the return value is non-zero 2. Always release the node device reference after the device has been processed. * Refactored for better readability per the suggestion of clalance
-
由 David Allan 提交于
* Fix broken rng schema * Add test input & output files
-
由 David Allan 提交于
* Use virBufferEscapeString() per Dan B.
-
- 08 6月, 2010 3 次提交
-
-
由 Daniel P. Berrange 提交于
The virtio serial changes broke the test suite because they forgot to add the new address attribute to the domain XML schema. The xml2xml test also broke because the XML no longer roundtrips. This is due to testing of auto-addition of <controller> elements. Split that test case off into a separate XML file to avoid breakage * docs/schemas/domain.rng: Allow port number for virtio serial addresses * tests/qemuxml2argvdata/qemuxml2argv-channel-virtio.args, tests/qemuxml2argvdata/qemuxml2argv-channel-virtio.xml: Revert to a simple config to avoid breaking xml2xml test * tests/qemuxml2argvdata/qemuxml2argv-channel-virtio-auto.xml, tests/qemuxml2argvdata/qemuxml2argv-channel-virtio-auto.args: Add complex test case for auto-controller addition for xml2argv test * tests/qemuxml2argvtest.c: Add channel-virtio-auto test
-
由 Daniel P. Berrange 提交于
A look at the QEMU source revealed the missing bits of info about the VPC file format, so we can enable this now * src/util/storage_file.c: Enable VPC format, providing version and disk size offset fields
-
由 Daniel P. Berrange 提交于
When an attempt to hotplug a PCI device to a guest fails, the device was left attached to pci-stub. It is neccessary to reset the device and then attach it to the host driver again. * src/qemu/qemu_driver.c: Reattach PCI device to host if hotadd fails
-