1. 26 9月, 2016 11 次提交
    • M
      virDomainDefCopy: Introduce @parseOpaque argument · 2e056b5c
      Michal Privoznik 提交于
      We want to pass the proper opaque pointer instead of NULL to
      virDomainDefParseString.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      2e056b5c
    • M
      virDomainDefParse{File,String}: Introduce @parseOpaque argument · c41b9891
      Michal Privoznik 提交于
      We want to pass the proper opaque pointer instead of NULL to
      virDomainDefParse and subsequently virDomainDefParseNode too.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      c41b9891
    • M
      virDomainDefPostParse: Introduce @parseOpaque argument · 940d91c5
      Michal Privoznik 提交于
      Some callers might want to pass yet another pointer to opaque
      data to post parse callbacks. The driver generic one is not
      enough because two threads executing post parse callback might
      want to see different data (e.g. domain object pointer that
      domain def belongs to).
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      940d91c5
    • J
      qemu: Get/return compressedpath program · 9e14689e
      John Ferlan 提交于
      Based upon a patch from Chen Hanxiao <chenhanxiao@gmail.com>, rather than
      need to call virFindFileInPath twice, let's just save the path and pass it
      along with the compressed type. (NB: the second call would be in virExec as
      called from virCommandRunAsync which is called from qemuMigrationToFile
      using the argument 'compressor' which up to this point would be the string
      from the cfg file that isn't the fully qualified path).
      
      Since we now have the path, we can remove qemuCompressProgramName which
      would return NULL or the string representation of the compress type.
      9e14689e
    • J
      qemu: Remove qemuCompressProgramAvailable · 9477b4a0
      John Ferlan 提交于
      There's only one caller and the code is duplicitous just converting the
      recently converted cfg image name back into it's string value in order to
      get/find the path to the image.  A subsequent patch can return this path.
      9477b4a0
    • J
      qemu: Use qemuGetCompressionProgram for error paths · 48cb9f05
      John Ferlan 提交于
      Let's do some more code reuse - there are 3 other callers that care to
      check/get the compress program. Each of those though cares whether the
      requested cfg image is valid and exists. So, add a parameter to handle
      those cases.
      
      NB: We won't need to initialize the returned value in the case where
      the cfg image doesn't exist since the called program will handle that.
      48cb9f05
    • J
      qemu: Alter qemuGetCompressionProgram warning message · 4052ac27
      John Ferlan 提交于
      Add a new parameter 'styleFormat' to be used when printing the
      warning message so that it's "clearer" what style of compression
      call caused the error. Add that style to both messages as a paremter.
      
      Also a VIR_WARN error message doesn't need to be translated
       (e.g. inside _()), so remove the need for the translation.
      4052ac27
    • J
      qemu: Remove getCompressionType · 882e360d
      John Ferlan 提交于
      There's only one caller now anyway... Besides it's just a shell for
      getting the compress type.  Subsequent patches will return the path
      to the compression program.
      882e360d
    • J
      qemu: Introduce helper qemuGetCompressionProgram · 02d32d2d
      John Ferlan 提交于
      Split out the guts of getCompressionType to perform the same functionality
      in the new helper program with a subsequent patch goal to be reusable for
      other callers making similar checks/calls to ensure the compression type
      is valid and that the compression program cannot be found.
      02d32d2d
    • J
      qemu: Adjust doCoreDump to call getCompressionType · 69948154
      John Ferlan 提交于
      Rather than calling getCompressionType from each of the callers, just call
      it from doCoreDump.  A subsequent patch will be adjust the code even more.
      69948154
    • J
      qemu: Move getCompressionType · abaa86f9
      John Ferlan 提交于
      A subsequent patch will adjust the 3 callers to just call from doCoreDump.
      abaa86f9
  2. 22 9月, 2016 4 次提交
  3. 21 9月, 2016 3 次提交
    • P
      qemu: driver: Don't return automatic NUMA emulator pinning data for persistentDef · 006a532c
      Peter Krempa 提交于
      Calling virDomainGetEmulatorPinInfo on a live VM with automatic NUMA
      pinning and VIR_DOMAIN_AFFECT_CONFIG would return the automatic pinning
      data in some cases which is bogus. Use the autoCpuset property only when
      called on a live definition.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1365779
      006a532c
    • P
      qemu: driver: Don't return automatic NUMA vCPU pinning data for persistentDef · 552892c5
      Peter Krempa 提交于
      Calling virDomainGetVcpuPinInfo on a live VM with automatic NUMA pinning
      and VIR_DOMAIN_AFFECT_CONFIG would return the automatic pinning data
      in some cases which is bogus. Use the autoCpuset property only when
      called on a live definition.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1365779
      552892c5
    • J
      qemuDomainOpenGraphics: Start job early · 53ae58b0
      Jiri Denemark 提交于
      Checking if a domain's definition or if it is active before we got a job
      is pointless since the domain might have changed in the meantime.
      
      Luckily libvirtd didn't crash when the API tried to talk to an inactive
      domain:
      
      debug : qemuDomainObjBeginJobInternal:2914 : Started job: modify
          (async=none vm=0x7f8f340140c0 name=ble)
      debug : qemuDomainObjEnterMonitorInternal:3137 : Entering monitor
          (mon=(nil) vm=0x7f8f340140c0 name=ble)
      warning : virObjectLock:319 : Object (nil) ((unknown)) is not a
          virObjectLockable instance
      debug : qemuMonitorOpenGraphics:3505 : protocol=spice fd=27
          fdname=graphicsfd skipauth=1
      error : qemuMonitorOpenGraphics:3508 : invalid argument: monitor must
          not be NULL
      debug : qemuDomainObjExitMonitorInternal:3160 : Exited monitor
          (mon=(nil) vm=0x7f8f340140c0 name=ble)
      debug : qemuDomainObjEndJob:3068 : Stopping job: modify (async=none
          vm=0x7f8f340140c0 name=ble)
      Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
      53ae58b0
  4. 14 9月, 2016 2 次提交
  5. 13 9月, 2016 2 次提交
  6. 07 9月, 2016 2 次提交
  7. 03 9月, 2016 4 次提交
  8. 26 8月, 2016 2 次提交
  9. 25 8月, 2016 4 次提交
    • P
      qemu: hotplug: Add support for VCPU unplug · e3229f6e
      Peter Krempa 提交于
      This patch removes the old vcpu unplug code completely and replaces it
      with the new code using device_del. The old hotplug code basically never
      worked with any recent qemu and thus is useless.
      
      As the new code is using device_del all the implications of using it
      are present. Contrary to the device deletion code, the vcpu deletion
      code fails if the unplug request is not executed in time.
      e3229f6e
    • P
      qemu: Use modern vcpu hotplug approach if possible · 6d4ee77d
      Peter Krempa 提交于
      To allow unplugging the vcpus, hotplugging of vcpus on platforms which
      require to plug multiple logical vcpus at once or plugging them in an
      arbitrary order it's necessary to use the new device_add interface for
      vcpu hotplug.
      
      This patch adds support for the device_add interface using the old
      setvcpus API by implementing an algorithm to select the appropriate
      entities to plug in.
      6d4ee77d
    • P
    • P
      qemu: domain: Prepare for VCPUs vanishing while libvirt is not running · 133be0a9
      Peter Krempa 提交于
      Similarly to devices the guest may allow unplug of the VCPU if libvirt
      is down. To avoid problems, refresh the vcpu state on reconnect. Don't
      mess with the vcpu state otherwise.
      133be0a9
  10. 17 8月, 2016 1 次提交
  11. 16 8月, 2016 4 次提交
  12. 04 8月, 2016 1 次提交
    • P
      qemu: domain: Simplify return values of qemuDomainRefreshVcpuInfo · 041f3534
      Peter Krempa 提交于
      Call the vcpu thread info validation separately to decrease complexity
      of returned values by qemuDomainRefreshVcpuInfo.
      
      This function now returns 0 on success and -1 on error. Certain
      failures of qemu to report data are still considered as success. Any
      error reported now is fatal.
      041f3534