1. 11 2月, 2017 1 次提交
  2. 10 2月, 2017 13 次提交
    • B
      remote generator: Increase upper limit on lists of node devices · d15b29be
      Boris Fiuczynski 提交于
      On a system with 697 SCSI disks each configured with 8 paths the command
      virsh nodedev-list fails with
      error: Failed to list node devices
      error: internal error: Too many node_devices '16816' for limit '16384'
      Increasing the upper limit on lists of node devices from 16K to 64K.
      Signed-off-by: NBoris Fiuczynski <fiuczy@linux.vnet.ibm.com>
      d15b29be
    • N
      Mention the min duration for nodesuspend explicitly · f278a148
      Nitesh Konkar 提交于
      Although currently this is documented in virsh man page
      and virsh help, the expicit mention in the error message
      is helful for tools using the API directly.
      Signed-off-by: NNitesh Konkar <nitkon12@linux.vnet.ibm.com>
      f278a148
    • M
      qemuMonitorCPUModelInfoFree: Don't leak model_info->props · 732629da
      Michal Privoznik 提交于
      ==11846== 240 bytes in 1 blocks are definitely lost in loss record 81 of 107
      ==11846==    at 0x4C2BC75: calloc (vg_replace_malloc.c:624)
      ==11846==    by 0x18C74242: virAllocN (viralloc.c:191)
      ==11846==    by 0x4A05E8: qemuMonitorCPUModelInfoCopy (qemu_monitor.c:3677)
      ==11846==    by 0x446E3C: virQEMUCapsNewCopy (qemu_capabilities.c:2171)
      ==11846==    by 0x437335: testQemuCapsCopy (qemucapabilitiestest.c:108)
      ==11846==    by 0x437CD2: virTestRun (testutils.c:180)
      ==11846==    by 0x437AD8: mymain (qemucapabilitiestest.c:176)
      ==11846==    by 0x4397B6: virTestMain (testutils.c:992)
      ==11846==    by 0x437B44: main (qemucapabilitiestest.c:188)
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      732629da
    • N
      Fix indentation in datatypes.h · 09a91f05
      Nitesh Konkar 提交于
      Signed-off-by: NNitesh Konkar <nitkon12@linux.vnet.ibm.com>
      09a91f05
    • M
      remote generator: handle remoteDomainCreateWithFlags() · fd98631c
      Marc Hartmayer 提交于
      This commit removes the handcrafted code for
      remoteDomainCreateWithFlags() and lets it auto generate.
      
      A little bit of history repeating...
      Commit 03d813bb removed the auto generation of
      remoteDomainCreateWithFlags() because it was thought that the design
      flaw in the remote protocol for virDomainCreate is also within the
      remote protocol for virDomainCreateWithFlags. As the commit message of
      ddaf15d7 mentions this is not the case therefore we
      can auto generate the client part.
      
      Even worse there was a typo in remoteDomainCreateWithFlags()
      
      'remote_domain_create_with_flags_args ret;' but in fact it has to be
      'remote_domain_create_with_flags_ret ret;'.
      Signed-off-by: NMarc Hartmayer <mhartmay@linux.vnet.ibm.com>
      Reviewed-by: NBjoern Walk <bwalk@linux.vnet.ibm.com>
      Reviewed-by: NBoris Fiuczynski <fiuczy@linux.vnet.ibm.com>
      fd98631c
    • M
      util: reset the counters to zero · c26fe44b
      Marc Hartmayer 提交于
      After freeing the data structures we have to reset the counters to
      zero. This fixes a segmentation fault when virNetDevIPInfoClear is
      called twice (e.g. this is possible in virDomainNetDefParseXML() if
      virDomainNetIPInfoParseXML(...) fails with ret < 0 (this leads to the
      first call of 'virNetDevIPInfoClear(&def->guestIP)') and the resulting
      call of virDomainNetDefFree(def) in the error path of
      virDomainNetDefParseXML() (this leads to the second call of
      virNetDevIPInfoClear(&def->guestIP), and finally to the segmentation
      fault).
      Signed-off-by: NMarc Hartmayer <mhartmay@linux.vnet.ibm.com>
      Reviewed-by: NBoris Fiuczynski <fiuczy@linux.vnet.ibm.com>
      Reviewed-by: NBjoern Walk <bwalk@linux.vnet.ibm.com>
      c26fe44b
    • M
      conf: Fix libvirtd free() segfault if virDomainChrSourceDefNew(...) fails · 28dd54a5
      Marc Hartmayer 提交于
      If virDomainChrSourceDefNew(xmlopt) fails, it will lead to free()ing
      the uninitialized pointer bus. The fix for this is to initialize bus
      with NULL.
      Signed-off-by: NMarc Hartmayer <mhartmay@linux.vnet.ibm.com>
      Reviewed-by: NBoris Fiuczynski <fiuczy@linux.vnet.ibm.com>
      Reviewed-by: NBjoern Walk <bwalk@linux.vnet.ibm.com>
      28dd54a5
    • M
      qemu: Check if virQEMUCapsNewCopy(...) has failed · 62b2c2fc
      Marc Hartmayer 提交于
      Check if virQEMUCapsNewCopy(...) has failed, thus a segmentation fault
      in virQEMUCapsFilterByMachineType(...) will be avoided.
      Signed-off-by: NMarc Hartmayer <mhartmay@linux.vnet.ibm.com>
      Reviewed-by: NBjoern Walk <bwalk@linux.vnet.ibm.com>
      62b2c2fc
    • D
      qemu: Fix live migration over RDMA with IPv6 · 728c0e5d
      David Dai 提交于
      Using libvirt to do live migration over RDMA via IPv6 address failed.
      
      For example:
          rhel73_host1_guest1 qemu+ssh://[deba::2222]/system --verbose
      root@deba::2222's password:
      error: internal error: unable to execute QEMU command 'migrate': RDMA
      ERROR: could not rdma_getaddrinfo address deba
      
      As we can see, the IPv6 address used by rdma_getaddrinfo() has only
      "deba" part because we didn't properly enclose the IPv6 address in []
      and passed rdma:deba::2222:49152 as the migration URI in
      qemuMonitorMigrateToHost.
      Signed-off-by: NDavid Dai <zdai@linux.vnet.ibm.com>
      728c0e5d
    • J
      libxl: fix dom0 maximum memory setting · 79692c38
      Jim Fehlig 提交于
      When the libxl driver is initialized, it creates a virDomainDef
      object for dom0 and adds it to the list of domains. Total memory
      for dom0 was being set from the max_memkb field of libxl_dominfo
      struct retrieved from libxl, but this field can be set to
      LIBXL_MEMKB_DEFAULT (~0ULL) if dom0 maximum memory has not been
      explicitly set by the user.
      
      This patch adds some simple parsing of the Xen commandline,
      looking for a dom0_mem parameter that also specifies a 'max' value.
      If not specified, dom0 maximum memory is effectively all physical
      host memory.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      79692c38
    • J
      libxl: fix reporting of maximum memory · d2b77608
      Jim Fehlig 提交于
      The libxl driver reports different values of maximum memory depending
      on state of a domain. If inactive, maximum memory value is reported
      correctly. When active, maximum memory is derived from max_pages value
      returned by the XEN_SYSCTL_getdomaininfolist sysctl operation. But
      max_pages can be changed by toolstacks and does not necessarily
      represent the maximum memory a domain can use during its active
      lifetime.
      
      A better location for determining a domain's maximum memory is the
      /local/domain/<id>/memory/static-max node in xenstore. This value
      is set from the libxl_domain_build_info.max_memkb field when creating
      the domain. Currently it cannot be changed nor can its value be
      exceeded by a balloon operation. From libvirt's perspective, always
      reporting maximum memory with virDomainDefGetMemoryTotal() will produce
      the same results as reading the static-max node in xenstore.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      d2b77608
    • J
      libxl: fix disk detach when <driver> not specified · bd116810
      Jim Fehlig 提交于
      When a user does not explicitly set a <driver> in the disk config,
      libvirt defers selection of a default to libxl. This approach works
      fine when starting a domain with such configuration or attaching a
      disk to a running domain. But when detaching such a disk, libxl
      will fail with "unrecognized disk backend type: 0". libxl makes no
      attempt to recalculate a default backend (driver) on detach and
      simply fails when uninitialized.
      
      This patch updates the libvirt disk config with the backend selected
      by libxl when starting a domain or attaching a disk to a running
      domain. Another benefit of this approach is that the live XML is
      also updated with the backend driver selected by libxl.
      bd116810
    • J
      libxl: set default disk format in device post-parse · 321a28c6
      Jim Fehlig 提交于
      When starting a domian, a libxl_domain_config object is created from
      virDomainDef. Any virDomainDiskDef devices with a format of
      VIR_STORAGE_FILE_NONE are mapped to LIBXL_DISK_FORMAT_RAW in the
      corresponding libxl_disk_device, but the virDomainDiskDef format is
      never updated to reflect the change.
      
      A better place to set a default format for disk devices is the
      device post-parse callback, ensuring the virDomainDiskDef object
      reflects the default format.
      321a28c6
  3. 09 2月, 2017 16 次提交
  4. 08 2月, 2017 10 次提交