1. 24 1月, 2019 6 次提交
    • M
      virpci: Fix memleak in virPCIDeviceIterDevices · f2476cac
      Michal Privoznik 提交于
      This partially reverts 00dc991c.
      
       2,030 (1,456 direct, 574 indirect) bytes in 14 blocks are definitely lost in loss record 77 of 80
          at 0x4C30E96: calloc (vg_replace_malloc.c:711)
          by 0x50F83AA: virAlloc (viralloc.c:143)
          by 0x5178DFA: virPCIDeviceNew (virpci.c:1753)
          by 0x51753E9: virPCIDeviceIterDevices (virpci.c:468)
          by 0x5175EB5: virPCIDeviceGetParent (virpci.c:759)
          by 0x517AB55: virPCIDeviceIsBehindSwitchLackingACS (virpci.c:2476)
          by 0x517AC24: virPCIDeviceIsAssignable (virpci.c:2494)
          by 0x10BF27: testVirPCIDeviceIsAssignable (virpcitest.c:229)
          by 0x10D14C: virTestRun (testutils.c:174)
          by 0x10C535: mymain (virpcitest.c:422)
          by 0x10F1B6: virTestMain (testutils.c:1112)
          by 0x10CF93: main (virpcitest.c:455)
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NErik Skultety <eskultet@redhat.com>
      f2476cac
    • M
      virPCIGetNetName: Initialize @netname to NULL · 6a8c1749
      Michal Privoznik 提交于
      This is a return argument that is to be compared against NULL on
      successful return. However, it is not initialized and therefore
      relies on callers setting it to NULL prior calling the function.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NErik Skultety <eskultet@redhat.com>
      6a8c1749
    • E
      qemu: improve compile-time check of qemuBlockjobState mapping · 7b6116fb
      Eric Blake 提交于
      Asserting the value we set four lines earlier in qemuBlockjobState
      doesn't buy us any safety (if the public header adds a value, we end
      up skipping that value without the compiler warning us of our gap);
      what we really want is to assert that the value auto-assigned by the
      compiler matches the actual last value in the public headers (as was
      done below for qemuBlockJobType).  Add useful comments while at it.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      ACKed-by: NPeter Krempa <pkrempa@redhat.com>
      7b6116fb
    • J
      apparmor: convert libvirtd profile to a named profile · a3ab6d42
      Jim Fehlig 提交于
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      a3ab6d42
    • J
      apparmor: Add support for named profiles · 70c2933d
      Jim Fehlig 提交于
      Upstream apparmor is switching to named profiles. In short,
      
      /usr/sbin/dnsmasq {
      
      becomes
      
      profile dnsmasq /usr/sbin/dnsmasq {
      
      Consequently, any profiles that reference profiles in a peer= condition
      need to be updated if the referenced profile switches to a named profile.
      Apparmor commit 9ab45d81 switched dnsmasq to a named profile. ATM it is
      the only named profile switch that has affected libvirt. Add rules to the
      libvirtd profile to reference dnsmasq in peer= conditions by profile name.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      70c2933d
    • J
      libxl: Set current memory value after successful balloon · 11c8aca9
      Jim Fehlig 提交于
      The libxl driver does not set the new memory value in the active domain def
      after a successful balloon. This results in the old memory value in
      <currentMemory>. E.g.
      
      virsh dumpxml test | grep currentMemory
        <currentMemory unit='KiB'>20971520</currentMemory>
      virsh setmem test 16777216 --live
      virsh dumpxml test | grep currentMemory
        <currentMemory unit='KiB'>20971520</currentMemory>
      
      Set the new memory value in active domain def after a successful call to
      libxl_set_memory_target().
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      Reviewed-by: NJán Tomko <jtomko@redhat.com>
      11c8aca9
  2. 23 1月, 2019 7 次提交
  3. 22 1月, 2019 17 次提交
  4. 21 1月, 2019 3 次提交
  5. 19 1月, 2019 1 次提交
    • L
      qemu: fix i6300esb watchdog hotplug on Q35 · 40136bd3
      Laine Stump 提交于
      When commit 361c8dc1 added support for hotplugging the i6300esb
      watchdog device (first in libvirt-3.9.0), it accidentally contstructed
      the commandline for the device_add command before allocating a PCI
      address for the device. With no PCI address specified in the command,
      the watchdog would simply be placed at the lowest unused PCI slot.
      
      On a 440fx guest, this doesn't cause a problem, because libvirt's PCI
      address allocation algorithm would most likely give the same address
      anyway (usually a slot on pci-root), so nobody noticed the omission of
      address from the command.
      
      But on a Q35 guest, the lowest unused PCI slot is on pcie-root, which
      doesn't support hotplug; libvirt knows enough to assign a PCI address
      that is on a pcie-to-pci-bridge (because its slots *do* support
      hotplug), but qemu doesn't, so if there is no PCI address in the
      command, qemu just tries to plug the new device into pcie-root, and
      fails because it doesn't support hotplug, e.g.:
      
        error: Failed to attach device from watchdog.xml
        error: internal error: unable to execute QEMU command 'device_add':
        Bus 'pcie.0' does not support hotplugging
      
      The solution is simply to build the command string after assigning a
      PCI address, not before.
      
      Resolves: https://bugzilla.redhat.com/1666559Signed-off-by: NLaine Stump <laine@laine.org>
      Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
      40136bd3
  6. 18 1月, 2019 6 次提交