1. 14 8月, 2014 3 次提交
  2. 01 8月, 2014 1 次提交
  3. 29 7月, 2014 1 次提交
    • P
      pc: hack for migration compatibility from QEMU 2.0 · 07fb6176
      Paolo Bonzini 提交于
      Changing the ACPI table size causes migration to break, and the memory
      hotplug work opened our eyes on how horribly we were breaking things in
      2.0 already.
      
      The ACPI table size is rounded to the next 4k, which one would think
      gives some headroom.  In practice this is not the case, because the user
      can control the ACPI table size (each CPU adds 97 bytes to the SSDT and
      8 to the MADT) and so some "-smp" values will break the 4k boundary and
      fail to migrate.  Similarly, PCI bridges add ~1870 bytes to the SSDT.
      
      This patch concerns itself with fixing migration from QEMU 2.0.  It
      computes the payload size of QEMU 2.0 and always uses that one.
      The previous patch shrunk the ACPI tables enough that the QEMU 2.0 size
      should always be enough; non-AML tables can change depending on the
      configuration (especially MADT, SRAT, HPET) but they remain the same
      between QEMU 2.0 and 2.1, so we only compute our padding based on the
      sizes of the SSDT and DSDT.
      
      Migration from QEMU 1.7 should work for guests that have a number of CPUs
      other than 12, 13, 14, 54, 55, 56, 97, 98, 139, 140.  It was already
      broken from QEMU 1.7 to QEMU 2.0 in the same way, though.
      
      Even with this patch, QEMU 1.7 and 2.0 have two different ideas of
      "-M pc-i440fx-2.0" when there are PCI bridges.  Igor sent a patch to
      adopt the QEMU 1.7 definition.  I think distributions should apply
      it if they move directly from QEMU 1.7 to 2.1+ without ever packaging
      version 2.0.
      Reviewed-by: NLaszlo Ersek <lersek@redhat.com>
      Tested-by: NIgor Mammedov <imammedo@redhat.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      07fb6176
  4. 29 6月, 2014 2 次提交
    • E
      pc: Fix "prog_if" typo on PC_COMPAT_2_0 · fa118d1f
      Eduardo Habkost 提交于
      The property name is "prog_if", not "prof_if".
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Reported-by: NBALATON Zoltan <balaton@eik.bme.hu>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      fa118d1f
    • E
      pc: Move q35 compat props to PC_COMPAT_* · b8f5cfd6
      Eduardo Habkost 提交于
      For each compat property on PC_Q35_COMPAT_*, there are only two
      possibilities:
      
       * If the device is never instantiated when using a machine other than
         pc-q35, then the compat property can be safely added to
         PC_COMPAT_*;
       * If the device can be instantiated when using a machine other than
         pc-q35, that means the other machines also need the compat property
         to be set.
      
      That means we don't need separate PC_Q35_COMPAT_* macros at all, today.
      
      The hpet.hpet-intcap case is interesting: piix and q35 do have something
      that emulates different defaults, but the machine-specific default is
      applied _after_ compat_props are applied, by simply checking if the
      property is zero (which is the real default on the hpet code).
      
      The hpet.hpet-intcap=0x4 compat property can (should?) be applied to
      piix too, because 0x4 was the default on both piix and q35 before the
      hpet-intcap property was introduced.
      
      Now, if one day we change the default HPET intcap on one of the PC
      machine-types again, we may want to introduce PC_{Q35,I440FX}_COMPAT
      macros. But while we don't need that, we can keep the code simple.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Cc: Liu Ping Fan <pingfank@linux.vnet.ibm.com>
      Cc: Peter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      b8f5cfd6
  5. 23 6月, 2014 2 次提交
  6. 19 6月, 2014 11 次提交
  7. 18 6月, 2014 1 次提交
  8. 02 6月, 2014 1 次提交
  9. 21 5月, 2014 1 次提交
  10. 07 5月, 2014 2 次提交
  11. 05 5月, 2014 1 次提交
  12. 14 2月, 2014 1 次提交
  13. 26 1月, 2014 2 次提交
  14. 16 1月, 2014 1 次提交
    • G
      usb: add support for microsoft os descriptors · 5319dc7b
      Gerd Hoffmann 提交于
      This patch adds support for special usb descriptors used by microsoft
      windows.  They allow more fine-grained control over driver binding and
      adding entries to the registry for configuration.
      
      As this is a guest-visible change the "msos-desc" compat property
      has been added to turn this off for 1.7 + older
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      5319dc7b
  15. 24 12月, 2013 1 次提交
  16. 12 12月, 2013 1 次提交
  17. 10 12月, 2013 1 次提交
  18. 22 11月, 2013 1 次提交
    • P
      pc: get rid of builtin pvpanic for "-M pc-1.5" · 7839ff59
      Paolo Bonzini 提交于
      This causes two slight backwards-incompatibilities between "-M pc-1.5"
      and 1.5's "-M pc":
      
      (1) a fw_cfg file is removed with this patch.  This is only a problem
      if migration stops the virtual machine exactly during fw_cfg enumeration.
      
      (2) after migration, a VM created without an explicit "-device pvpanic"
      will stop reporting panics to management.
      
      The first problem only occurs if migration is done at a very, very
      early point (and I'm not sure it can happen in practice for reasonable-size
      VMs, since it will likely take more time to send the RAM to destination,
      than it will take for BIOS to scan fw_cfg).
      
      The second problem only occurs if the guest panics _and_ has a guest
      driver _and_ management knows to look at the crash event, so it is
      mostly theoretical at this point in time.
      
      Thus keep the code simple, and pretend it was never broken.
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      7839ff59
  19. 10 11月, 2013 1 次提交
    • C
      Fix pc migration from qemu <= 1.5 · 04c7d8b8
      Cole Robinson 提交于
      The following commit introduced a migration incompatibility:
      
      commit 568f0690
      Author: David Gibson <david@gibson.dropbear.id.au>
      Date:   Thu Jun 6 18:48:49 2013 +1000
      
          pci: Replace pci_find_domain() with more general pci_root_bus_path()
      
      The issue is that i440fx savevm idstr went from 0000:00:00.0/I440FX to
      0000:00.0/I440FX. Unfortunately we are stuck with the breakage for
      1.6 machine types.
      
      Add a compat property to maintain the busted idstr for the 1.6 machine
      types, but revert to the old style format for 1.7+, and <= 1.5.
      
      Tested with migration from qemu 1.5, qemu 1.6, and qemu.git.
      
      Cc: qemu-stable@nongnu.org
      Signed-off-by: NCole Robinson <crobinso@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      04c7d8b8
  20. 14 10月, 2013 5 次提交