1. 16 10月, 2017 1 次提交
  2. 04 10月, 2017 1 次提交
  3. 20 9月, 2017 1 次提交
    • J
      qemu: Detect support for vxhs · fa6159dd
      John Ferlan 提交于
      Using the query-qmp-schema introspection - look for the 'vxhs'
      blockdevOptions type.
      
      NB: This is a "best effort" type situation as there is not a
          mechanism to determine whether the running QEMU has been
          built with '--enable-vxhs'. All we can do is check if the
          option to use vxhs for a blockdev-add exists in the command
          infrastructure which does not take that into account when
          building its table of commands and options.
      Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
      fa6159dd
  4. 18 9月, 2017 1 次提交
  5. 14 9月, 2017 1 次提交
  6. 29 8月, 2017 2 次提交
  7. 02 8月, 2017 1 次提交
  8. 27 7月, 2017 1 次提交
  9. 26 7月, 2017 2 次提交
    • P
      qemu: switch QEMU capabilities to use virFileCache · d03de54e
      Pavel Hrdina 提交于
      The switch contains considerable amount of changes:
      
        virQEMUCapsRememberCached() is removed because this is now handled
        by virFileCacheSave().
      
        virQEMUCapsInitCached() is removed because this is now handled by
        virFileCacheLoad().
      
        virQEMUCapsNewForBinary() is split into two functions,
        virQEMUCapsNewData() which creates new data if there is nothing
        cached and virQEMUCapsLoadFile() which loads the cached data.
        This is now handled by virFileCacheNewData().
      
        virQEMUCapsCacheValidate() is removed because this is now handled by
        virFileCacheValidate().
      
        virQEMUCapsCacheFree() is removed because it's no longer required.
      
        Add virCapsPtr into virQEMUCapsCachePriv because for each call of
        virFileCacheLookup*() we need to use current virCapsPtr.
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      Reviewed-by: NJiri Denemark <jdenemar@redhat.com>
      d03de54e
    • P
      qemu: pass only host arch instead of the whole virCaps · f366cfed
      Pavel Hrdina 提交于
      This is a preparation for following patches where we switch to
      virFileCache for QEMU capabilities cache
      
      The host arch will always remain the same but virCaps may change.  Now
      the host arch is stored while creating new qemu capabilities cache.
      It removes the need to pass virCaps into virQEMUCapsCache*() functions.
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      Reviewed-by: NJiri Denemark <jdenemar@redhat.com>
      f366cfed
  10. 22 7月, 2017 1 次提交
  11. 21 7月, 2017 1 次提交
  12. 20 7月, 2017 1 次提交
  13. 15 7月, 2017 1 次提交
  14. 13 7月, 2017 1 次提交
  15. 11 7月, 2017 2 次提交
  16. 20 6月, 2017 1 次提交
  17. 08 6月, 2017 2 次提交
  18. 26 5月, 2017 1 次提交
  19. 15 5月, 2017 3 次提交
  20. 28 4月, 2017 2 次提交
    • P
      5237a74d
    • J
      qemu: Add support for guest CPU cache · df13c0b4
      Jiri Denemark 提交于
      This patch maps /domain/cpu/cache element into -cpu parameters:
      
      - <cache mode='passthrough'/> is translated to host-cache-info=on
      - <cache level='3' mode='emulate'/> is transformed into l3-cache=on
      - <cache mode='disable'/> is turned in host-cache-info=off,l3-cache=off
      
      Any other <cache> element is forbidden.
      
      The tricky part is detecting whether QEMU supports the CPU properties.
      
      The 'host-cache-info' property is introduced in v2.4.0-1389-ge265e3e480,
      earlier QEMU releases enabled host-cache-info by default and had no way
      to disable it. If the property is present, it defaults to 'off' for any
      QEMU until at least 2.9.0.
      
      The 'l3-cache' property was introduced later by v2.7.0-200-g14c985cffa.
      Earlier versions worked as if l3-cache=off was passed. For any QEMU
      until at least 2.9.0 l3-cache is 'off' by default.
      
      QEMU 2.9.0 was the first release which supports probing both properties
      by running device-list-properties with typename=host-x86_64-cpu. Older
      QEMU releases did not support device-list-properties command for CPU
      devices. Thus we can't really rely on probing them and we can just use
      query-cpu-model-expansion QMP command as a witness.
      
      Because the cache property probing is only reliable for QEMU >= 2.9.0
      when both are already supported for quite a few releases, we let QEMU
      report an error if a specific cache mode is explicitly requested. The
      other mode (or both if a user requested CPU cache to be disabled) is
      explicitly turned off for QEMU >= 2.9.0 to avoid any surprises in case
      the QEMU defaults change. Any older QEMU already turns them off so not
      doing so explicitly does not make any harm.
      Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
      df13c0b4
  21. 19 4月, 2017 3 次提交
    • J
      qemu: Use more data for comparing CPUs · 5b4a6adb
      Jiri Denemark 提交于
      With QEMU older than 2.9.0 libvirt uses CPUID instruction to determine
      what CPU features are supported on the host. This was later used when
      checking compatibility of guest CPUs. Since QEMU 2.9.0 we ask QEMU for
      the host CPU data. But the two methods we use usually provide disjoint
      sets of CPU features because QEMU/KVM does not support all features
      provided by the host CPU and on the other hand it can enable some
      feature even if the host CPU does not support them.
      
      So if there is a domain which requires a CPU features disabled by
      QEMU/KVM, libvirt will refuse to start it with QEMU > 2.9.0 as its guest
      CPU is incompatible with the host CPU data we got from QEMU. But such
      domain would happily start on older QEMU (of course, the features would
      be missing the guest CPU). To fix this regression, we need to combine
      both CPU feature sets when checking guest CPU compatibility.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1439933Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
      5b4a6adb
    • J
      qemu: Pass migratable host CPU model to virCPUUpdate · 56bd7edc
      Jiri Denemark 提交于
      We already know from QEMU which CPU features will block migration. Let's
      use this information to make a migratable copy of the host CPU model and
      use it for updating guest CPU specification. This will allow us to drop
      feature filtering from virCPUUpdate where it was just a hack.
      Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
      56bd7edc
    • J
      qemu: Prepare qemuCaps for multiple host CPU defs · 1fe517c6
      Jiri Denemark 提交于
      Soon we will need to store multiple host CPU definitions in
      virQEMUCapsHostCPUData and qemuCaps users will want to request the one
      they need. This patch introduces virQEMUCapsHostCPUType enum which will
      be used for specifying the requested CPU definition.
      Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
      1fe517c6
  22. 07 4月, 2017 2 次提交
  23. 06 4月, 2017 1 次提交
    • A
      qemu: Move some functions to qemu_capspriv.h · 2e5de445
      Andrea Bolognani 提交于
      This header file has been created so that we can expose
      internal functions to the test suite without making them
      public: those in qemu_capabilities.h bearing the comment
      
        /* Only for use by test suite */
      
      are obvious candidates for being moved over.
      2e5de445
  24. 03 4月, 2017 1 次提交
    • A
      tests: Initialize basic capabilities properly · 1cf3e52a
      Andrea Bolognani 提交于
      The capabilities used in test cases should match those used
      during normal operation for the tests to make any sense.
      
      This results in the generated command line for a few test
      cases (most notably non-x86 test cases that were wrongly
      assuming they could use -no-acpi) changing.
      1cf3e52a
  25. 27 3月, 2017 2 次提交
  26. 17 3月, 2017 2 次提交
  27. 15 3月, 2017 1 次提交
  28. 04 3月, 2017 1 次提交