1. 12 9月, 2018 1 次提交
    • L
      conf: correct false boot order error during domain parse · 7ea73429
      Laine Stump 提交于
      virDomainDefCollectBootOrder() is called for every item on the list
      for each type of device. One of the checks it makes is to gather the
      order attributes from the <boot> element of all devices, and assure
      that no two devices have been given the same order.
      
      Since (internally to libvirt, *not* in the domain XML) an <interface
      type='hostdev'> is on both the list of hostdev devices and the list of
      network devices, it will be counted twice, and the code that checks
      for multiple devices with the same boot order will give a false
      positive.
      
      To remedy this, we make sure to return early for hostdev devices that
      have a parent.type != NONE.
      
      This was introduced in commit 5b75a4, which was first in libvirt-4.4.0.
      
      Resolves: https://bugzilla.redhat.com/1601318Signed-off-by: NLaine Stump <laine@laine.org>
      Reviewed-by: NJán Tomko <jtomko@redhat.com>
      7ea73429
  2. 10 9月, 2018 1 次提交
  3. 07 9月, 2018 1 次提交
    • A
      conf: Fix check for chardev source path · 614193fa
      Andrea Bolognani 提交于
      Attempting to use a chardev definition like
      
        <serial type='unix'>
          <target type='isa-serial'/>
        </serial>
      
      correctly results in an error being reported, since the source
      path - a required piece of information - is missing; however,
      the very similar
      
        <serial type='unix'>
          <target type='pci-serial'/>
        </serial>
      
      was happily accepted by libvirt, only to result in libvirtd
      crashing as soon as the guest was started.
      
      The issue was caused by checking the chardev's targetType
      against whitelisted values from virDomainChrChannelTargetType
      without first checking the chardev's deviceType to make sure
      it is actually a channel, for which the check makes sense,
      rather than a different type of chardev.
      
      The only reason this wasn't spotted earlier is that the
      whitelisted values just so happen to correspond to USB and
      PCI serial devices and Xen and UML consoles respectively,
      all of which are fairly uncommon.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1609720Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
      Reviewed-by: NJán Tomko <jtomko@redhat.com>
      614193fa
  4. 04 9月, 2018 5 次提交
  5. 28 8月, 2018 2 次提交
  6. 21 8月, 2018 4 次提交
  7. 17 8月, 2018 3 次提交
  8. 14 8月, 2018 7 次提交
  9. 10 8月, 2018 3 次提交
    • P
      conf: Introduce virDomainDefPostParseMemtune · 0a476f15
      Pavel Hrdina 提交于
      Previously we were ignoring "nodeset" attribute for hugepage pages
      if there was no guest NUMA topology configured in the domain XML.
      Commit <fa6bdf6a> partially fixed
      that issue but it introduced a somehow valid regression.
      
      In case that there is no guest NUMA topology configured and the
      "nodeset" attribute is set to "0" it was accepted and was working
      properly even though it was not completely valid XML.
      
      This patch introduces a workaround that it will ignore the nodeset="0"
      only in case that there is no guest NUMA topology in order not to
      hit the validation error.
      
      After this commit the following XML configuration is valid:
      
        <memoryBacking>
          <hugepages>
            <page size='2048' unit='KiB' nodeset='0'/>
          </hugepages>
        </memoryBacking>
      
      but this configuration remains invalid:
      
        <memoryBacking>
          <hugepages>
            <page size='2048' unit='KiB' nodeset='0'/>
            <page size='1048576' unit='KiB'/>
          </hugepages>
        </memoryBacking>
      
      The issue with the second configuration is that it was originally
      working, however changing the order of the <page> elements resolved
      into using different page size for the guest.  The code is written
      in a way that it expect only one page configured and always uses only
      the first page in case that there is no guest NUMA topology configured.
      See qemuBuildMemPathStr() function for details.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1591235Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      0a476f15
    • P
      conf: Move hugepages validation out of XML parser · 82327038
      Pavel Hrdina 提交于
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      82327038
    • P
      conf: Move hugepage XML validation check out of qemu_command · 5c93dfb4
      Pavel Hrdina 提交于
      We can safely validate the hugepage nodeset attribute at a define time.
      This validation is not done for already existing domains when the daemon
      is restarted.
      
      All the changes to the tests are necessary because we move the error
      from domain start into XML parse.
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      5c93dfb4
  10. 08 8月, 2018 3 次提交
  11. 06 8月, 2018 1 次提交
  12. 27 7月, 2018 1 次提交
  13. 26 7月, 2018 7 次提交
  14. 25 7月, 2018 1 次提交