1. 03 8月, 2016 1 次提交
  2. 02 8月, 2016 4 次提交
    • J
      qemu: Use qemuAliasFromHostdev · 8527a25b
      John Ferlan 提交于
      When building the command line alias and for SCSI Host Device deletion,
      use the common API to build the alias
      8527a25b
    • J
      qemu: Use qemuAliasFromDisk to generate drive alias · f0f16c1e
      John Ferlan 提交于
      Rather than open code build the drive alias command in multiple places,
      use the helper to ensure consistency.
      f0f16c1e
    • J
      qemu: Use qemuAliasFromDisk instead of qemuDeviceDriveHostAlias · 13effcaf
      John Ferlan 提交于
      Since we already have a function that will generate the drivestr from
      the alias, let's use it and remove the qemuDeviceDriveHostAlias.
      
      Move the QEMU_DRIVE_HOST_PREFIX definition into qemu_alias.h
      
      Also alter qemuAliasFromDisk to use the QEMU_DRIVE_HOST_PREFIX instead
      of "drive-%s".
      13effcaf
    • C
      extend usb controller model to support xen pvusb · be146b34
      Chunyan Liu 提交于
      According to libxl implementation, it supports pvusb
      controller of version 1.1 and version 2.0, and it
      supports two types of backend, 'pvusb' (dom0 backend)
      and 'qusb' (qemu backend). But currently pvusb backend
      is not checked in yet.
      
      To match libxl support, extend usb controller schema
      to support two more models: qusb1 (qusb, version 1.1)
      and 'qusb2' (qusb version 2.0).
      Signed-off-by: NChunyan Liu <cyliu@suse.com>
      be146b34
  3. 29 7月, 2016 1 次提交
    • M
      conf: Catch invalid memory model earlier · 1e058463
      Michal Privoznik 提交于
      Consider the following XML snippet:
      
          <memory model=''>
            <target>
              <size unit='KiB'>523264</size>
              <node>0</node>
            </target>
          </memory>
      
      Whats wrong you ask? The @model attribute. This should result in
      an error thrown into users faces during virDomainDefine phase.
      Except it doesn't. The XML validation catches this error, but if
      users chose to ignore that, they will end up with invalid XML.
      Well, they won't be able to start the machine - that's when error
      is produced currently. But it would be nice if we could catch the
      error like this earlier.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      1e058463
  4. 28 7月, 2016 2 次提交
    • J
      qemu: Need to free fileprops in error path · 8ad7eceb
      John Ferlan 提交于
      The virJSONValueObjectCreate only consumes the object on success, so on
      failure we must free - from commit id 'f4441017' (found by Coverity).
      8ad7eceb
    • D
      storage: remove "luks" storage volume type · a48c7141
      Daniel P. Berrange 提交于
      The current LUKS support has a "luks" volume type which has
      a "luks" encryption format.
      
      This partially makes sense if you consider the QEMU shorthand
      syntax only requires you to specify a format=luks, and it'll
      automagically uses "raw" as the next level driver. QEMU will
      however let you override the "raw" with any other driver it
      supports (vmdk, qcow, rbd, iscsi, etc, etc)
      
      IOW the intention though is that the "luks" encryption format
      is applied to all disk formats (whether raw, qcow2, rbd, gluster
      or whatever). As such it doesn't make much sense for libvirt
      to say the volume type is "luks" - we should be saying that it
      is a "raw" file, but with "luks" encryption applied.
      
      IOW, when creating a storage volume we should use this XML
      
        <volume>
          <name>demo.raw</name>
          <capacity>5368709120</capacity>
          <target>
            <format type='raw'/>
            <encryption format='luks'>
              <secret type='passphrase' uuid='0a81f5b2-8403-7b23-c8d6-21ccd2f80d6f'/>
            </encryption>
          </target>
        </volume>
      
      and when configuring a guest disk we should use
      
        <disk type='file' device='disk'>
          <driver name='qemu' type='raw'/>
          <source file='/home/berrange/VirtualMachines/demo.raw'/>
          <target dev='sda' bus='scsi'/>
          <encryption format='luks'>
            <secret type='passphrase' uuid='0a81f5b2-8403-7b23-c8d6-21ccd2f80d6f'/>
          </encryption>
        </disk>
      
      This commit thus removes the "luks" storage volume type added
      in
      
        commit 318ebb36
        Author: John Ferlan <jferlan@redhat.com>
        Date:   Tue Jun 21 12:59:54 2016 -0400
      
          util: Add 'luks' to the FileTypeInfo
      
      The storage file probing code is modified so that it can probe
      the actual encryption formats explicitly, rather than merely
      probing existance of encryption and letting the storage driver
      guess the format.
      
      The rest of the code is then adapted to deal with
      VIR_STORAGE_FILE_RAW w/ VIR_STORAGE_ENCRYPTION_FORMAT_LUKS
      instead of just VIR_STORAGE_FILE_LUKS.
      
      The commit mentioned above was included in libvirt v2.0.0.
      So when querying volume XML this will be a change in behaviour
      vs the 2.0.0 release - it'll report 'raw' instead of 'luks'
      for the volume format, but still report 'luks' for encryption
      format.  I think this change is OK because the storage driver
      did not include any support for creating volumes, nor starting
      guets with luks volumes in v2.0.0 - that only since then.
      Clearly if we change this we must do it before v2.1.0 though.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      a48c7141
  5. 27 7月, 2016 8 次提交
  6. 19 7月, 2016 3 次提交
  7. 18 7月, 2016 2 次提交
    • J
      Store USB port path as an array of integers · f820d5bf
      Ján Tomko 提交于
      In preparation to tracking which USB addresses are occupied.
      Introduce two helper functions for printing the port path
      as a string and appending it to a virBuffer.
      f820d5bf
    • J
      Allow omitting USB port · 4f903643
      Ján Tomko 提交于
      We were requiring a USB port path in the schema, but not enforcing it.
      Omitting the USB port would lead to libvirt formatting it as (null).
      Such domain cannot be started and will disappear after libvirtd restart
      (since it cannot parse back the XML).
      
      Only format the port if it has been specified and mark it as optional
      in the XML schema.
      4f903643
  8. 13 7月, 2016 1 次提交
  9. 12 7月, 2016 1 次提交
  10. 11 7月, 2016 1 次提交
    • M
      qemuBuildCpuCommandLine: Don't leak @buf · 87df9452
      Michal Privoznik 提交于
      Just like every other qemuBuild*CommandLine() function, this uses
      a buffer to hold partial cmd line strings too. However, if
      there's an error, the control jumps to 'cleanup' label leaving
      the buffer behind and thus leaking it.
      
      ==2013== 1,006 bytes in 1 blocks are definitely lost in loss record 701 of 711
      ==2013==    at 0x4C29F80: malloc (vg_replace_malloc.c:296)
      ==2013==    by 0x4C2C32F: realloc (vg_replace_malloc.c:692)
      ==2013==    by 0xAD925A8: virReallocN (viralloc.c:245)
      ==2013==    by 0xAD95EA8: virBufferGrow (virbuffer.c:130)
      ==2013==    by 0xAD95F78: virBufferAdd (virbuffer.c:165)
      ==2013==    by 0x5097F5: qemuBuildCpuModelArgStr (qemu_command.c:6339)
      ==2013==    by 0x509CC3: qemuBuildCpuCommandLine (qemu_command.c:6437)
      ==2013==    by 0x51142C: qemuBuildCommandLine (qemu_command.c:9174)
      ==2013==    by 0x47CA3A: qemuProcessCreatePretendCmd (qemu_process.c:5546)
      ==2013==    by 0x433698: testCompareXMLToArgvFiles (qemuxml2argvtest.c:332)
      ==2013==    by 0x4339AC: testCompareXMLToArgvHelper (qemuxml2argvtest.c:413)
      ==2013==    by 0x446E7A: virTestRun (testutils.c:179)
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      87df9452
  11. 07 7月, 2016 2 次提交
    • P
      qemu: caps: Always assume QEMU_CAPS_SMP_TOPOLOGY · e114b091
      Peter Krempa 提交于
      Support for SMP topology was added by qemu commit dc6b1c09849484fbbc50
      prior to 0.12.0, our minimum supported qemu version.
      
      $ git describe --tags dc6b1c09849484fbbc50803307e4c7a3d81eab62
      v0.11.0-rc0-449-gdc6b1c0
      $ git describe --tags --contains dc6b1c09849484fbbc50803307e4c7a3d81eab
      v0.12.0-rc0~1477
      e114b091
    • P
      qemu: generate -display none · 7a97676b
      Paolo Bonzini 提交于
      This is preferrable to -nographic which (in addition to disabling
      graphics output) redirects the serial port to stdio and on OpenBIOS
      enables the firmware's serial console.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      7a97676b
  12. 01 7月, 2016 2 次提交
  13. 25 6月, 2016 2 次提交
  14. 24 6月, 2016 4 次提交
  15. 23 6月, 2016 2 次提交
  16. 20 6月, 2016 1 次提交
    • A
      qemu: Don't use legacy USB for aarch64 mach-virt guests · dc5821d7
      Andrea Bolognani 提交于
      The '-usb' option doesn't have any effect for aarch64 mach-virt
      guests, so the fact that it's currently enabled by default is not
      really causing any issue.
      
      However, that might change in the future (although unlikely), and
      having it as part of the QEMU command line can cause confusion to
      someone looking through the process list.
      
      Avoid it completely, like it's already happening for q35.
      dc5821d7
  17. 16 6月, 2016 2 次提交
  18. 15 6月, 2016 1 次提交