1. 08 4月, 2011 5 次提交
  2. 07 4月, 2011 9 次提交
    • O
      qemu: Remove the managed state file only if restoring succeeded · a73bbfc8
      Osier Yang 提交于
      1) Both "qemuDomainStartWithFlags" and "qemuAutostartDomain" try to
      restore the domain from managedsave'ed image if it exists (by
      invoking "qemuDomainObjRestore"), but it unlinks the image even
      if restoring fails, which causes data loss. (This problem exists
      for "virsh managedsave dom; virsh start dom").
      
      The fix for is to unlink the managed state file only if restoring
      succeeded.
      
      2) For "virsh save dom; virsh restore dom;", it can cause data
      corruption if one reuse the saved state file for restoring. Add
      doc to tell user about it.
      
      3) In "qemuDomainObjStart", if "managed_save" is NULL, we shouldn't
      fallback to start the domain, skipping it to cleanup as a incidental
      fix. Discovered by Eric.
      a73bbfc8
    • W
      reattach pci devices when qemuPrepareHostdevPCIDevices() failed · a4efb2e3
      Wen Congyang 提交于
      Reattach all pci devices that we detached when qemuPrepareHostdevPCIDevices()
      failed.
      a4efb2e3
    • W
      reattach pci device when pciBindDeviceToStub() failed · 4e8969eb
      Wen Congyang 提交于
      We should bind pci device to original driver when pciBindDeviceToStub() failed.
      If the pci device is not bound to any driver before calling pciBindDeviceToStub(),
      we should only unbind it from pci-stub. If it is bound to pci-stub, we should not
      unbind it from pci-stub.
      4e8969eb
    • W
      rename pciUnBindDeviceFromStub() to pciUnbindDeviceFromStub() and float it up · 9121b193
      Wen Congyang 提交于
      This patch do the following things:
      1. rename the function as 'Unbind' is better than 'UnBind'.
      2. pciUnbindDeviceFromStub() will be used in the function pciBindDeviceToStub() in
         next patch. Float it up, instead of having to have a forward declaration
      9121b193
    • W
      remove devices from driver->activePciHostdevs when qemuPrepareHostdevPCIDevices() failed · 11549859
      Wen Congyang 提交于
      We should not mark pci devices as active when qemuPrepareHostdevPCIDevices()
      failed.
      11549859
    • W
      pci: avoid invalid free, init path to NULL · d5981f1c
      Wen Congyang 提交于
      This bug was introduce by commit 57162db8, and it will cause libvirtd crashed.
      d5981f1c
    • E
      build: avoid compiler warning on cygwin · f6447e8a
      Eric Blake 提交于
      In file included from util/threads.c:31:
      util/threads-pthread.c: In function 'virThreadSelfID':
      util/threads-pthread.c:214: warning: cast from function call of type 'pthread_t' to non-matching type 'int' [-Wbad-function-cast]
      
      * src/util/threads-pthread.c (virThreadSelfID) [!SYS_gettid]:
      Add intermediate cast to silence gcc.
      f6447e8a
    • M
      Add domainIsUpdated to libxl driver · bf7f6251
      Markus Groß 提交于
      bf7f6251
    • S
      Change locking for udev monitor and callbacks · 28795828
      Serge Hallyn 提交于
      We're seeing bugs apparently resulting from thread unsafety of
      libpciaccess, such as
      https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/726099
      To prevent those, as suggested by danpb on irc, move the
      nodeDeviceLock(driverState) higher into the callers.  In
      particular:
      
        udevDeviceMonitorStartup should hold the lock while calling
        udevEnumerateDevices(), and udevEventHandleCallback should hold it
        over its entire execution.
      
      It's not clear to me whether it is ok to hold the
      nodeDeviceLock while taking the virNodeDeviceObjLock(dev) on a
      device.  If not, then the lock will need to be dropped around
      the calling of udevSetupSystemDev(), and udevAddOneDevice()
      may not actually be safe to call from higher layers with the
      driverstate lock held.
      
      libvirt 0.8.8 with this patch on it seems to work fine for me.
      Assuming it looks ok and I haven't done anything obviously dumb,
      I'll ask the bug submitters to try this patch.
      Signed-off-by: NSerge Hallyn <serge.hallyn@ubuntu.com>
      28795828
  3. 06 4月, 2011 4 次提交
    • J
      qemu: Support for overriding NPROC limit · 87e78b2b
      Jiri Denemark 提交于
      This patch adds max_processes option to qemu.conf which can be used to
      override system default limit on number of processes that are allowed to
      be running for qemu user.
      87e78b2b
    • O
      qemu: Always reserves slot 0x02 for primary VGA. · 7b2cac12
      Osier Yang 提交于
      To address https://bugzilla.redhat.com/show_bug.cgi?id=692355
      
      This fix is to reserve slot 0x02 for primary VGA even if there
      is no "video" specified in domain XML to avoid the problem.
      7b2cac12
    • E
      libxl: avoid compiler warning · 3eb869a0
      Eric Blake 提交于
      cc1: warnings being treated as errors
      libxl/libxl_driver.c: In function 'libxlDomainSetVcpusFlags':
      libxl/libxl_driver.c:1570:14: error: cast from function call of type 'double' to non-matching type 'unsigned int' [-Wbad-function-cast]
      libxl/libxl_driver.c:1578:15: error: cast from function call of type 'double' to non-matching type 'unsigned int' [-Wbad-function-cast]
      
      This was the only use of floor() and ceil(), and floating-point
      is overkill for power-of-two manipulations.
      
      * src/libxl/libxl_driver.c (libxlDomainSetVcpusFlags): Avoid -lm
      for trivial computations.
      3eb869a0
    • D
      Avoid compiler warnings about int -> void * casts · 5b099250
      Daniel P. Berrange 提交于
      GCC is a little confused about the cast of beginthread/beginthreadex
      from unsigned long -> void *. Go via an intermediate variable avoids
      the bogus warning, and makes the code a little cleaner
      
      * src/util/threads-win32.c: Avoid compiler warning in cast
      5b099250
  4. 05 4月, 2011 22 次提交