Permalink
Switch branches/tags
Commits on Apr 17, 2012
  1. target-i386: Introduce "tsc-frequency" property for X86CPU

    afaerber committed Apr 17, 2012
    Use Hz as unit.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  2. target-i386: Prepare "vendor" property for X86CPU

    afaerber committed Apr 17, 2012
    Using it now would incur converting the three x86_def_t vendor words
    into a string for object_property_set_str(), then back to three words
    in the "vendor" setter.
    The built-in CPU definitions use numeric preprocessor defines to
    initialize the three words in a charset-safe way, so do not change the
    fields to char[48] just to use the setter.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  3. target-i386: Introduce "xlevel" property for X86CPU

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  4. target-i386: Introduce "level" property for X86CPU

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  5. target-i386: Add property getter for CPU model-id

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  6. target-i386: Add property getter for CPU stepping

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  7. target-i386: Add property getter for CPU model

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  8. target-i386: Add property getter for CPU family

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  9. target-i386: Add "model-id" property to X86CPU

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  10. target-i386: Add "stepping" property to X86CPU

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  11. target-i386: Add "model" property to X86CPU

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  12. target-i386: Add "family" property to X86CPU

    afaerber committed Apr 17, 2012
    Add the property early in the initfn so that it can be used in helpers
    such as mce_init().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  13. target-i386: Add range check for -cpu ,family=x

    afaerber committed Apr 17, 2012
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  14. target-i386: Pass X86CPU to cpu_x86_register()

    afaerber committed Apr 17, 2012
    Avoids an x86_env_get_cpu() call there, to work with QOM properties.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
  15. target-i386: Fix x86_cpuid_set_model_id()

    afaerber committed Apr 17, 2012
    Don't assume zero'ed cpuid_model[] fields.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
Commits on Apr 16, 2012
  1. qemu-timer.c: Remove 250us timeouts

    portante authored and Anthony Liguori committed Apr 5, 2012
    Basically, the main wait loop calls qemu_run_all_timers() unconditionally. The
    first thing this routine used to do is to see if a timer had been serviced,
    and then reset the loop timeout to the next deadline.
    
    However, the new deadlines had not been calculated at that point, as
    qemu_run_timers() had not been called yet for each of the clocks. So
    qemu_rearm_alarm_timer() would end up with a negative or zero deadline, and
    default to setting a 250us timeout for the loop.
    
    As qemu_run_timers() is called for each clock, the real deadlines would be put
    in place, but because a loop timeout was already set, the loop timeout would
    not be changed.
    
    Once that 250us timeout fired, the real deadline would be used for the
    subsequent timeout.
    
    For idle VMs, this effectively doubles the number of times through the loop,
    doubling the number of select() system calls, timer calls, etc. putting added
    scheduling pressure on the kernel. And under cgroups, this really causes a big
    problem because the cgroup code does not scale well.
    
    By simply running the timers before trying to rearm the timer, we always rearm
    with a non-zero deadline, effectively halving the number of system calls.
    
    Signed-off-by: Peter Portante <pportant@redhat.com>
    Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
  2. Merge remote-tracking branch 'kiszka/queues/pending' into staging

    Anthony Liguori
    Anthony Liguori committed Apr 16, 2012
    * kiszka/queues/pending:
      vapic: Disable for pre-1.1 machines
      Kick io-thread on qemu_chr_accept_input
      pcnet: Properly handle TX requests during Link Fail
      pcnet: Clear ERR in CSR0 on stop
      signrom: Rewrite as python script
    
    Conflicts:
    	hw/pc_piix.c
    
    Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
  3. Merge remote-tracking branch 'mst/tags/for_anthony' into staging

    Anthony Liguori
    Anthony Liguori committed Apr 16, 2012
    * mst/tags/for_anthony:
      pci: fix corrupted pci conf index register by unaligned write
      acpi: explicitly account for >1 device per slot
      acpi_piix4: Re-define PCI hotplug eject register read
      acpi_piix4: Remove PCI_RMV_BASE write code
      acpi_piix4: Fix PCI hotplug race
      acpi_piix4: Disallow write to up/down PCI hotplug registers
      virtio-pci: change virtio balloon PCI class code
      ivshmem: add missing msix calls
      vhost: readd assert statement
      vhost: Fix size of dirty log sync on resize
      pc: reduce duplication in compat machine types
      piix_pci: fix typo in i400FX chipset init code
  4. Merge remote-tracking branch 'sstabellini/for_anthony' into staging

    Anthony Liguori
    Anthony Liguori committed Apr 16, 2012
    * sstabellini/for_anthony:
      xen: introduce an event channel for buffered io event notifications
      xen-mapcache: don't unmap locked entry during mapcache invalidation
      Xen, mapcache: Fix the compute of the size of bucket.
      xen: handle backend deletion from xenstore
      Xen: Add xen-apic support and hook it up.
      Xen: basic HVM MSI injection support.
  5. vapic: Disable for pre-1.1 machines

    jan-kiszka committed Mar 29, 2012
    The kvmvapic was not present in older QEMU versions, thus must be
    disabled in compat machines.
    
    Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
  6. Kick io-thread on qemu_chr_accept_input

    jan-kiszka committed Mar 16, 2012
    Once a chr frontend is able to receive input again, we need to inform
    the io-thread about this fact. Otherwise, main_loop_wait may continue to
    select without the related backend file descriptor in its set. This can
    cause high input latencies if only low-rate events arrive otherwise.
    
    Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
  7. pcnet: Properly handle TX requests during Link Fail

    jan-kiszka committed Feb 29, 2012
    As long as we have no link and we aren't in internal loopback mode, no
    packet must be sent. Instead, LCAR needs to be set in any active TX
    descriptor and also CERR in CSR0.
    
    Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
  8. pcnet: Clear ERR in CSR0 on stop

    jan-kiszka committed Feb 29, 2012
    pcnet_stop already clears any reason (BABL, CERR, MISS, MERR) why ERR
    (bit 15) should be set in CRS0. So we have to clear that bit as well.
    
    Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
  9. signrom: Rewrite as python script

    jan-kiszka committed Jan 27, 2012
    Now that we have a hard dependency on python anyway, we can replace the
    slow shell script to calculate the option ROM checksum with a fast AND
    portable python version. Tested both with python 2.7 and 3.1.
    
    Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Commits on Apr 15, 2012
  1. Merge branch 'w64' of git://qemu.weilnetz.de/qemu

    blueswirl committed Apr 15, 2012
    * 'w64' of git://qemu.weilnetz.de/qemu:
      w64: Fix time conversion for some versions of MinGW-w64
      nbd: Fix compiler warning (w64)
      disas: Replace 'unsigned long' by 'uintptr_t'
      cpu-exec: Remove non-portable type cast and fix format string
      target-mips: Fix type cast for w64 (uintptr_t)
      w64: Fix type cast in os_host_main_loop_wait
      w64: Fix data types in softmmu*.h
      w64: Use uintptr_t in exec.c
      softmmu: Use uintptr_t for physaddr and rename it
      w64: Fix struct CPUTLBEntry
      w64: Fix definition of setjmp
      w32: Move defines for socket specific errors to qemu-os-win32.h
      w64: Use larger alignment for section with generated code
      w64: Fix data types in cpu-all.h, exec.c
      w64: Fix type casts used in some macros in cpu-all.h
      tcg/i386: Add support for w64 ABI
      tcg/i386: Use GDB JIT debugging interface only for hosts with ELF
  2. target-alpha: QOM'ify CPU init

    afaerber committed Apr 6, 2012
    Move code from cpu_alpha_init() into a CPU initializer.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    Acked-by: Richard Henderson <rth@twiddle.net>
  3. target-alpha: QOM'ify CPU

    afaerber committed Apr 6, 2012
    Embed CPUAlphaState as first member of AlphaCPU.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    Acked-by: Richard Henderson <rth@twiddle.net>
  4. w64: Fix time conversion for some versions of MinGW-w64

    stweil committed Apr 12, 2012
    tb.time is a time value, but not necessarily of the same size as time_t:
    while time_t is 64 bit for w64, tb.time still is 32 bit only.
    
    Therefore we need en explicit conversion.
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>
  5. nbd: Fix compiler warning (w64)

    stweil committed Apr 12, 2012
    Portable printing of dev_offset (data type off_t) needs a type cast.
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>
  6. disas: Replace 'unsigned long' by 'uintptr_t'

    stweil committed Apr 12, 2012
    This is needed for w64. It changes nothing for other hosts.
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>
  7. cpu-exec: Remove non-portable type cast and fix format string

    stweil committed Apr 12, 2012
    This change is needed for w64, but also changes the code for other hosts.
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>
  8. target-mips: Fix type cast for w64 (uintptr_t)

    stweil committed Apr 12, 2012
    This changes nothing for other hosts.
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>
  9. w64: Fix type cast in os_host_main_loop_wait

    stweil committed Apr 12, 2012
    Casting a pointer to an integer must use (DWORD_PTR) instead of (DWORD).
    This also matches the definition of 'fd' (gint for w32, gint64 for w64).
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>
  10. w64: Fix data types in softmmu*.h

    stweil committed Apr 12, 2012
    w64 requires uintptr_t.
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>
  11. w64: Use uintptr_t in exec.c

    stweil committed Apr 12, 2012
    Replace all type casts to 'long' or 'unsigned long' by 'intptr_t' or 'uintptr_t'.
    
    For type casts which are only used to extract the lower bits of an address
    or to modify those bits, signedness does not matter. There I always use 'uintptr_t'.
    
    Signed-off-by: Stefan Weil <sw@weilnetz.de>