1. 15 3月, 2012 1 次提交
  2. 07 3月, 2012 1 次提交
    • J
      kvm: x86: Add user space part for in-kernel i8254 · 5d17c0d2
      Jan Kiszka 提交于
      This provides the required user space stubs to enable the in-kernel
      i8254 emulation of KVM.
      
      The in-kernel model supports lost tick compensation according to the
      "delay" policy. This is enabled by default and can be switched off via a
      device property.
      
      Depending on the feature set of the host kernel (before 2.6.32), we may
      have to disable the HPET or lack sound output from the PC speaker.
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      5d17c0d2
  3. 29 2月, 2012 1 次提交
  4. 25 2月, 2012 1 次提交
    • G
      suspend: switch acpi s3 to new infrastructure. · da98c8eb
      Gerd Hoffmann 提交于
      This patch switches pc s3 suspend over to the new infrastructure.
      The cmos_s3 qemu_irq is killed, the new notifier is used instead.
      The xen hack goes away with that too, the hypercall can simply be
      done in a notifier function now.
      
      This patch also makes the guest actually stay suspended instead
      of leaving suspend instantly, so it is useful for more than just
      testing whenever the suspend/resume cycle actually works.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      da98c8eb
  5. 22 2月, 2012 1 次提交
  6. 17 2月, 2012 4 次提交
  7. 15 2月, 2012 1 次提交
  8. 09 2月, 2012 1 次提交
  9. 04 2月, 2012 1 次提交
    • A
      qdev: register all types natively through QEMU Object Model · 39bffca2
      Anthony Liguori 提交于
      This was done in a mostly automated fashion.  I did it in three steps and then
      rebased it into a single step which avoids repeatedly touching every file in
      the tree.
      
      The first step was a sed-based addition of the parent type to the subclass
      registration functions.
      
      The second step was another sed-based removal of subclass registration functions
      while also adding virtual functions from the base class into a class_init
      function as appropriate.
      
      Finally, a python script was used to convert the DeviceInfo structures and
      qdev_register_subclass functions to TypeInfo structures, class_init functions,
      and type_register_static calls.
      
      We are almost fully converted to QOM after this commit.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      39bffca2
  10. 28 1月, 2012 1 次提交
  11. 22 1月, 2012 2 次提交
  12. 19 1月, 2012 3 次提交
  13. 04 1月, 2012 1 次提交
    • A
      vmstate, memory: decouple vmstate from memory API · c5705a77
      Avi Kivity 提交于
      Currently creating a memory region automatically registers it for
      live migration.  This differs from other state (which is enumerated
      in a VMStateDescription structure) and ties the live migration code
      into the memory core.
      
      Decouple the two by introducing a separate API, vmstate_register_ram(),
      for registering a RAM block for migration.  Currently the same
      implementation is reused, but later it can be moved into a separate list,
      and registrations can be moved to VMStateDescription blocks.
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      c5705a77
  14. 23 12月, 2011 1 次提交
    • V
      Set numa topology for max_cpus · 991dfefd
      Vasilis Liaskovitis 提交于
      qemu-kvm passes numa/SRAT topology information for smp_cpus to SeaBIOS. However
      SeaBIOS always expects to setup max_cpus number of SRAT cpu entries
      (MaxCountCPUs variable in build_srat function of Seabios). When qemu-kvm runs
      with smp_cpus != max_cpus (e.g. -smp 2,maxcpus=4), Seabios will mistakenly use
      memory SRAT info for setting up CPU SRAT entries for the offline CPUs. Wrong
      SRAT memory entries are also created. This breaks NUMA in a guest.
      Fix by setting up SRAT info for max_cpus in qemu-kvm.
      Signed-off-by: NVasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
      Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
      991dfefd
  15. 21 12月, 2011 1 次提交
  16. 15 12月, 2011 1 次提交
  17. 06 12月, 2011 1 次提交
  18. 11 11月, 2011 1 次提交
  19. 08 11月, 2011 1 次提交
  20. 02 11月, 2011 1 次提交
  21. 21 10月, 2011 1 次提交
    • K
      pc: Fix floppy drives with if=none · 34d4260e
      Kevin Wolf 提交于
      Commit 63ffb564 broke floppy devices specified on the command line like
      -drive file=...,if=none,id=floppy -global isa-fdc.driveA=floppy because it
      relies on drive_get() which works only with -fda/-drive if=floppy.
      
      This patch resembles what we're already doing for IDE, i.e. remember the floppy
      device that was created and use that to extract the BlockDriverStates where
      needed.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      34d4260e
  22. 16 10月, 2011 3 次提交
  23. 11 10月, 2011 1 次提交
  24. 23 9月, 2011 1 次提交
  25. 03 9月, 2011 1 次提交
    • S
      Use new macro QEMU_PACKED for packed structures · 541dc0d4
      Stefan Weil 提交于
      Most changes were made using these commands:
      
      git grep -la '__attribute__((packed))'|xargs perl -pi -e 's/__attribute__\(\(packed\)\)/QEMU_PACKED/'
      git grep -la '__attribute__ ((packed))'|xargs perl -pi -e 's/__attribute__ \(\(packed\)\)/QEMU_PACKED/'
      git grep -la '__attribute__((__packed__))'|xargs perl -pi -e 's/__attribute__\(\(__packed__\)\)/QEMU_PACKED/'
      git grep -la '__attribute__ ((__packed__))'|xargs perl -pi -e 's/__attribute__ \(\(__packed__\)\)/QEMU_PACKED/'
      git grep -la '__attribute((packed))'|xargs perl -pi -e 's/__attribute\(\(packed\)\)/QEMU_PACKED/'
      
      Whitespace in linux-user/syscall_defs.h was fixed manually
      to avoid warnings from scripts/checkpatch.pl.
      
      Manual changes were also applied to hw/pc.c.
      
      I did not fix indentation with tabs in block/vvfat.c.
      The patch will show 4 errors with scripts/checkpatch.pl.
      Signed-off-by: NStefan Weil <weil@mail.berlios.de>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      541dc0d4
  26. 22 8月, 2011 2 次提交
    • A
      440fx: fix PAM, PCI holes · ae0a5466
      Avi Kivity 提交于
      The current implementation of PAM and the PCI holes is broken in several
      ways:
      
        - PCI BARs are not restricted to the PCI hole (a BAR may hide memory)
        - PCI devices do not respect PAM (if a PCI device maps a region while
          PAM maps the region to RAM, the request will be honored)
      
      This patch fixes things by introducing a pci address space, and using
      memory region aliases to represent PAM regions, SMRAM, and PCI holes.
      
      The memory hierarchy looks something like
      
      system_memory
       |
       +--- low memory alias (0-0xe0000000)
       |      |
       |      +-- ram@0
       |
       +--- high memory alias (0x100000000-EOM)
       |      |
       |      +-- ram@0xe0000000
       |
       +--- pci hole alias (end of low memory-0x100000000)
       |      |
       |      +-- pci@end-of-low-memory
       |
       |
       +--- pam[n] (0xc0000-0xc3fff etc) (when set to pci, priority 1)
       |      |
       |      +-- pci@0xc4000 etc
       |
       +--- smram (0xa0000-0xbffff) (when set to pci/vga, priority 1)
              |
              +-- pci@0xa0000 etc
      
      ram (simple ram region)
      
      pci
       |
       +--- BARn
       |
       +--- VGA 0xa0000-0xbffff
       |
       +--- ROMs
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      ae0a5466
    • A
      vga: drop get_system_memory() from vga devices and derivatives · be20f9e9
      Avi Kivity 提交于
      Instead, use the bus accessors, or get the address space directly
      from the board constructor.
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      be20f9e9
  27. 21 8月, 2011 1 次提交
  28. 12 8月, 2011 1 次提交
    • A
      pc: make vgabios exit port more useful · 4333979e
      Anthony Liguori 提交于
      We've always listened on port 501 for vgabios panic messages.  In the entire
      time I've worked on QEMU, I've never actually seen a vgabios panic message :-)
      
      If we change the semantics of this port a little bit, it makes it possible to
      use it for more interesting use-cases.  I chose this approach instead of adding
      a new I/O port because it avoids having a guest visible change.
      
      This change allows single-byte access to port 501 and also uses the value
      written to construct an exit code.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      4333979e
  29. 29 7月, 2011 2 次提交
  30. 08 6月, 2011 1 次提交
    • G
      Add an isa device for SGA · a90d4690
      Glauber Costa 提交于
      This patch adds a dummy legacy ISA device whose responsibility is to
      deploy sgabios, an option rom for a serial graphics adapter.
      The proposal is that this device is always-on when -nographics,
      but can otherwise be enable in any setup when -device sga is used.
      
      [v2: suggestions on qdev by Markus ]
      [v3: cleanups and documentation, per list suggestions ]
      Signed-off-by: NGlauber Costa <glommer@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      a90d4690