- 21 7月, 2009 7 次提交
-
-
由 Laine Stump 提交于
* test.c: includes an interface driver to the test framework
-
由 Daniel Veillard 提交于
-
由 Laine Stump 提交于
* interface_conf.c interface_conf.h: utilities function usful for interface driver like the test interface driver
-
由 Laine Stump 提交于
MAC address of a particular interface may change over time, and the reduced virInterface object (which contains just name and mac) needs to reflect these changes. Since we can't modify the mac address of an existing virInterface (some other thread may currently be using it) we just create a new virInterface, and let the old one die a dignified death when its refct goes to 0. * src/datatypes.c: fix the matching and lifetime of virInterface object accordingly
-
由 Laine Stump 提交于
* include/libvirt/virterror.h src/virterror.c: if a driver's virInterfaceLookupByMACString() function finds more than one interface with the desired MAC Address, this new error is raised.
-
由 Jun Koi 提交于
* src/qemu_driver.c: qemudOpenMonitorUnix() had an uninitialized loop counter
-
由 Daniel Veillard 提交于
* libvirt.spec.in: make a client rpm with shared libs, client binaries and resources needed by those, and a small number of fixes and cleanups in the spec file.
-
- 17 7月, 2009 19 次提交
-
-
由 Jim Meyering 提交于
* docs/Makefile.am ($(top_builddir)/NEWS): Adjust rule to filter out any trailing blank lines when generating this file. * NEWS: Regenerate, so that it contains entries for 0.6.5.
-
由 Daniel Veillard 提交于
* src/virsh.c: a bit of cleanup on previous commit
-
由 Laine Stump 提交于
* src/virsh.c: add a number of interface related commands: iface-list, iface-name, iface-mac, iface-dumpxml, iface-define, iface-undefine, iface-edit, iface-start and iface-destroy
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
Unlike the pty monitor (which we know exists since we scrape its path from stdout), we have no way of knowing that the unix monitor socket should exist/ be initialized. As a result, some of my KVM guests randomly fail to start on F10 host. Try to open the unix socket in a 3 second timeout loop. Ignore EACCES (path does not exist if a first time run) and ECONNREFUSED (leftover socket from a previous run hasn't been removed yet). Fixes things for me.
-
由 Cole Robinson 提交于
With the previous refactoring, this is a simple process, since the global 'CreateBlockFrom' in storage_backend does all the work.
-
由 Cole Robinson 提交于
We don't gain any space savings, so skip the detection to speed up the cloning operation.
-
由 Cole Robinson 提交于
Add a 'CreateBlockFrom' in the global storage_backend, which sets up the destination block device: CopyFromFD does the rest of the cloning.
-
由 Cole Robinson 提交于
The CreateRaw function has some 'file' only assumptions, so break the agnostic cloning bits to a separate function.
-
由 Cole Robinson 提交于
Have storage building functions be definitions of virStorageBackendBuildVolFrom: we will need to do this in the future anyways if we ever support the flags attribute.
-
由 Cole Robinson 提交于
These will be used by other pool cloning implementations.
-
由 Cole Robinson 提交于
Break out separate functions for - Determining the supported '*-img' tool, - The tool's associated create function, - Desired function for cloning (CreateXMLFrom). This will be eventually used to unify cloning across all backends.
-
由 Cole Robinson 提交于
We need to unlock the first pool before looking up the second, since the search locks every pool it checks.
-
由 Cole Robinson 提交于
There isn't any way to dictate allocation when creating disk volumes, so capacity is the only relevant value.
-
由 Cole Robinson 提交于
Currently, if no format is specified for a new disk volume, we pass the invalid value "none" as the FS type to 'parted mkpart'. There doesn't seem to be a way to have parted not format the drive, so just default to using 'ext2' in this case: this shouldn't cause any harm, since we are creating a new partition in the first place.
-
由 Cole Robinson 提交于
Remove unneeded target path duplication, which could carelessly dereference NULL. Make it clear where 'key' is actually filled in.
-
由 Cole Robinson 提交于
Typo was breaking 'parthelper -g', preventing disk pool definition.
-
由 Jim Meyering 提交于
The code in cfg.mk to detect when the git submodule was out of date worked most of the time, but not when checked out in a certain way. * cfg.mk: Extract submodule hash from command output and file, and compare only that, since the format of the full line may vary. Reported by Mike Burns, with some diagnosis by Daniel P Berrange.
-
由 Daniel P. Berrange 提交于
* configure.in: Add --with-qemu-user and --with-qemu-group args * libvirt.spec.in: use 'qemu' for user/group for Fedora >= 12 * qemud/libvirtd_qemu.arg, qemud/test_libvirtd_qemu.aug, src/qemu.conf: Add 'user' and 'group' args for configuration * src/Makefile.am: Create %localstatedir/cache/libvirt/qemu * src/qemu_conf.c, src/qemu_conf.h: Load user/group from config * src/qemu_driver.c: Change user ID/group ID when launching QEMU guests. Change user/group ownership on disks/usb/pci devs. Put memory dumps in %localstatedir/cache/libvirt/qemu * src/util.c, src/util.h: Add convenient APIs for converting username/groupname to user ID / group ID
-
- 16 7月, 2009 14 次提交
-
-
由 Laine Stump 提交于
* src/driver.h: add new driver functions virDrvNumOfDefinedInterfaces and virDrvListDefinedInterfaces * src/libvirt.c: implements the entry points, calling new driver functions * qemud/remote.c qemud/remote_dispatch_args.h qemud/remote_protocol.[chx] qemud/remote_dispatch_prototypes.h qemud/remote_dispatch_ret.h qemud/remote_dispatch_table.h src/remote_internal.c: implement the client/server side of the RPC
-
由 Laine Stump 提交于
* include/libvirt/libvirt.h[.in]: adds signatures for the new exported functions virConnectNumOfDefinedInterfaces and virConnectListDefinedInterfaces * src/libvirt_public.syms: export the new symbols
-
由 Daniel Veillard 提交于
* libvirt.spec.in: we were still using deprecated configure switches
-
由 Daniel P. Berrange 提交于
This renames a lot of the methods in the remote driver client to more accurately reflect their responsibility of IO handling vs message handling.
-
由 Daniel P. Berrange 提交于
Remove redundant error reporting functions which obscured the filename/line number reporting. Removed code which created a virDomain/virNetwork object, since those are silently dropped in error reporting functions now * src/remote_internal.c: Remove error() and errorf() in favour of macros, and remove server_error in favour of direct call
-
由 Daniel P. Berrange 提交于
Splits up the 'call' method moving generic IO code out into separate method to allow it to be easily reused for sending data streams * src/remote_internal.c: Split 'call' into two methods, the first with same name serializes a set of method arguments into a message, the second 'remoteIO' takes a pre-serialized messages, sends it and awaits a reply
-
由 Daniel P. Berrange 提交于
* src/remote_internal.c: Rename processCallRecvMsg to processCallDispatch, and move code specific to method replies into processCallDispatchReply, and rename processCallAsyncEvent to processCallDispatchMessage
-
由 Daniel P. Berrange 提交于
The 'remote_message_header' struct has a mis-leadingly named field 'direction'. It is really a reflection of the type of message, and some types can be sent in either direction. Thus the field is more accurately named 'type'. No function change. * qemud/remote_protocol.x: Rename 'direction' to 'type' in 'remote_message_header. Write better docs describing the message header field semantics & usage * qemud/remote_protocol.c, qemud/remote_protocol.h: Regenerate * qemud/remote.c, qemud/dispatch.c, src/remote_internal.c Update to reflect rename of 'direction' to 'type'
-
由 Daniel P. Berrange 提交于
All incoming messages currently get routed to the generic method remoteDispatchClientRequest() for processing. To allow incoming data stream messages to bypass this and be routed to a specific location, a concept of dispatch filters is introduced. * qemud/qemud.h: Add a qemud_client_filter struct and a callback qemud_client_filter_func. Maintain a list of filters on every struct qemud_client * qemud/qemud.c: Move remoteDecodeClientMessageHeader() out of qemudWorker() into qemudDispatchClientRead(). Check registered message filters in qemudDispatchClientRead() to decide where to send incoming messages for dispatch.
-
由 Daniel P. Berrange 提交于
The remoteDispatchClientRequest() method is currently hardwired to assume there is only one type of incoming message, a method call. To allow for alternate types of incoming messags, the code that is specific to method calls is being split into a separate method remoteDispatchClientCall * qemud/dispatch.c: Move method call specific code out into remoteDispatchClientCall. Add a helper remoteSerializeError for returning error messages to client
-
由 Daniel P. Berrange 提交于
The current qemudRegisterClientEvent() code is used both for registering the initial socket watch, and updating the already registered watch. This causes unneccessary complexity in alot of code which only cares about updating existing watches. The updating of a watch cannot ever fail, nor is a reference to the 'qemud_server' object required. This introduces a new qemudUpdateClientEvent() method for that case, allowing the elimination of unneccessary error checking and removal of the server back-reference in struct qemud_client. * qemud/qemud.h: Remove 'server' field from struct qemud_client. Add qemudUpdateClientEvent() method. Remove 'update' param from qemudRegisterClientEvent method * qemud/dispatch.c, qemud/qemud.c, qemud/remote.c: Update alot of code to use qemudUpdateClientEvent() instead of qemudRegisterClientEvent(). Move more logic from remoteRelayDomainEvent into remoteDispatchDomainEventSend.
-
由 Daniel P. Berrange 提交于
This removes an assumption from qemudWorker() code that every incoming message will generate a reply. * qemud/dispatch.c: remoteDispatchClientRequest now has responsibility for queuing the reply message to the RPC call * qemud/qemud.c: Do not queue the RPC call reply in qemudWorker(), allowing remoteDispatchClientRequest() to take care of it
-
由 Daniel P. Berrange 提交于
The naming convention for structs used in the RPC layer is for incoming requests to be called XXXX_args, and the associated outgoing reply to be called XXXX_ret. Asynchronously emitted messages (eg events) are re-using the XXXX_ret naming scheme. This patch changes that such that async messages are XXXX_msg, and stops adding entries for them in the dispatch table, avoiding the need for a dummy no-op implementation. * qemud/remote.c: Remove dummy remoteDispatchDomainEvent, no longer required. Update to replace remote_domain_event_ret with xdr_remote_domain_event_msg * qemud/remote_protocol.x: Rename remote_domain_event_ret to remote_domain_event_msg * qemud/remote_generate_stubs.pl: Adding handling for new XXX_msg structs. * src/remote_internal.c: Rename remote_domain_event_ret to remote_domain_event_msg * qemud/remote_dispatch_prototypes.h, qemud/remote_dispatch_ret.h, qemud/remote_dispatch_table.h, qemud/remote_protocol.h, qemud/remote_protocol.c: auto-regenerate
-
由 Daniel P. Berrange 提交于
Introduces an API for encoding the header field for outgoing messages allowing some duplicated code to be eliminated * qemud/dispatch.c, qemud/dispatch.h: add remoteEncodeClientMessageHeader for encoding message header. Update remoteDispatchClientRequest to use this method. * qemud/remote.c: Update remoteDispatchDomainEventSend to use the generic remoteEncodeClientMessageHeader() for encoding event message hedaders. Push some logic from remoteRelayDomainEvent down into remoteDispatchDomainEventSend.
-