- 25 6月, 2011 17 次提交
-
-
由 Taku Izumi 提交于
This patch implements the code to address the new API (virDomainGetVcpupinInfo) in the qemu driver. Signed-off-by: NTaku Izumi <izumi.taku@jp.fujitsu.com>
-
由 Taku Izumi 提交于
This patch introduces a new libvirt API (virDomainGetVcpupinInfo), as a counterpart to virDomainPinVcpuFlags. We can use virDomainGetVcpus API to retrieve CPU affinity information, but can't use this API against inactive domains (at least in case of KVM), as it lacks a flags parameter. The usual thing is to add a new virDomainGetVcpusFlags, but that API name is already occupied by the counterpart to virDomainGetMaxVcpus, which has a completely different signature. The virDomainGetVcpupinInfo is the new API to retrieve CPU affinity information of active and inactive domains. While the usual convention is to list an array before its length, this API violates that rule in order to be more like virDomainGetVcpus (where maxinfo was doing double-duty as the length of two different arrays). Signed-off-by: NTaku Izumi <izumi.taku@jp.fujitsu.com>
-
由 Laine Stump 提交于
The sub-elements of <ip> had been placed at the same level of indentation as ip itself, implying that they were really elements of <network>. Within that, sub-elements of ip/dhcp were also at that same level. These have been double-indented. At the same time, I realized that the documentation for the new <dns> element had been placed right in the middle of the description of the sub-elements of <ip>. I moved it up out of the way.
-
由 Eric Blake 提交于
It's unlikely that we'll ever want to escape a string as long as INT_MAX/6, but adding this check can't hurt. * src/util/buf.c (virBufferEscapeSexpr, virBufferEscapeString): Check for (unlikely) overflow.
-
由 Eric Blake 提交于
Integer overflow and remote code are never a nice mix. This has existed since commit 56cd4140. * src/libvirt.c (virDomainGetVcpus): Reject overflow up front. * src/remote/remote_driver.c (remoteDomainGetVcpus): Avoid overflow on sending rpc. * daemon/remote.c (remoteDispatchDomainGetVcpus): Avoid overflow on receiving rpc.
-
由 Eric Blake 提交于
Done as a separate commit to make backporting the next patch easier. We are already using "intprops.h", but this makes it explicit. * .gnulib: Update, for syntax-check fix. * bootstrap.conf (gnulib_modules): Make intprops use explicit. * src/locking/domain_lock.c (includes): Drop unused header. * src/nwfilter/nwfilter_learnipaddr.c (includes): Use "", not <>, for gnulib.
-
由 Eric Blake 提交于
'make syntax-check' regression introduced in commit 60b9c693. * tests/networkxml2argvdata/*.argv: Break long lines.
-
由 Matthias Bolte 提交于
-
由 Matthias Bolte 提交于
Triggered a linker error on MinGW.
-
由 Michal Novotny 提交于
This commit introduces names definition for the DNS hosts file using the following syntax: <dns> <host ip="192.168.1.1"> <name>alias1</name> <name>alias2</name> </host> </dns> Some of the improvements and fixes were done by Laine Stump so I'm putting him into the SOB clause again ;-) Signed-off-by: NMichal Novotny <minovotn@redhat.com> Signed-off-by: NLaine Stump <laine@laine.org>
-
由 Michal Novotny 提交于
Signed-off-by: NMichal Novotny <minovotn@redhat.com>
-
由 Michal Novotny 提交于
The regression testing done by comparison of command-line generated from the network XML file and the expected command-line arguments (read from file). Signed-off-by: NMichal Novotny <minovotn@redhat.com>
-
由 Michal Novotny 提交于
The dnsmasq commandline was being built as a part of running dnsmasq. This patch puts the commandline build into a separate function (and exports it as a private API) making it possible to build a dnsmasq commandline without executing it, so that we can write a test program to verify that the proper commandlines are being created. Signed-off-by: NMichal Novotny <minovotn@redhat.com>
-
由 Michal Novotny 提交于
This commit introduces the <dns> element and <txt> record for the virtual DNS network. The DNS TXT record can be defined using following syntax in the network XML file: <dns> <txt name="example" value="example value" /> </dns> Also, the Relax-NG scheme has been altered to allow the texts without spaces only for the name element and some nitpicks about memory free'ing have been fixed by Laine so therefore I'm adding Laine to the SOB clause ;-) Signed-off-by: NMichal Novotny <minovotn@redhat.com> Signed-off-by: NLaine Stump <laine@laine.org>
-
由 Matthias Bolte 提交于
Commit cd48c3f4 added a Py_ssize_t typedef for Python < 2.7. But Py_ssize_t was added in Python 2.5. This makes the build fail for Python 2.6. Adjust the check to match Python < 2.5 to fix this.
-
由 Matthias Bolte 提交于
getifaddrs can return an IPv6 address, but getaddrinfo can fail for an IPv6 address. Cover this combination.
-
由 Jamie Strandboge 提交于
Commit 12317957 introduced an incompatible architectural change for the AppArmor security driver. Specifically, virSecurityManagerSetAllLabel() is now called much later in src/qemu/qemu_process.c:qemuProcessStart(). Previously, SetAllLabel() was called immediately after GenLabel() such that after the dynamic label (profile name) was generated, SetAllLabel() would be called to create and load the AppArmor profile into the kernel before qemuProcessHook() was executed. With 12317957, qemuProcessHook() is now called before SetAllLabel(), such that aa_change_profile() ends up being called before the AppArmor profile is loaded into the kernel (via ProcessLabel() in qemuProcessHook()). This patch addresses the change by making GenLabel() load the AppArmor profile into the kernel after the label (profile name) is generated. SetAllLabel() is then adjusted to only reload_profile() and append stdin_fn to the profile when it is specified. This also makes the AppArmor driver work like its SELinux counterpart with regard to SetAllLabel() and stdin_fn. Bug-Ubuntu: https://launchpad.net/bugs/801569
-
- 24 6月, 2011 23 次提交
-
-
由 Eric Blake 提交于
When adding virDomainGetVcpusFlags in commit ea3f5c68, I did enough rebasing that the doc comments in libvirt.c no longer matched the final chosen enum names in libvirt.h. And now we've gone ahead and deprecated the names VIR_DOMAIN_VCPU_{LIVE,CONFIG}. * src/libvirt.c (virDomainGetVcpusFlags): Fix comment.
-
由 Eric Blake 提交于
This reverts commit 7d56a16d. Conflicts: python/generator.py src/libvirt_public.syms
-
由 Eric Blake 提交于
This reverts commit 6419f596.
-
由 Eric Blake 提交于
This reverts commit d1693bb1. Conflicts: daemon/remote.c src/remote/remote_driver.c src/remote/remote_protocol.x
-
由 Eric Blake 提交于
This reverts commit 784ee08d.
-
由 Eric Blake 提交于
This reverts commit 3e2493ce.
-
由 Eric Blake 提交于
This reverts commit d74b86f5. Conflicts: python/generator.py
-
由 Eric Blake 提交于
This reverts commit 12cd77a0. Conflicts: python/libvirt-override-virConnect.py python/libvirt-override.c src/remote/remote_protocol.x
-
由 Eric Blake 提交于
I'm not sure when Py_ssize_t was introduced; but Fedora 14 Python 2.7 has it, while RHEL 5 Python 2.4 lacks it. It should be easy enough to adjust if someone runs into problems. * python/typewrappers.h (Py_ssize_t): Define for older python.
-
由 Eric Blake 提交于
Use NUMA's older nodemask_t (fixed-size map) rather than the newer 'struct bitmask' (variable-size) in order to still compile on RHEL 5, with its numactl-devel-0.9.8. * src/qemu/qemu_process.c [HAVE_NUMA]: Prefer back-compat mode. (qemuProcessInitNumaMemoryPolicy): Use older nodemask_t.
-
由 Minoru Usui 提交于
* src/util/sysinfo.[ch]: also parse and save all the SMBIOS informations about memory modules
-
由 Minoru Usui 提交于
* src/util/sysinfo.c: add parsing and formatting of processor information data
-
由 Minoru Usui 提交于
* src/util/sysinfo.c: Separate BIOSInfo and SystemInfo part from virSysinfoRead()
-
由 Daniel P. Berrange 提交于
To ensure virnetprotocol.[ch] are generated before any other files, add them to BUILT_SOURCES and MAINTAINERCLEANFILES. At the same time, move ESX_DRIVER_GENERATED out of DISTCLEAN and into MAINTAINERCLEANFILES, since they are included in EXTRA_DIST * src/Makefile.am: Add virnetprotocol.[ch] to BUILT_SOURCES
-
由 Eric Blake 提交于
* src/xenxs/xen_sxpr.c (xenParseSxprPCI): Comment fix. * tests/object-locking.ml (driverTables): Likewise. * tests/testutils.c (virtTestDifferenceBin): Likewise.
-
由 Daniel P. Berrange 提交于
The Makefile.am rules for generating RPC protocol had a couple of bugs - A instance of remote/rpcgen_fix.pl was not changed to rpc/genprotocol.pl - A dep from rpc/virnetmessage.h on the generated rpc/virnetprotocol.h was missing - The generated rpc/virnetprotocol.[ch] were not listed in MAINTAINERCLEANFILES * Makefile.am: Fix RPC protocol generation
-
由 Daniel P. Berrange 提交于
* src/qemu/qemu_process.c: Add missing _(...)
-
由 Daniel P. Berrange 提交于
The qemuMigrationPrepareDirect/PrepareTunnel methods accidentally set the domain job to QEMU_JOB_MIGRATION_OUT when it should have been QEMU_JOB_MIGRATION_IN. This didn't have any ill-effect, but it is none-the-less wrong. * src/qemu/qemu_migration.c: Fix job type
-
由 Daniel P. Berrange 提交于
The code emitting taint warnings was mistakenly thinking that guests run from the QEMU session driver were tainted for having high privileges. This is of course nonsense since the session driver is always unprivileged * src/qemu/qemu_domain.c: Don't warn for high privileges in non-privileged QEMU
-
由 Daniel P. Berrange 提交于
If an application is using libvirt + KVM as a piece of its internal infrastructure to perform a specific task, it can be desirable to guarentee the VM dies when the virConnectPtr disconnects from libvirtd. This ensures the app can't leak any VMs it was using. Adding VIR_DOMAIN_START_AUTOKILL as a flag when starting guests enables this to be done. * include/libvirt/libvirt.h.in: All VIR_DOMAIN_START_AUTOKILL * src/qemu/qemu_driver.c: Support automatic killing of guests upon connection close * tools/virsh.c: Add --autokill flag to 'start' and 'create' commands
-
由 Daniel P. Berrange 提交于
Migration is a multi-step process 1. Begin(src) 2. Prepare(dst) 3. Perform(src) 4. Finish(dst) 5. Confirm(src) At step 2, a QEMU process is lauched in the destination to accept the incoming migration. Occasionally the process that is controlling the migration workflow aborts, and fails to call step 4, Finish. This leaves a QEMU process running on the target (albeit with paused CPUs). Unfortunately because step 2 actives a job on the QEMU process, it is unkillable by normal means. By registering the VM for autokill against the src virConnectPtr in step 2, we can ensure that the guest is forcefully killed off if the connection is closed without step 4 being invoked * src/qemu/qemu_migration.c: Register autokill in PrepareDirect and PrepareTunnel. Unregister autokill on successful run of Finish * src/qemu/qemu_process.c: Unregister autokill when stopping a process
-
由 Daniel P. Berrange 提交于
Sometimes it is useful to be able to automatically destroy a guest when a connection is closed. For example, kill an incoming migration if the client managing the migration dies. This introduces a map between guest 'uuid' strings and virConnectPtr objects. When a connection is closed, any associated guests are killed off. * src/qemu/qemu_conf.h: Add autokill hash table to qemu driver * src/qemu/qemu_process.c, src/qemu/qemu_process.h: Add APIs for performing autokill of guests associated with a connection * src/qemu/qemu_driver.c: Initialize autodestroy map
-
由 Daniel P. Berrange 提交于
For controlled shutdown we issue a 'system_powerdown' command to the QEMU monitor. This triggers an ACPI event which (most) guest OS wire up to a controlled shutdown. There is no equiv ACPI event to trigger a controlled reboot. This patch attempts to fake a reboot. - In qemuDomainObjPrivatePtr we have a bool fakeReboot flag. - The virDomainReboot method sets this flag and then triggers a normal 'system_powerdown'. - The QEMU process is started with '-no-shutdown' so that the guest CPUs pause when it powers off the guest - When we receive the 'POWEROFF' event from QEMU JSON monitor if fakeReboot is not set we invoke the qemuProcessKill command and shutdown continues normally - If fakeReboot was set, we spawn a background thread which issues 'system_reset' to perform a warm reboot of the guest hardware. Then it issues 'cont' to start the CPUs again * src/qemu/qemu_command.c: Add -no-shutdown flag if we have JSON support * src/qemu/qemu_domain.h: Add 'fakeReboot' flag to qemuDomainObjPrivate struct * src/qemu/qemu_driver.c: Fake reboot using the system_powerdown command if JSON support is available * src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h, src/qemu/qemu_monitor_json.c, src/qemu/qemu_monitor_json.h, src/qemu/qemu_monitor_text.c, src/qemu/qemu_monitor_text.h: Add binding for system_reset command * src/qemu/qemu_process.c: Reset the guest & start CPUs if fakeReboot is set
-