1. 15 2月, 2017 2 次提交
  2. 13 2月, 2017 2 次提交
  3. 10 2月, 2017 3 次提交
    • 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
    • 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
  4. 09 2月, 2017 6 次提交
  5. 08 2月, 2017 11 次提交
    • M
      qemuDomainNamespaceSetupDisk: Simplify disk check · b7feabbf
      Michal Privoznik 提交于
      Firstly, instead of checking for next->path the
      virStorageSourceIsEmpty() function should be used which also
      takes disk type into account.
      Secondly, not every disk source passed has the correct type set
      (due to our laziness). Therefore, instead of checking for
      virStorageSourceIsBlockLocal() and also S_ISBLK() the former can
      be refined to just virStorageSourceIsLocalStorage().
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      b7feabbf
    • M
      qemuDomainDiskChainElement{Prepare,Revoke}: manage /dev entry · 786d8d91
      Michal Privoznik 提交于
      Again, one missed bit. This time without this commit there is no
      /dev entry  in the namespace of the qemu process when doing disk
      snapshots or block-copy.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      786d8d91
    • M
      qemuDomainNamespace{Setup,Teardown}Disk: Don't pass pointer to full disk · 18ce9d13
      Michal Privoznik 提交于
      These functions do not need to see the whole virDomainDiskDef.
      Moreover, they are going to be called from places where we don't
      have access to the full disk definition. Sticking with
      virStorageSource is more than enough.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      18ce9d13
    • M
      qemuDomainNamespaceSetupDisk: Drop useless @src variable · 76d491ef
      Michal Privoznik 提交于
      Since its introduction in 81df2150 this variable was never
      used.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      76d491ef
    • M
      qemu_domain: Don't pass virDomainDeviceDefPtr to ns helpers · 8dc867e9
      Michal Privoznik 提交于
      There is no need for this. None of the namespace helpers uses it.
      Historically it was used when calling secdriver APIs, but we
      don't to that anymore.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      8dc867e9
    • M
      qemu_security: Drop qemuSecuritySetRestoreAllLabelData struct · 848dbe19
      Michal Privoznik 提交于
      This struct is unused after 095f042e.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      848dbe19
    • M
      qemuDomainAttachSCSIVHostDevice: manage /dev entry · 45599e40
      Michal Privoznik 提交于
      Again, one missed bit. This time without this commit there is no
      /dev entry in the namespace of the qemu process when attaching
      vhost SCSI device.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      45599e40
    • M
      qemuDomainAttachSCSIVHostDevice: Prefer qemuSecurity wrappers · 7d93a885
      Michal Privoznik 提交于
      Since we have qemuSecurity wrappers over
      virSecurityManagerSetHostdevLabel and
      virSecurityManagerRestoreHostdevLabel we ought to use them
      instead of calling secdriver APIs directly.  Without those
      wrappers the labelling won't be done in the correct namespace
      and thus won't apply to the nodes seen by qemu itself.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      7d93a885
    • L
      qemu: propagate bridge MTU into qemu "host_mtu" option · 2841e675
      Laine Stump 提交于
      libvirt was able to set the host_mtu option when an MTU was explicitly
      given in the interface config (with <mtu size='n'/>), set the MTU of a
      libvirt network in the network config (with the same named
      subelement), and would automatically set the MTU of any tap device to
      the MTU of the network.
      
      This patch ties that all together (for networks based on tap devices
      and either Linux host bridges or OVS bridges) by learning the MTU of
      the network (i.e. the bridge) during qemuInterfaceBridgeConnect(), and
      returning that value so that it can then be passed to
      qemuBuildNicDevStr(); qemuBuildNicDevStr() then sets host_mtu in the
      interface's commandline options.
      
      The result is that a higher MTU for all guests connecting to a
      particular network will be plumbed top to bottom by simply changing
      the MTU of the network (in libvirt's config for libvirt-managed
      networks, or directly on the bridge device for simple host bridges or
      OVS bridges managed outside of libvirt).
      
      One question I have about this - it occurred to me that in the case of
      migrating a guest from a host with an older libvirt to one with a
      newer libvirt, the guest may have *not* had the host_mtu option on the
      older machine, but *will* have it on the newer machine. I'm curious if
      this could lead to incompatibilities between source and destination (I
      guess it all depends on whether or not the setting of host_mtu has a
      practical effect on a guest that is already running - Maxime?)
      
      Likewise, we could run into problems when migrating from a newer
      libvirt to older libvirt - The guest would have been told of the
      higher MTU on the newer libvirt, then migrated to a host that didn't
      understand <mtu size='blah'/>. (If this really is a problem, it would
      be a problem with or without the current patch).
      2841e675
    • L
      util: add MTU arg to virNetDevTapCreateInBridgePort() · dd8ac030
      Laine Stump 提交于
      virNetDevTapCreateInBridgePort() has always set the new tap device to
      the current MTU of the bridge it's being attached to. There is one
      case where we will want to set the new tap device to a different
      (usually larger) MTU - if that's done with the very first device added
      to the bridge, the bridge's MTU will be set to the device's MTU. This
      patch allows for that possibility by adding "int mtu" to the arg list
      for virNetDevTapCreateInBridgePort(), but all callers are sending -1,
      so it doesn't yet have any effect.
      
      Since the requested MTU isn't necessarily what is used in the end (for
      example, if there is no MTU requested, the tap device will be set to
      the current MTU of the bridge), and the hypervisor may want to know
      the actual MTU used, we also return the actual MTU to the caller (if
      actualMTU is non-NULL).
      dd8ac030
    • A
      qemu: Forbid <memoryBacking><locked> without <memtune><hard_limit> · c2e60ad0
      Andrea Bolognani 提交于
      In order for memory locking to work, the hard limit on memory
      locking (and usage) has to be set appropriately by the user.
      
      The documentation mentions the requirement already: with this
      patch, it's going to be enforced by runtime checks as well,
      by forbidding a non-compliant guest from being defined as well
      as edited and started.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1316774
      c2e60ad0
  6. 07 2月, 2017 8 次提交
  7. 01 2月, 2017 2 次提交
  8. 31 1月, 2017 2 次提交
  9. 30 1月, 2017 4 次提交