- 03 11月, 2009 8 次提交
-
-
由 Daniel P. Berrange 提交于
The daemonizing code lets the parent exit almost immediately. This means that it may think it has successfully started even when important failures occur like not being able to acquire the PID file. It also means network sockets are not yet open. To address this when daemonizing the parent passes an open pipe file descriptor to the child. The child does its basic initialization and then writes a status code to the pipe indicating either success, or failure. This ensures that when daemonizing, the parent does not exit until the pidfile is acquired & basic network sockets are open. Initialization of the libvirt drivers is still done asynchronously since this may take a very long time. * daemon/libvirtd.c: Force parent to stay around until basic config file, pidfile & network socket init is completed
-
由 Daniel P. Berrange 提交于
* daemon/libvirtd.c: Introduce a daemonSetupSignals() method and put all signal handling code there * daemon/libvirtd.h: Add sigread/sigwrite to qemud_server type
-
由 Yuji NISHIDA 提交于
* src/openvz/openvz_driver.c: add a new openvzDomainSetMemoryInternal() function, used to initialize the KMEMSIZE parameter of a container.
-
由 Daniel P. Berrange 提交于
The libvirt default error handling callback will print all errors to stderr. The libvirtd default logging callback will do the same. Set a no-op error handling callback in libvirtd to prevent this duplication * daemon/libvirtd.c: Register a no-op error handling function
-
由 Daniel P. Berrange 提交于
virInitialize must be the first libvirt function called to ensure threads, error handling & random number generator are all setup. Move UNIX socket directory permissions change to place of use
-
由 Daniel P. Berrange 提交于
* daemon/libvirtd.c: Change qemudNetworkInit() so that it doesn't try to free its argument, leaving the caller todo cleanup as is normal practice. Add missing policykit cleanup to qemudCleanup, and remove server watch if set. Remove duplicated call to listen() on TCP sockets
-
由 Daniel P. Berrange 提交于
Nearly all of the methods in src/util/util.h have error codes that must be checked by the caller to correct detect & report failure. Add ATTRIBUTE_RETURN_CHECK to ensure compile time validation of this * daemon/libvirtd.c: Add explicit check on return value of virAsprintf * src/conf/domain_conf.c: Add missing check on virParseMacAddr return value status & report error * src/network/bridge_driver.c: Add missing OOM check on virAsprintf and report error * src/qemu/qemu_conf.c: Add missing check on virParseMacAddr return value status & report error * src/security/security_selinux.c: Remove call to virRandomInitialize that's done in libvirt.c already * src/storage/storage_backend_logical.c: Add check & log on virRun return status * src/util/util.c: Add missing checks on virAsprintf/Run status * src/util/util.h: Annotate all methods with ATTRIBUTE_RETURN_CHECK if they return an error status code * src/vbox/vbox_tmpl.c: Add missing check on virParseMacAddr * src/xen/xm_internal.c: Add missing checks on virAsprintf * tests/qemuargv2xmltest.c: Remove bogus call to virRandomInitialize()
-
由 Daniel P. Berrange 提交于
The virDomainObjPtr object stores state about a running domain. This object is shared across all drivers so it is not appropriate to include driver specific state here. This patch adds the ability to request a blob of private data per domain object instance. The driver must provide a allocator & deallocator for this purpose THis patch abuses the virCapabilitiesPtr structure for storing the allocator/deallocator callbacks, since it is already being abused for other internal things relating to parsing. This should be moved out into a separate object at some point. * src/conf/capabilities.h: Add privateDataAllocFunc and privateDataFreeFunc fields * src/conf/domain_conf.c: Invoke the driver allocators / deallocators when creating/freeing virDomainObjPtr instances. * src/conf/domain_conf.h: Pass virCapsPtr into virDomainAssignDef to allow access to the driver specific allocator function * src/lxc/lxc_driver.c, src/opennebula/one_driver.c, src/openvz/openvz_driver.c, src/qemu/qemu_driver.c, src/test/test_driver.c, src/uml/uml_driver.c: Update for change in virDomainAssignDef contract
-
- 02 11月, 2009 2 次提交
-
-
由 Matthias Bolte 提交于
__in6_u.__u6_addr16 is the private name for this struct member, s6_addr16 is the public one * src/util/network.c: dont use the private field, but the public one.
-
由 Matthew Booth 提交于
* src/util/network.[ch] Add functions for address->text and get/set port number * src/libvirt_private.syms: add new entry points
-
- 30 10月, 2009 5 次提交
-
-
由 Matthew Booth 提交于
* src/util/network.c: fix a few typo
-
由 Daniel Veillard 提交于
* src/libvirt_private.syms: keep all symbols from network.h private
-
由 Daniel Veillard 提交于
* src/util/network.h src/util/network.c: utilities to parse network addresses, check netmask and compute ranges
-
由 Pritesh Kothari 提交于
* configure.in: the PKG_CHECK_MODULES() for it would not work on Ubuntu and SuSE, so add a direct check fallback
-
由 Daniel Veillard 提交于
John Levon raised the issue that remoteIOEventLoop() poll call was reissued after EINTR was caught making it uninterruptible. * src/remote/remote_driver.c: catch EAGAIN instead as suggested by Richard Jones
-
- 29 10月, 2009 2 次提交
-
-
由 Daniel P. Berrange 提交于
The current virDomainObjListPtr object stores domain objects in an array. This means that to find a particular objects requires O(n) time, and more critically acquiring O(n) mutex locks. The new impl replaces the array with a virHashTable, keyed off UUID. Finding a object based on UUID is now O(1) time, and only requires a single mutex lock. Finding by name/id is unchanged in complexity. In changing this, all code which iterates over the array had to be updated to use a hash table iterator function callback. Several of the functions which were identically duplicating across all drivers were pulled into domain_conf.c * src/conf/domain_conf.h, src/conf/domain_conf.c: Change virDomainObjListPtr to use virHashTable. Add a initializer method virDomainObjListInit, and rename virDomainObjListFree to virDomainObjListDeinit, since its not actually freeing the container, only its contents. Also add some convenient methods virDomainObjListGetInactiveNames, virDomainObjListGetActiveIDs and virDomainObjListNumOfDomains which can be used to implement the correspondingly named public API entry points in drivers * src/libvirt_private.syms: Export new methods from domain_conf.h * src/lxc/lxc_driver.c, src/opennebula/one_driver.c, src/openvz/openvz_conf.c, src/openvz/openvz_driver.c, src/qemu/qemu_driver.c, src/test/test_driver.c, src/uml/uml_driver.c, src/vbox/vbox_tmpl.c: Update all code to deal with hash tables instead of arrays for domains
-
由 Mark McLoughlin 提交于
There's a long known issue where if you install libvirt in a guest, the default virtual network will conflict with the default virtual network in the host. That's one of the reasons we have the libvirt-client RPM - it allows you to install the client library without having the host side installed. Rich Jones points out that if you install libvirt-devel in a guest, then you get libvirtd installed and the network conflict: https://bugzilla.redhat.com/531200 libvirt-devel should only require libvirt-client - e.g. nothing in the devel package pertains to anything in the libvirt RPM. The Fedora packaging guidelines say: https://fedoraproject.org/wiki/Packaging/Guidelines#Devel_Packages Devel packages must require the base package using a fully versioned dependency ... But for all intents and purposes, libvirt-client is our base RPM. * libvirt.spec.in: make libvirt-devel require libvirt-client
-
- 28 10月, 2009 10 次提交
-
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
The xen driver will generate a migration port if only a hostname is passed in the optional migrate URI, so let's do the same in qemu.
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
The results are hardcoded into the test driver, no option to read from a testfile is implemented at this time.
-
由 Cole Robinson 提交于
This will simplify adding FindPoolSources support to more pool backends in the future (as well as the test driver).
-
由 Cole Robinson 提交于
Similar in theory to *AssignDef type functions, this duplicate functionality will be used by an future FindPoolSources implementations.
-
由 Cole Robinson 提交于
We need to parse a source XML block for FindPoolSources, so this is a step in sharing the parsing. The new storage pool XML 2 XML tests cover this area pretty well to ensure we aren't causing regressions.
-
由 Chris Lalancette 提交于
Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Paolo Bonzini 提交于
This patch adds an optional attribute to the <bootp> tag, that allows to specify a TFTP server address other than the address of the DHCP server itself. This can be used to forward the BOOTP settings of the host down to the guest. This is something that configurations such as Xen's default network achieve naturally, but must be done manually for NAT. * docs/formatnetwork.html.in: Document new attribute. * docs/schemas/network.rng: Add it to schema. * src/conf/network_conf.h: Add it to struct. * src/conf/network_conf.c: Add it to parser and pretty printer. * src/network/bridge_driver.c: Put it in the dnsmasq command line. * tests/networkxml2xmlin/netboot-proxy-network.xml tests/networkxml2xmlout/netboot-proxy-network.xml tests/networkxml2xmltest.c: add new tests
-
- 27 10月, 2009 4 次提交
-
-
由 Cole Robinson 提交于
-
由 Dan Kenigsberg 提交于
-
由 Matthias Bolte 提交于
In xenInotifyXendDomainsDirLookup() the wrong UUID variable is used to search in the config info list. In xenInotifyEvent() the event is dispatched if it's NULL. Both were introduced in bc898df2.
-
由 Matthias Bolte 提交于
* src/qemu/qemu_conf.c: change the error message to refer to 'cgroup_controllers' instead of 'cgroup_device_acl'
-
- 26 10月, 2009 9 次提交
-
-
由 Chris Lalancette 提交于
We should always be using virGetHostname in place of gethostname; thus add in a new syntax-check rule to make sure no new uses creep in. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
Make a pass over the syntax-check files, tightening up regex's, un-ignoring certain files, and cleaning things up. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
We can slightly tighten up the regex's used to detect the use of nonreentrant functions. We can also check src/util/virterror.c by modifying a comment; I think it's worth it to get the additional coverage. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
-
由 Chris Lalancette 提交于
xenUnifiedDomainEventRegister() calls out to virDomainEventCallbackListAdd(), which increments the reference count on the connection. That is fine, but then xenUnifiedDomainEventRegister() increments the usage count again, leading to a usage count leak. Remove the increment in the xen register, and the UnrefConnect in the xen unregister. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
(original patch from Charles Duffy) Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
Signed-off-by: NChris Lalancette <clalance@redhat.com>
-