1. 26 12月, 2011 1 次提交
  2. 25 12月, 2011 1 次提交
  3. 24 12月, 2011 1 次提交
    • E
      docs: remove stray / · d145fe3b
      Eric Blake 提交于
      Commit e5a84d74 added a new attribute in the wrong location;
      commit c8b9fa74 fixed the missing / at the end but not the extra
      / in the middle.
      
      * docs/formatdomain.html.in (elementsDisks): Fix another typo.
      d145fe3b
  4. 23 12月, 2011 3 次提交
  5. 22 12月, 2011 6 次提交
  6. 21 12月, 2011 17 次提交
  7. 20 12月, 2011 4 次提交
    • E
      rpc: handle param_int, plug memory leaks · 4e394dea
      Eric Blake 提交于
      The RPC code had several latent memory leaks and an attempt to
      free the wrong string, but thankfully nothing triggered them
      (blkiotune was the only one returning a string, and always as
      the last parameter).  Also, our cleanups for rpcgen ended up
      nuking a line of code that renders VIR_TYPED_PARAM_INT broken,
      because it was the only use of 'i' in a function, even though
      it was a member usage rather than a standalone declaration.
      
      * daemon/remote.c (remoteSerializeTypedParameters): Free the
      correct array element.
      (remoteDispatchDomainGetSchedulerParameters)
      (remoteDispatchDomainGetSchedulerParametersFlags)
      (remoteDispatchDomainBlockStatsFlags)
      (remoteDispatchDomainGetMemoryParameters): Don't leak strings.
      * src/rpc/genprotocol.pl: Don't nuke member-usage of 'buf' or 'i'.
      4e394dea
    • E
      virsh: simplify printing of typed parameters · f8616336
      Eric Blake 提交于
      No need to repeat code for formatting typed parameters.
      
      * tools/virsh.c (vshGetTypedParamValue): Support strings, and exit
      on OOM.
      (cmdSchedinfo, cmdBlkiotune, cmdMemtune, cmdBlkdeviotune): Use
      it for less code.
      f8616336
    • E
      docs: document <qemu:commandline> xml · 60f99824
      Eric Blake 提交于
      Even though we technically don't support <qemu:commandline> (as in,
      if you mis-use things, you get to keep the pieces), we should at
      least document how to use it.
      
      [See also http://berrange.com/posts/2011/12/19/using-command-line-arg-monitor-command-passthrough-with-libvirt-and-kvm/]
      
      * docs/drvqemu.html.in (qemucommand): New section.
      60f99824
    • A
      python: plug memory leak on libvirt_virConnectOpenAuth · 78496224
      Alex Jia 提交于
      * Detected by valgrind. Leak introduced in commit 5ab109f8.
      
      * python/libvirt-override.c: avoid memory leak on libvirt_virConnectOpenAuth.
      
      * How to reproduce?
      
        % valgrind -v --leak-check=full virt-clone --print-xml
        Note: it can hit the issue although options are incomplete.
      
      * Actual valgrind result:
      
      ==1801== 12 bytes in 1 blocks are definitely lost in loss record 25 of 3,270
      ==1801==    at 0x4A05FDE: malloc (vg_replace_malloc.c:236)
      ==1801==    by 0xCF1F60E: libvirt_virConnectOpenAuth (libvirt-override.c:1507)
      ==1801==    by 0x3AFEEDE7F3: PyEval_EvalFrameEx (ceval.c:3794)
      ==1801==    by 0x3AFEEDF99E: PyEval_EvalFrameEx (ceval.c:3880)
      ==1801==    by 0x3AFEEDF99E: PyEval_EvalFrameEx (ceval.c:3880)
      ==1801==    by 0x3AFEEDF99E: PyEval_EvalFrameEx (ceval.c:3880)
      ==1801==    by 0x3AFEEDF99E: PyEval_EvalFrameEx (ceval.c:3880)
      ==1801==    by 0x3AFEEE0466: PyEval_EvalCodeEx (ceval.c:3044)
      ==1801==    by 0x3AFEEE0541: PyEval_EvalCode (ceval.c:545)
      ==1801==    by 0x3AFEEFB88B: run_mod (pythonrun.c:1351)
      ==1801==    by 0x3AFEEFB95F: PyRun_FileExFlags (pythonrun.c:1337)
      ==1801==    by 0x3AFEEFCE4B: PyRun_SimpleFileExFlags (pythonrun.c:941)
      Signed-off-by: NAlex Jia <ajia@redhat.com>
      78496224
  8. 19 12月, 2011 7 次提交
    • C
      Fix typo in storage pool documentation · 6f75a28d
      Christophe Fergeau 提交于
      Remove 2 words that shouldn't be here.
      6f75a28d
    • D
      Disable python explicitly in mingw32 autobuild · 6e4750e0
      Daniel P. Berrange 提交于
      6e4750e0
    • D
      Only add the timer when a callback is registered · 707781fe
      Daniel P. Berrange 提交于
      The lifetime of the virDomainEventState object is tied to
      the lifetime of the driver, which in stateless drivers is
      tied to the lifetime of the virConnectPtr.
      
      If we add & remove a timer when allocating/freeing the
      virDomainEventState object, we can get a situation where
      the timer still triggers once after virDomainEventState
      has been freed. The timeout callback can't keep a ref
      on the event state though, since that would be a circular
      reference.
      
      The trick is to only register the timer when a callback
      is registered with the event state & remove the timer
      when the callback is unregistered.
      
      The demo for the bug is to run
      
        while true ; do date ; ../tools/virsh -q -c test:///default 'shutdown test; undefine test; dominfo test' ; done
      
      prior to this fix, it will frequently hang and / or
      crash, or corrupt memory
      707781fe
    • D
      Hide use of timers for domain event dispatch · 34ad1353
      Daniel P. Berrange 提交于
      Currently all drivers using domain events need to provide a callback
      for handling a timer to dispatch events in a clean stack. There is
      no technical reason for dispatch to go via driver specific code. It
      could trivially be dispatched directly from the domain event code,
      thus removing tedious boilerplate code from all drivers
      
      Also fix the libxl & xen drivers to pass 'true' when creating the
      virDomainEventState, since they run inside the daemon & thus always
      expect events to be present.
      
      * src/conf/domain_event.c, src/conf/domain_event.h: Internalize
        dispatch of events from timer callback
      * src/libxl/libxl_driver.c, src/lxc/lxc_driver.c,
        src/qemu/qemu_domain.c, src/qemu/qemu_driver.c,
        src/remote/remote_driver.c, src/test/test_driver.c,
        src/uml/uml_driver.c, src/vbox/vbox_tmpl.c,
        src/xen/xen_driver.c: Remove all timer dispatch functions
      34ad1353
    • D
      Remove decl of all APIs related to domain event callbacks & queues · 2c2d5337
      Daniel P. Berrange 提交于
      The virDomainEventCallbackList and virDomainEventQueue APIs are
      now solely helpers used internally by virDomainEventState APIs.
      Remove their decls from domain_event.h since no driver code should
      need to use them any more.
      
      * src/conf/domain_event.c: Make virDomainEventCallbackList and
        virDomainEventQueue APIs static & remove some unused APIs
      * src/conf/domain_event.h, src/libvirt_private.syms: Remove
        virDomainEventCallbackList and virDomainEventQueue APIs
      2c2d5337
    • D
      Remove all domain event structs from header · 06eb22df
      Daniel P. Berrange 提交于
      No caller of the domain events APIs should need to poke at the
      struct internals. Thus they should all be removed from the
      header file
      
      * src/conf/domain_event.h: Remove struct definitions
      * src/conf/domain_event.c: Add struct definitions
      06eb22df
    • D
      Convert drivers to thread safe APIs for adding callbacks · 7b87a30f
      Daniel P. Berrange 提交于
      * src/libxl/libxl_driver.c, src/lxc/lxc_driver.c,
        src/qemu/qemu_driver.c, src/remote/remote_driver.c,
        src/test/test_driver.c, src/uml/uml_driver.c,
        src/vbox/vbox_tmpl.c, src/xen/xen_driver.c: Convert
        to threadsafe APIs
      7b87a30f