- 27 7月, 2009 25 次提交
-
-
由 Daniel P. Berrange 提交于
* src/qemu_driver.c: implement missing features in qemudDomainGetVcpus for 'cpu' and 'cpuTime' fields
-
由 Mark McLoughlin 提交于
In order to hotplug a network/bridge backed NIC, we need to first create the tap file descriptor, add the tap interface to the bridge and then pass the file descriptor to the qemu process using the 'getfd' monitor command. Once the tapfd has been accepted, we create the network backend using host_net_add, supplying the name assigned to the tapfd. If this fails, we need to close the tapfd in qemu using the 'closefd' monitor command. If the version of qemu does not support the getfd/closefd monitor commands we detect "unknown command" in the getfd reply and fail the attach operation. * src/qemu_driver.c: add support for tapfd based hotplug in qemudDomainAttachNetDevice()
-
由 Mark McLoughlin 提交于
Add qemudMonitorCommandWithFd() which allows a file descriptor to be sent to qemu over a unix monitor socket using SCM_RIGHTS. See the unix(7) and cmsg(3) man pages. * src/qemu_conf.c: add a scm_fd param to qemudMonitorCommandExtra(), add qemudMonitorCommandWithFd(), implement SCM_RIGHTS support in qemudMonitorSendUnix()
-
由 Mark McLoughlin 提交于
Switch from using write() to using sendmsg() on QEMU's monitor socket so that we can add support for SCM_RIGHTS. * src/qemu_driver.c: add sendmsg() based qemudMonitorSendUnix() and use it when the monitor fd is a unix socket
-
由 Mark McLoughlin 提交于
Add a little helper function to write the monitor command followed by carriage return in a single write. This doesn't make any real difference, but allows us to more easily switch to using sendmsg() when using the monitor over a unix socket. * src/qemu_conf.c: split qemudMonitorSend() out
-
由 Mark McLoughlin 提交于
In subsequent patches we're going to have a file descriptor to close too, so centralize the error handling cleanups to make things easier. * src/qemu_conf.c: in qemudDomainAttachNetDevice() consolidate the error handling cleanups together
-
由 Mark McLoughlin 提交于
With hotplug, we're going to want to pass a tapfd name rather than an actual file descriptor, so prepare the way by passing a string tapfd to qemuBuildHostNetStr(). * src/qemu_conf.h: qemuBuildHostNetStr() takes a string tapfd now * src/qemu_conf.c: pass qemuBuildHostNetStr() a string rather than an actual file descriptor * src/qemu_driver.c: update qemudDomainAttachNetDevice() for change
-
由 Mark McLoughlin 提交于
* src/qemu_conf.h: export qemudNetworkIfaceConnect() * src/qemu_conf.c: move vnet_hdr logic into qemudNetworkIfaceConnect() since we need it for hotplug too
-
由 Mark McLoughlin 提交于
By probing for qemu machine types, we increased the time of a GetCapabilities call from 100us to a whopping 60ms. This patch takes the approach of only probing for machine types when the mtime of the emulator binary changed since the last time the capabilities were generated. * src/capabilities.h: cache the emulator binary mtime * src/qemu_conf.c: add qemudGetOldMachines() to copy the machine types from the old caps struct if the mtime for the binary hasn't changed * src/qemu_conf.h, src/qemu_driver.c: pass the old caps pointer to qemudCapsInit()
-
由 Mark McLoughlin 提交于
e.g. <machine canonical='pc'>pc-0.11</machine> * src/capabilities.c: output the canonical machine names in the capabilities output, if available * docs/schemas/capabilities.rng: add the new attribute
-
由 Mark McLoughlin 提交于
Not all possible emulators are actually in the capabilities, so if we don't find the supplied emulator we should probe it directly for machine types. * src/qemu_driver.c: add qemudCanonicalizeMachineDirect() to directly probe an emulator for the canonical machine type
-
由 Mark McLoughlin 提交于
In qemu-0.11 there is a 'pc-0.10' machine type which allows you to run guests with a machine which is compatible with the pc machine in qemu-0.10 - e.g. using the original PCI class for virtio-blk and virtio-console and disabling MSI support in virtio-net. The idea here is that we don't want to suprise guests by changing the hardware when qemu is updated. I've just posted some patches for qemu-0.11 which allows libvirt to canonicalize the 'pc' machine alias to the latest machine version. This patches makes us use that so that when a guest is configured to use the 'pc' machine type, we resolve that to 'pc-0.11' machine and save that in the guest XML. See also: https://fedoraproject.org/wiki/Features/KVM_Stable_Guest_ABI * src/qemu_conf.c: add qemudCanonicalizeMachine() to canonicalize the machine type according to the machine aliases in capabilities * src/qemu_driver.c: parse aliases in qemudParseMachineTypesStr()
-
由 Mark McLoughlin 提交于
A subsequent commit will add a "canonical" field to this structure, this patch basically just prepares the way for that. The new type is added, along with virCapabilitiesAlloc/FreeMachines() helpers and a whole bunch of code to make the transition. One quirk is that virCapabilitiesAddGuestDomain() and virCapabilitiesAddGuest() take ownership of the machine list rather than duping it. This makes sense to avoid needless copying. * src/capabilities.h: add the virCapsGuestMachine struct and use it in virCapsGuestDomainInfo, add prototypes for new functions and update the AddGuest() prototypes * src/capabilities.c: add code for allocating and freeing the new type, change the machines parameter to AddGuest() etc. * src/libvirt_private.syms: export the new helpers * src/qemu_conf.c: update all the machine type code to use the new struct * src/xen_internal.c: ditto * tests/testutilsqemu.c: ditto
-
由 Mark McLoughlin 提交于
Currently we hardcode the QEMU machine types. We should really just parse the output of 'qemu -M ?' so the lists don't get out of sync. xenner doesn't support '-M ?', so we still need to hardcode that. The horrible (const char *const *) is removed in a subsequent patch. * src/qemu_conf.c: kill the arch_info*machines tables, retain the hardcoded xenner machine type, add qemudProbeMachineTypes() to run and parse 'qemu -M ?' and use it in qemudCapsInitGuest()
-
由 Mark McLoughlin 提交于
There's no need for the hasbase/hasaltbase confusion, just store the first binary path found in a variable. * src/qemu_conf.c: kill hasbase/hasaltbase logic in qemudCapsInitGuest()
-
由 Matthias Bolte 提交于
* src/esx/esx_driver.c src/esx/esx_vi.c src/esx/esx_vi.h src/esx/esx_vmx.c src/esx/esx_vmx.h: extend the VI API version checks to accept version 4.0 and takes care of the virtualHW.version change from 4 to 7.
-
由 Matthias Bolte 提交于
* src/conf.c: the virConfParser must accept leading dot when in VMX mode
-
由 Matthias Bolte 提交于
* src/esx/esx_driver.c src/esx/esx_util.c src/esx/esx_util.h src/esx/esx_vi.c src/esx/esx_vi.h: adds a no_verify query parameter to stop libcurl from verifying theserver certificate for the https transport.
-
由 Matthias Bolte 提交于
* src/esx/esx_driver.c: remove leaks in esxDomainDumpXML() and simplify esxDomainXMLFromNative()
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
We fake stats values based on the current time, similar to how it's done for cpu time.
-
由 Cole Robinson 提交于
We need interface names to implement InterfaceStats.
-
由 Cole Robinson 提交于
Do the check in libvirt.c, to save drivers from the burden. This changes behavior slightly in the qemu driver: we no longer explictly error if passed an empty string. An error will still be thrown when the device lookup fails.
-
由 Cole Robinson 提交于
The generator couldn't tell that the stats return values were pointers. Stick a white list in the function which tries to make this distinction.
-
- 25 7月, 2009 3 次提交
-
-
由 Guido Günther 提交于
-
由 Daniel P. Berrange 提交于
* autobuild.sh: Disable esx/phyp build on mingw32 * configure.in: Fix handling of --without-phyp so it actually works * libvirt.spec.in: Add missing interface.rng * mingw32-libvirt.spec.in: Disable phyp/esx drivers * src/phyp/phyp_driver.c: Fix missing i18n of error messages
-
由 Pritesh Kothari 提交于
* src/vbox/vbox_driver.c: remove some old 2.5 switches and plug the 3.0 driver * src/vbox/vbox_V3_0.c src/vbox/vbox_CAPI_v3_0.h: the driver for VirtualBox 3.0 * src/vbox/vbox_tmpl.c: handle the new driver and add event support * src/Makefile.am: plug in the new module
-
- 24 7月, 2009 12 次提交
-
-
由 Daniel P. Berrange 提交于
* src/cgroup.c: Fix cast to uint64 from unsigned long long
-
由 Daniel Veillard 提交于
-
由 Eduardo Otubo 提交于
Features supported: - Connects to HMC/VIOS or IVM systems. - Life cycle commands (resume and shutdown). - dumpxml - 'list' and 'list --all' What is being implemented: - better and centralized control for UUID - definexml - CPU management commands * src/domain_conf.c src/domain_conf.h: first version of the driver * configure.in src/Makefile.am include/libvirt/virterror.h src/domain_conf.[ch] src/libvirt.c src/virterror.c: glue the driver in the general framework
-
由 Jim Meyering 提交于
* docs/downloads.html.in: but will remain for sake of old links.
-
由 Daniel Veillard 提交于
-
由 Matthias Bolte 提交于
* src/esx/esx_*.[ch]: the driver, uses a remote minimal SOAP client to talk to the VI services on ESX nodes. * configure.in include/libvirt/virterror.h src/Makefile.am src/driver.h src/libvirt.c src/virterror.c: glue in the new driver
-
由 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 提交于
* src/qemu_driver.c: Place guest in cgroup upon startup. Remove cgroup upon shutdown
-
由 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
-