1. 12 6月, 2018 1 次提交
    • B
      conf: Introduce launch-security element in domain · e5791a03
      Brijesh Singh 提交于
      The launch-security element can be used to define the security
      model to use when launching a domain. Currently we support 'sev'.
      
      When 'sev' is used, the VM will be launched with AMD SEV feature enabled.
      SEV feature supports running encrypted VM under the control of KVM.
      Encrypted VMs have their pages (code and data) secured such that only the
      guest itself has access to the unencrypted version. Each encrypted VM is
      associated with a unique encryption key; if its data is accessed to a
      different entity using a different key the encrypted guests data will be
      incorrectly decrypted, leading to unintelligible data.
      Signed-off-by: NBrijesh Singh <brijesh.singh@amd.com>
      Reviewed-by: NErik Skultety <eskultet@redhat.com>
      e5791a03
  2. 08 6月, 2018 1 次提交
    • M
      conf, schema, docs: Add support for TSEG size setting · 1bd5a08d
      Martin Kletzander 提交于
      TSEG (Top of Memory Segment) is one of many regions that SMM (System Management
      Mode) can occupy.  This one, however is special, because a) most of the SMM code
      lives in TSEG nowadays and b) QEMU just (well, some time ago) added support for
      so called 'extended' TSEG.  The difference to the TSEG implemented in real q35's
      MCH (Memory Controller Hub) is that it can offer one extra size to the guest OS
      apart from the standard TSEG's 1, 2, and 8 MiB and that size can be selected in
      1 MiB increments.  Maximum may vary based on QEMU and is way too big, so we
      don't need to check for the maximum here.  Similarly to the memory size we'll
      leave it to the hypervisor to try satisfying that and giving us an error message
      in case it is not possible.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      Acked-by: NLaszlo Ersek <lersek@redhat.com>
      Reviewed-by: NJán Tomko <jtomko@redhat.com>
      1bd5a08d
  3. 06 6月, 2018 2 次提交
  4. 05 6月, 2018 1 次提交
  5. 01 6月, 2018 1 次提交
  6. 29 5月, 2018 1 次提交
  7. 25 5月, 2018 1 次提交
    • J
      conf: Add VM Generation ID parse/format support · b50efe97
      John Ferlan 提交于
      The VM Generation ID is a mechanism to provide a unique 128-bit,
      cryptographically random, and integer value identifier known as
      the GUID (Globally Unique Identifier) to the guest OS. The value
      is used to help notify the guest operating system when the virtual
      machine is executed with a different configuration.
      
      This patch adds support for a new "genid" XML element similar to
      the "uuid" element. The "genid" element can have two forms "<genid/>"
      or "<genid>$GUID</genid>". If the $GUID is not provided, libvirt
      will generate one and save it in the XML.
      
      Since adding support for a generated GUID (or UUID like) value to
      be displayed modifying the xml2xml test to include virrandommock.so
      is necessary since it will generate a "known" value.
      Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
      ACKed-by: NMichal Privoznik <mprivozn@redhat.com>
      b50efe97
  8. 23 5月, 2018 1 次提交
  9. 16 5月, 2018 1 次提交
  10. 15 5月, 2018 1 次提交
  11. 14 5月, 2018 1 次提交
  12. 11 5月, 2018 1 次提交
  13. 04 5月, 2018 1 次提交
    • C
      conf: format/parse <vmcoreinfo> as tristate · c84be081
      Cole Robinson 提交于
      <features><vmcoreinfo/> is a bare boolean XML property. We don't really
      use this format anymore and instead prefer tristate <X state=on|off/>
      since it's required for modeling on/off/default. If for example future
      qemu started enabling vmcoreinfo by default we wouldn't have any way
      for the user to turn this off.
      
      Convert it to tristate. For writing XML this is semanticly the same,
      <vmcoreinfo/> is processed as <vmcoreinfo state='on'/>.
      
      For apps reading guest XML this is technically an API change,
      as they might misinterpret <vmcoreinfo state='off'/>, however this
      has only been present in libvirt since 3.10.0 and I don't think any
      apps are dependent on this yet
      Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
      Signed-off-by: NCole Robinson <crobinso@redhat.com>
      c84be081
  14. 03 5月, 2018 1 次提交
  15. 02 5月, 2018 1 次提交
  16. 23 4月, 2018 1 次提交
    • A
      conf: Add rom.enabled attribute for PCI devices · c4466179
      Andrea Bolognani 提交于
      The attribute can be used to disable ROM loading completely
      for a device.
      
      This might be needed because, even when the guest is configured
      such that the PCI ROM will not be loaded in the PCI BAR, some
      hypervisors (eg. QEMU) might still make it available to the
      guest in a form (eg. fw_cfg) that some firmwares (eg. SeaBIOS)
      will consume, thus not achieving the desired result.
      Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
      c4466179
  17. 06 4月, 2018 1 次提交
  18. 01 4月, 2018 1 次提交
  19. 17 2月, 2018 1 次提交
    • Z
      conf: Add support for setting Chassis SMBIOS data fields · c8fec256
      Zhuang Yanying 提交于
      This type of information defines attributes of a system
      chassis, such as SMBIOS Chassis Asset Tag.
      
      access inside VM (for example)
      Linux:   /sys/class/dmi/id/chassis_asset_tag.
      Windows: (Get-WmiObject Win32_SystemEnclosure).SMBIOSAssetTag
                wirhin Windows PowerShell.
      
      As an example, add the following to the guest XML
      
          <chassis>
            <entry name='manufacturer'>Dell Inc.</entry>
            <entry name='version'>2.12</entry>
            <entry name='serial'>65X0XF2</entry>
            <entry name='asset'>40000101</entry>
            <entry name='sku'>Type3Sku1</entry>
          </chassis>
      Signed-off-by: NZhuang Yanying <ann.zhuangyanying@huawei.com>
      Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
      c8fec256
  20. 26 1月, 2018 2 次提交
  21. 25 1月, 2018 1 次提交
  22. 30 11月, 2017 2 次提交
  23. 28 11月, 2017 4 次提交
  24. 18 11月, 2017 1 次提交
    • M
      qemu: add vmcoreinfo support · 7e4177a3
      Marc-André Lureau 提交于
      Starting from qemu 2.11, the `-device vmcoreinfo` will create a fw_cfg
      entry for a guest to store dump details, necessary to process kernel
      dump with KASLR enabled and providing additional kernel details.
      
      In essence, it is similar to -fw_cfg name=etc/vmcoreinfo,file=X but in
      this case it is not backed by a file, but collected by QEMU itself.
      
      Since the device is a singleton and shouldn't use additional hardware
      resources, it is presented as a <feature> element in the libvirt
      domain XML.
      
      The device is arm/x86 only for now (targets that support fw_cfg+dma).
      
      Related to:
      https://bugzilla.redhat.com/show_bug.cgi?id=1395248Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      7e4177a3
  25. 14 11月, 2017 1 次提交
  26. 04 11月, 2017 1 次提交
  27. 20 10月, 2017 2 次提交
    • J
      conf: Add/Allow parsing the encryption in the disk source · 37537a7c
      John Ferlan 提交于
      Since the virStorageEncryptionPtr encryption; is a member of
       _virStorageSource it really should be allowed to be a subelement
      of the disk <source> for various disk formats:
      
         Source{File|Dir|Block|Volume}
         SourceProtocol{RBD|ISCSI|NBD|Gluster|Simple|HTTP}
      
      NB: Simple includes sheepdog, ftp, ftps, tftp
      
      That way we can set up to allow the <encryption> element to be
      formatted within the disk source, but we still need to be wary
      from whence the element was read - see keep track and when it
      comes to format the data, ensure it's written in the correct place.
      
      Modify the qemuxml2argvtest to add a parse failure when there is an
      <encryption> as a child of <disk> *and* an <encryption> as a child
      of <source>.
      
      The virschematest will read the new test files and validate from a
      RNG viewpoint things are fine.
      37537a7c
    • J
      conf: Add/Allow parsing the auth in the disk source · 8002d3cb
      John Ferlan 提交于
      Since the virStorageAuthDefPtr auth; is a member of _virStorageSource
      it really should be allowed to be a subelement of the disk <source>
      for the RBD and iSCSI prototcols. That way we can set up to allow
      the <auth> element to be formatted within the disk source.
      
      Since we've allowed the <auth> to be a child of <disk>, we'll need
      to keep track of how it was read so that when writing out we'll know
      whether to format as child of <disk> or <source>. For the argv2xml
      parsing, let's format under <source> as a preference. Do not allow
      <auth> to be both a child of <disk> and <source>.
      
      Modify the qemuxml2argvtest to add a parse failure when there is an
      <auth> as a child of <disk> *and* an <auth> as a child of <source>.
      
      Add tests to validate that if the <auth> was found in <source>, then
      the resulting xml2xml and xml2arg works just fine.  The two new .args
      file are exact copies of the non "-source" version of the file.
      
      The virschematest will read the new test files and validate from a
      RNG viewpoint things are fine
      
      Update the virstoragefile, virstoragetest, and args2xml file to show
      the "preference" to place <auth> as a child of <source>.
      8002d3cb
  28. 17 10月, 2017 1 次提交
  29. 05 10月, 2017 1 次提交
    • J
      docs,rng: Adjust storage pool name grammar checks · 5d765902
      John Ferlan 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1475250
      
      It's possible to define and start a pool with a '.' in the
      name; however, when trying to add a volume to a domain using
      the storage pool source with a '.' in the storage pool name,
      the domain RNG validation fails because RNG uses 'genericName'
      which does not allow a '.' in the name.
      
      Domain XML def parsing has a virXMLValidateAgainstSchema which
      generates the error. The Storage Pool XML def parsing has no
      call to virXMLValidateAgainstSchema. The only Storage Pool name
      validation occurs in virStoragePoolDefParseXML to ensure the
      name doesn't have a '/' in it and in storagePoolDefineXML to
      call virXMLCheckIllegalChars using the same parameter "\n" as
      qemuDomainDefineXMLFlags would check after the RNG check
      could be succesful.
      
      In order to resolve this, create a poolName definition in
      storagecommon.rng that will mimic the domain name regex that
      disallows a newline character, but add the "/" in the exclude
      list. Then modify the pool and volume source name definitions
      to key off that poolName.
      5d765902
  30. 04 10月, 2017 1 次提交
    • L
      qemu: Support multiqueue virtio-blk · abca72fa
      Lin Ma 提交于
      qemu 2.7.0 introduces multiqueue virtio-blk(commit 2f27059).
      This patch introduces a new attribute "queues". An example of
      the XML:
      
      <disk type='file' device='disk'>
        <driver name='qemu' type='qcow2' queues='4'/>
      
      The corresponding QEMU command line:
      
      -device virtio-blk-pci,scsi=off,num-queues=4,id=virtio-disk0
      Signed-off-by: NLin Ma <lma@suse.com>
      Signed-off-by: NJán Tomko <jtomko@redhat.com>
      abca72fa
  31. 28 9月, 2017 1 次提交
    • A
      util: Add TLS attributes to virStorageSource · f1705485
      Ashish Mittal 提交于
      Add an optional virTristateBool haveTLS to virStorageSource to
      manage whether a storage source will be using TLS.
      
      Sample XML for a VxHS disk:
      
      <disk type='network' device='disk'>
        <driver name='qemu' type='raw' cache='none'/>
        <source protocol='vxhs' name='eb90327c-8302-4725-9e1b-4e85ed4dc251' tls='yes'>
          <host name='192.168.0.1' port='9999'/>
        </source>
        <target dev='vda' bus='virtio'/>
      </disk>
      
      Additionally add a tlsFromConfig boolean to control whether the TLS
      setting was due to domain configuration or qemu.conf global setting
      in order to decide whether to Format the haveTLS setting for either
      a live or saved domain configuration file.
      
      Update the qemuxml2xmltest in order to add a test to show the proper
      parsing.
      
      Also update the docs to describe the tls attribute.
      Signed-off-by: NAshish Mittal <Ashish.Mittal@veritas.com>
      Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
      f1705485
  32. 27 9月, 2017 1 次提交
  33. 20 9月, 2017 1 次提交