1. 28 8月, 2013 2 次提交
    • M
      hw: Clean up bogus default boot order · c1654732
      Markus Armbruster 提交于
      We set default boot order "cad" in every single machine definition
      except "pseries" and "moxiesim", even though very few boards actually
      care for boot order, and "cad" makes sense for even fewer.
      
      Machines that care:
      
      * pc and its variants
      
        Accept up to three letters 'a', 'b' (undocumented alias for 'a'),
        'c', 'd' and 'n'.  Reject all others (fatal with -boot).
      
      * nseries (n800, n810)
      
        Check whether order starts with 'n'.  Silently ignored otherwise.
      
      * prep, g3beige, mac99
      
        Extract the first character the machine understands (subset of
        'a'..'f').  Silently ignored otherwise.
      
      * spapr
      
        Accept an arbitrary string (vl.c restricts it to contain only
        'a'..'p', no duplicates).
      
      * sun4[mdc]
      
        Use the first character.  Silently ignored otherwise.
      
      Strip characters these machines ignore from their default boot order.
      
      For all other machines, remove the unused default boot order
      alltogether.
      
      Note that my rename of QEMUMachine member boot_order to
      default_boot_order and QEMUMachineInitArgs member boot_device to
      boot_order has a welcome side effect: it makes every use of boot
      orders visible in this patch, for easy review.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NLaszlo Ersek <lersek@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      c1654732
    • A
      pci: add config space access traces · 3bf4dfdd
      Alexey Kardashevskiy 提交于
      This adds pci_cfg_read and pci_cfg_write traces for config spaces
      accesses.
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      3bf4dfdd
  2. 27 8月, 2013 2 次提交
    • M
      pc: fix regression for 64 bit PCI memory · 1466cef3
      Michael S. Tsirkin 提交于
      commit 39848901
          pc: limit 64 bit hole to 2G by default
      introduced a way for management to control
      the window allocated to the 64 bit PCI hole.
      
      This is useful, but existing management tools do not know how to set
      this property.  As a result, e.g. specifying a large ivshmem device with
      size > 4G is broken by default.  For example this configuration no
      longer works:
      
      -device ivshmem,size=4294967296,chardev=cfoo
      -chardev socket,path=/tmp/sock,id=cfoo,server,nowait
      
      Fix this by detecting that hole size was not specified
      and defaulting to the backwards-compatible value of 1 << 62.
      
      Cc: qemu-stable@nongnu.org
      Cc: Igor Mammedov <imammedo@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      1466cef3
    • A
      pci: Introduce helper to retrieve a PCI device's DMA address space · 9eda7d37
      Alexey Kardashevskiy 提交于
      A PCI device's DMA address space (possibly an IOMMU) is returned by a
      method on the PCIBus.  At the moment that only has one caller, so the
      method is simply open coded.  We'll need another caller for VFIO, so
      this patch introduces a helper/wrapper function.
      
      If IOMMU is not set, the pci_device_iommu_address_space() function
      returns the parent's IOMMU skipping the "bus master" address space as
      otherwise proper emulation would require more effort for no benefit.
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      [aik: added inheritance from parent if iommu is not set for the current bus]
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      9eda7d37
  3. 25 8月, 2013 1 次提交
  4. 22 8月, 2013 9 次提交
  5. 21 8月, 2013 2 次提交
    • M
      loader: store FW CFG ROM files in RAM · 04920fc0
      Michael S. Tsirkin 提交于
      ROM files that are put in FW CFG are copied to guest ram, by BIOS, but
      they are not backed by RAM so they don't get migrated.
      
      Each time we change two bytes in such a ROM this breaks cross-version
      migration: since we can migrate after BIOS has read the first byte but
      before it has read the second one, getting an inconsistent state.
      
      Future-proof this by creating, for each such ROM,
      an MR serving as the backing store.
      This MR is never mapped into guest memory, but it's registered
      as RAM so it's migrated with the guest.
      
      Naturally, this only helps for -M 1.7 and up, older machine types
      will still have the cross-version migration bug.
      Luckily the race window for the problem to trigger is very small,
      which is also likely why we didn't notice the cross-version
      migration bug in testing yet.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NLaszlo Ersek <lersek@redhat.com>
      04920fc0
    • M
      pc: cleanup 1.4 compat support · c0b4cc1f
      Michael S. Tsirkin 提交于
      Make 1.4 compat code call the 1.6 one, reducing
      code duplication. Add comment explaining why we can't
      make 1.4 call 1.5 as usual.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NAndreas Färber <afaerber@suse.de>
      Reviewed-by: NEduardo Habkost <ehabkost@redhat.com>
      c0b4cc1f
  6. 20 8月, 2013 17 次提交
  7. 19 8月, 2013 3 次提交
  8. 17 8月, 2013 2 次提交
  9. 14 8月, 2013 1 次提交
  10. 13 8月, 2013 1 次提交