1. 01 10月, 2009 4 次提交
    • C
      Various monitor improvements for migration. · 7cc1491d
      Chris Lalancette 提交于
      The upcoming tunnelled migration needs to be able to set
      a migration in progress in the background, as well as
      be able to cancel a migration when a problem has happened.
      This patch allows for both of these to properly work.
      Signed-off-by: NChris Lalancette <clalance@redhat.com>
      7cc1491d
    • M
      Fix USB device re-labelling · 1daea0c5
      Mark McLoughlin 提交于
      A simple misplaced break out of a switch results in:
      
        libvir: error : Failed to open file '/sys/bus/pci/devices/0000:00:54c./vendor': No such file or directory
        libvir: error : Failed to open file '/sys/bus/pci/devices/0000:00:54c./device': No such file or directory
        libvir: error : this function is not supported by the hypervisor: Failed to read product/vendor ID for 0000:00:54c.
      
      when trying to passthrough a USB host device to qemu.
      
      * src/security_selinux.c: fix a switch/break thinko
      1daea0c5
    • D
      Avoid a libvirtd crash on broken input 523418 · 79d233b5
      Daniel Veillard 提交于
      * src/conf/domain_conf.c: a simple typo in an XML domain file could lead
        to a crash, because we called STRPREFIX() on the looked up value without
        checking it was non-null.
      79d233b5
    • F
      Incorrect error message in virDomainNetDefParseXML · b3797902
      Florian Vichot 提交于
      * src/conf/domain_conf.c: when declaring a <interface type="bridge">
        tag, <source> needs a "bridge" attribute, but the parser complains
        about a missing "dev" attribute.
      b3797902
  2. 30 9月, 2009 18 次提交
  3. 29 9月, 2009 18 次提交
    • P
      VBox vboxDomainDestroy forgot to wait for completion · 970135f6
      Pritesh Kothari 提交于
      * src/vbox/vbox_tmpl.c: the vboxDomainDestroy forgot to wait for
        completion of the PowerDown command
      970135f6
    • D
      Remove hand-crafted UUID parsers · d9b285d7
      Daniel P. Berrange 提交于
      * src/libvirt.c: Remove hand-crafted UUID parsers in favour of
        calling virParseUUID
      d9b285d7
    • D
      Allow control over QEMU audio backend · b08e6d38
      Daniel P. Berrange 提交于
      When using VNC for graphics + keyboard + mouse, we shouldn't
      then use the host OS for audio. Audio should go back over
      VNC.
      
      When using SDL for graphics, we should use the host OS for
      audio since that's where the display is. We need to allow
      certain QEMU env variables to be passed through to guest
      too to allow choice of QEMU audio backend.
      
      * qemud/libvirtd.sysconf: Mention QEMU/SDL audio env vars
      * src/qemu_conf.c: Passthrough QEMU/SDL audio env for SDL display,
        disable host audio for VNC display
      b08e6d38
    • D
      Handle data streams in remote client · 401c4048
      Daniel P. Berrange 提交于
      * src/remote_internal.c: Add helper APIs for processing data streams
      401c4048
    • D
      Handle outgoing data streams in libvirtd · 4f17809a
      Daniel P. Berrange 提交于
      * daemon/dispatch.c: Set streamTX flag on outgoing data packets
      * daemon/qemud.h: Add streamTX flag to track outgoing data
      * daemon/qemud.c: Re-enable further TX when outgoing data packet
        has been fully sent.
      * daemon/stream.h, daemon/stream.c: Add method for enabling TX.
        Support reading from streams and transmitting data out to client
      4f17809a
    • D
      Handle incoming data streams in libvirtd · d790a66d
      Daniel P. Berrange 提交于
      * daemon/stream.c: Handle incoming stream data packets, queuing until
        stream becomes writable. Handle stream completion handshake
      * po/POTFILES.in: Add daemon/stream.c
      d790a66d
    • D
      Helper functions for processing data streams in libvirtd · 11573f3e
      Daniel P. Berrange 提交于
      Defines the extensions to the remote protocol for generic
      data streams. Adds a bunch of helper code to the libvirtd
      daemon for working with data streams.
      
      * daemon/Makefile.am: Add stream.c/stream.h to build
      * daemon/stream.c, qemud/stream.h: Generic helper functions for
        creating new streams, associating streams with clients, finding
        existing streams for a client and removing/deleting streams.
      * src/remote/remote_protocol.x: Add a new 'REMOTE_STREAM' constant
        for the 'enum remote_message_type' for encoding stream data
        in wire messages. Add a new 'REMOTE_CONTINUE' constant to
        'enum remote_message_status' to indicate further data stream
        messsages are expected to follow.  Document how the
        remote_message_header is used to encode data streams
      * src/remote/remote_protocol.h: Regenerate
      * daemon/dispatch.c: Remove assumption that a error message
        sent to client is always type=REMOTE_REPLY. It may now
        also be type=REMOTE_STREAM. Add convenient method for
        sending outgoing stream data packets. Log and ignore
        non-filtered incoming stream packets. Add a method for
        serializing a stream error message
      * daemon/dispatch.h:  Add API for serializing stream errors
        and sending stream data packets
      * daemon/qemud.h: Add struct qemud_client_stream for tracking
        active data streams for clients. Tweak filter function
        operation so that it accepts a client object too.
      * daemon/qemud.c: Refactor code for free'ing message objects
        which have been fully transmitted into separate method.
        Release all active streams when client shuts down. Change
        filter function to be responsible for queueing the message
      11573f3e
    • D
      Add public API definition for data stream handling · 182eba1b
      Daniel P. Berrange 提交于
      * include/libvirt/libvirt.h.in: Public API contract for
        virStreamPtr object
      * src/libvirt_public.syms: Export data stream APIs
      * src/libvirt_private.syms: Export internal helper APIs
      * src/libvirt.c: Data stream API driver dispatch
      * src/datatypes.h, src/datatypes.c: Internal helpers for virStreamPtr
        object
      * src/driver.h: Define internal driver API for streams
      * .x-sc_avoid_write: Ignore src/libvirt.c because it trips
        up on comments including write()
      * python/Makefile.am: Add libvirt-override-virStream.py
      * python/generator.py: Add rules for virStreamPtr class
      * python/typewrappers.h, python/typewrappers.c: Wrapper
        for virStreamPtr
      * docs/libvirt-api.xml, docs/libvirt-refs.xml: Regenerate
        with new APIs
      182eba1b
    • P
      Vbox call OpenHardDisk with "" instead of NULL · d9e66a62
      Pritesh Kothari 提交于
      * src/vbox/vbox_tmpl.c: UTF-16 fixed version of Florian Vichot initial
        patch
      d9e66a62
    • J
      Avoid double free in errors in virsh · 1caa19cb
      Jim Fehlig 提交于
      * tools/virsh.c: it was possible to get vshDeinit to call itself back
        via vshError, remove the doexit parameter of vshError to avoid the
        possibility and make sure to exit directly after in those case.
      1caa19cb
    • D
      Fix crash in device hotplug cleanup code · 879cd8cc
      Daniel P. Berrange 提交于
      * src/qemu/qemu_driver.c: Fix crash in scenario where XML
        parsing of hotplugged device failed & thus 'dev' is NULL
      879cd8cc
    • D
      Standardize debugging messages in QEMU monitor code · 46da3550
      Daniel P. Berrange 提交于
      * src/qemu/qemu_monitor_text.c: Always print command and reply
        in qemuMonitorCommandWithHandler. Print all args in each monitor
        command API & remove redundant relpy printing
      46da3550
    • D
      Remove low level monitor APIs from header file · 79f45855
      Daniel P. Berrange 提交于
      * src/qemu/qemu_monitor_text.h: Remove qemudMonitorCommand,
        qemudMonitorCommandWithFd, qemudMonitorCommandWithHandler,
        qemudMonitorCommandExtra low level APIs
      * src/qemu/qemu_monitor_text.c: Replace s/qemud/qemuMonitor/
      79f45855
    • D
      Add API for issuing 'host_net_remove' monitor command · b06c97e5
      Daniel P. Berrange 提交于
      * src/qemu/qemu_monitor.h, src/qemu/qemu_monitor.c: Add new
        qemuMonitorRemoveHostNetwork() command for removing host
        networks
      * src/qemu/qemu_driver.c: Convert NIC hotplug methods over
        to use qemuMonitorRemoveHostNetwork()
      b06c97e5
    • D
      Add API for issuing 'host_net_add' monitor command · 4c10127b
      Daniel P. Berrange 提交于
      * src/qemu/qemu_conf.h, src/qemu/qemu_conf.c: Remove prefix arg
        from qemuBuildHostNetStr which is no longer required
      * src/qemu/qemu_driver.c: Refactor to use qemuMonitorAddHostNetwork()
        API for adding host network
      * src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h: Add new
        qemuMonitorAddHostNetwork() method for adding host networks
      4c10127b
    • D
      Add API for issuing 'pci_add nic' monitor command · f8d54e7c
      Daniel P. Berrange 提交于
      * src/qemu/qemu_conf.c: Remove separator from qemuBuildNicStr()
        args, and remove hardcoded 'nic' prefix. Leave it upto callers
        instead
      * src/qemu/qemu_driver.c: Switch over to using the new
        qemuMonitorAddPCINetwork() method for NIC hotplug
      * src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h: Add new
        qemuMonitorAddPCINetwork API for PCI network device hotplug
      f8d54e7c
    • D
      Add API for issuing 'getfd' and 'closefd' monitor commands · aadab515
      Daniel P. Berrange 提交于
      * src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h: Add new
        qemuMonitorCloseFileHandle and qemuMonitorSendFileHandle
        APIs for processing file handles
      * src/qemu/qemu_driver.c: Convert NIC hotplug method over to
        use   qemuMonitorCloseFileHandle and qemuMonitorSendFileHandle
      aadab515
    • D
      Add API for issuing 'pci_add storage' monitor command · 85df9339
      Daniel P. Berrange 提交于
      * src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h: Add new
        API qemuMonitorAddPCIDisk()
      * src/qemu/qemu_driver.c: Convert over to using the new
        qemuMonitorAddPCIDisk() method, and remove now obsolete
        qemudEscape() method
      85df9339