qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] c74f41: x86: fix migration from pre-version 1


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] c74f41: x86: fix migration from pre-version 12
Date: Fri, 18 Oct 2013 11:00:07 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: c74f41bbcc83d12787ac42f2c74fc2be54e9f222
      
https://github.com/qemu/qemu/commit/c74f41bbcc83d12787ac42f2c74fc2be54e9f222
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-02 (Wed, 02 Oct 2013)

  Changed paths:
    M target-i386/cpu.c
    M target-i386/cpu.h

  Log Message:
  -----------
  x86: fix migration from pre-version 12

On KVM, the KVM_SET_XSAVE would be executed with a 0 xstate_bv,
and not restore anything.

Since FP and SSE data are always valid, set them in xstate_bv at reset
time.  In fact, that value is the same that KVM_GET_XSAVE returns on
pre-XSAVE hosts.

Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Gleb Natapov <address@hidden>


  Commit: 2560f19f426aceb4f2e809d860b93e7573cb1c4e
      
https://github.com/qemu/qemu/commit/2560f19f426aceb4f2e809d860b93e7573cb1c4e
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-02 (Wed, 02 Oct 2013)

  Changed paths:
    M target-i386/cpu.c

  Log Message:
  -----------
  x86: cpuid: reconstruct leaf 0Dh data

The data in leaf 0Dh depends on information from other feature bits.
Instead of passing it blindly from the host, compute it based on
whether these feature bits are enabled.

Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Gleb Natapov <address@hidden>


  Commit: 7174e54cf14290233f4ae3e989ebc7b507636e77
      
https://github.com/qemu/qemu/commit/7174e54cf14290233f4ae3e989ebc7b507636e77
  Author: Jan Kiszka <address@hidden>
  Date:   2013-10-04 (Fri, 04 Oct 2013)

  Changed paths:
    M hw/i386/kvmvapic.c

  Log Message:
  -----------
  kvmvapic: Prevent reading beyond the end of guest RAM

rom_state_paddr is guest provided (caller address of outw(VAPIC_PORT) +
writen 16-bit value) and can be influenced to point beyond the end of
the host memory backing the guest's RAM. Make sure we do not use this
pointer to actually read beyond the limits.

Reading arbitrary guest bytes is harmless, the guest kernel has to
manage access to this I/O port anyway.

Signed-off-by: Jan Kiszka <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Gleb Natapov <address@hidden>


  Commit: ca529f8e13557cc2feb2eee3872d422712d9bcb0
      
https://github.com/qemu/qemu/commit/ca529f8e13557cc2feb2eee3872d422712d9bcb0
  Author: Max Filippov <address@hidden>
  Date:   2013-10-15 (Tue, 15 Oct 2013)

  Changed paths:
    M target-xtensa/translate.c

  Log Message:
  -----------
  target-xtensa: add in_asm logging

Signed-off-by: Max Filippov <address@hidden>


  Commit: 837a2e267f9c01cd9204d5b701712d6d26a5220e
      
https://github.com/qemu/qemu/commit/837a2e267f9c01cd9204d5b701712d6d26a5220e
  Author: Peter Maydell <address@hidden>
  Date:   2013-10-16 (Wed, 16 Oct 2013)

  Changed paths:
    M rules.mak

  Log Message:
  -----------
  rules.mak: New logical functions for handling y/n values

Add new logical functions for handling y/n values like those we
use in CONFIG_FOO variables:
 lnot : logical NOT
 land : logical AND
 lor : logical OR
 lxor : logical XOR
 leqv : logical equality, inverse of lxor
 lif : like Make's $(if) but with an eq-like test

Based on an idea by Ákos Kovács <address@hidden>.

Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 9ef622e31e7168a9a2c80f95d245c2ad156e3fa7
      
https://github.com/qemu/qemu/commit/9ef622e31e7168a9a2c80f95d245c2ad156e3fa7
  Author: Peter Maydell <address@hidden>
  Date:   2013-10-16 (Wed, 16 Oct 2013)

  Changed paths:
    M rules.mak

  Log Message:
  -----------
  rules.mak: New string testing functions

Add new string testing functions which return a y/n result:
 eq : are two strings equal (ignoring leading/trailing space)?
 ne : are two strings unequal?
 isempty : is a string empty?
 notempty : is a string non-empty?

Based on an idea by Ákos Kovács <address@hidden>.

Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: cf01ba9eef81d828c8292eacab70c67c81ca4501
      
https://github.com/qemu/qemu/commit/cf01ba9eef81d828c8292eacab70c67c81ca4501
  Author: Ákos Kovács <address@hidden>
  Date:   2013-10-16 (Wed, 16 Oct 2013)

  Changed paths:
    M Makefile.target
    M hw/pci/Makefile.objs
    M target-arm/Makefile.objs
    M target-i386/Makefile.objs
    M target-ppc/Makefile.objs

  Log Message:
  -----------
  Makefile.target: CONFIG_NO_* variables removed

CONFIG_NO_* variables replaced with the lnot logical function

Signed-off-by: Ákos Kovács <address@hidden>
[PMM: fixed a few CONFIG_NO_* uses that were missed]
Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: b77abd95a9484ca5ffd7fb4cda25155bb8677bfb
      
https://github.com/qemu/qemu/commit/b77abd95a9484ca5ffd7fb4cda25155bb8677bfb
  Author: Ákos Kovács <address@hidden>
  Date:   2013-10-16 (Wed, 16 Oct 2013)

  Changed paths:
    M Makefile.target
    M default-configs/arm-linux-user.mak
    M default-configs/arm-softmmu.mak
    M default-configs/armeb-linux-user.mak
    M default-configs/m68k-linux-user.mak
    M default-configs/m68k-softmmu.mak
    M default-configs/ppc-linux-user.mak
    M default-configs/ppc-softmmu.mak
    M default-configs/ppc64-linux-user.mak
    M default-configs/ppc64-softmmu.mak
    M default-configs/ppc64abi32-linux-user.mak
    M default-configs/ppcemb-softmmu.mak

  Log Message:
  -----------
  default-configs/: CONFIG_GDBSTUB_XML removed

Makefile.target: Build gdbstub-xml.o only when
TARGET_XML_FILES is not empty.

Signed-off-by: Ákos Kovács <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 2324841c0275f31505168e7a6ceb71bcede92d33
      
https://github.com/qemu/qemu/commit/2324841c0275f31505168e7a6ceb71bcede92d33
  Author: Peter Maydell <address@hidden>
  Date:   2013-10-16 (Wed, 16 Oct 2013)

  Changed paths:
    M ui/Makefile.objs

  Log Message:
  -----------
  ui/Makefile.objs: delete unnecessary cocoa.o dependency

Delete an unnecessary dependency for cocoa.o; we already have
a general rule that tells Make that we can build a .o file
from a .m source using an ObjC compiler, so this specific
rule is unnecessary. Further, it is using the dubious construct
"$(SRC_PATH)/$(obj)" to get at the source directory, which will
break when $(obj) is redefined as part of the preparation for
per-object library support.

Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 684b25447c10b9171e5aa9305075b830885fe6e3
      
https://github.com/qemu/qemu/commit/684b25447c10b9171e5aa9305075b830885fe6e3
  Author: Mike Qiu <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M hmp.c

  Log Message:
  -----------
  hmp: drop bogus "[not inserted]"

Commit 3e9fab690d59ac15956c3733fe0794ce1ae4c4af ("block: Add support for
throttling burst max in QMP and the command line.") introduced bogus
"[not inserted]" output, possibly due to a merge failure.  Remove this
artifact.

Output of 'info block'

scsi0-hd0: /images/f18-ppc64.qcow2 (qcow2)
 [not inserted]
scsi0-cd2: [not inserted]
    Removable device: not locked, tray closed

floppy0: [not inserted]
    Removable device: not locked, tray closed

sd0: [not inserted]
    Removable device: not locked, tray closed

There will be no additional lines between scsi0-hd0 and
scsi0-cd2.

At the same time, scsi0-hd0 already inserted, but still has
'[not inserted]' flag. This line should be removed.

This patch is to solve this.

Signed-off-by: Mike Qiu <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 794cbc26eb94ce13c75d105eea9ff0afff56e2c2
      
https://github.com/qemu/qemu/commit/794cbc26eb94ce13c75d105eea9ff0afff56e2c2
  Author: Andreas Färber <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M hw/sd/sd.c

  Log Message:
  -----------
  sd: Avoid access to NULL BlockDriverState

Commit 4f8a066b5fc254eeaabbbde56ba4f5b29cc68fdf (blockdev: Remove IF_*
check for read-only blockdev_init) added a usage of bdrv_is_read_only()
to sd_init(), which is called for versatilepb, versatileab and
xilinx-zynq-a9 machines among others with NULL argument by default,
causing the new qom-test to fail.

Add a check to prevent this.

Suggested-by: Kevin Wolf <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: a7fdbcf0e6e52d935ebff6d849fe4b5473e5860d
      
https://github.com/qemu/qemu/commit/a7fdbcf0e6e52d935ebff6d849fe4b5473e5860d
  Author: Fam Zheng <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M blockdev.c

  Log Message:
  -----------
  blockdev: fix cdrom read_only flag

Since 0ebd24e0, cdrom doesn't have read-only on by default, which will
error out when using an read only image. Fix it by setting the default
value when parsing opts.

Reported-by: Edivaldo de Araujo Pereira <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>

Reviewed-by: Kevin Wolf <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 26defe81f6a878f33e0aaeb1df4d0d7022c929ca
      
https://github.com/qemu/qemu/commit/26defe81f6a878f33e0aaeb1df4d0d7022c929ca
  Author: Marc-André Lureau <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M hw/display/qxl.c
    M ui/spice-core.c
    M ui/spice-display.c

  Log Message:
  -----------
  spice: replace use of deprecated API

hose API are deprecated since 0.11, and qemu depends on 0.12 already.

Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 764eb39d1b6f614e9734ea3ed1b7dcf6c3aaa260
      
https://github.com/qemu/qemu/commit/764eb39d1b6f614e9734ea3ed1b7dcf6c3aaa260
  Author: Christophe Fergeau <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M ui/spice-core.c

  Log Message:
  -----------
  Fix VNC SASL authentication when using a QXL device

ui/vnc.c:vnc_display_open() and spice-server/server/reds.c:do_spice_init()
are both calling sasl_server_init(). If spice_server_set_sasl_appname()
hasn't been called, spice-server will call it with "spice" as an appname,
causing cyrus-sasl to try to use a /etc/sasl2/spice.conf config file rather
than the /etc/sasl2/qemu.conf file that QEMU uses.

When using -spice sasl on the command line, QEMU properly calls
spice_server_set_sasl_appname() to set the SASL appname as "qemu",
but when using a QXL device without using SPICE, spice_server_init()
is called from qemu_spice_add_interface() without setting the appname
to "qemu", which then causes the VNC code to try to use spice.conf
instead of qemu.conf.

Signed-off-by: Christophe Fergeau <address@hidden>
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 35b2122db446a03be9b88f540e865930efd01d6a
      
https://github.com/qemu/qemu/commit/35b2122db446a03be9b88f540e865930efd01d6a
  Author: Gerd Hoffmann <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M ui/spice-display.c

  Log Message:
  -----------
  spice-display: add display channel id to the debug messages.

And s/__FUNCTION__/__func__/ while being at it.

Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 9fa032866daae68357d99abc725c18fe9ed4b61b
      
https://github.com/qemu/qemu/commit/9fa032866daae68357d99abc725c18fe9ed4b61b
  Author: Gerd Hoffmann <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M hw/display/qxl.c
    M include/ui/qemu-spice.h
    M ui/spice-core.c
    M ui/spice-display.c
    M vl.c

  Log Message:
  -----------
  spice: fix multihead support

This patch fixes spice display initialization to handle
multihead properly.

spice-core now keeps track of which QemuConsole has a spice
display channel attached to it and which has not.  It also
manages display channel ids.

spice-display looks at all QemuConsoles and will pick up any
graphic console not yet bound to a spice channel (which in practice
are all non-qxl graphic devices).

Result is that
 (a) you'll get a spice client window for each graphical device
     now (first only without this patch), and
 (b) mixing qxl and non-qxl vga cards works properly.

Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 45d57f6e718e44e55780bcf1d09fa140dce7ec08
      
https://github.com/qemu/qemu/commit/45d57f6e718e44e55780bcf1d09fa140dce7ec08
  Author: Max Reitz <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M block/raw-win32.c

  Log Message:
  -----------
  block/raw-win32: Always use -errno in hdev_open

On one occasion, hdev_open() returned -1 in case of an unknown error
instead of a proper -errno value. Adjust this to match the behavior of
raw_open() (in raw-win32), which is to return -EINVAL in this case.
Also, change the call to error_setg*() to match the one in raw_open() as
well.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: a66670c79c5c7d530d818430ffcdaa25cbf2c2ab
      
https://github.com/qemu/qemu/commit/a66670c79c5c7d530d818430ffcdaa25cbf2c2ab
  Author: Alexey Kardashevskiy <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M memory.c

  Log Message:
  -----------
  memory: fix 128 arithmetic in info mtree

mtree_print_mr() calls int128_get64() in 3 places but only 2 places
handle 2^64 correctly.

This fixes the third call of int128_get64().

Cc: address@hidden
Signed-off-by: Alexey Kardashevskiy <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 518420dfec2f082cfecbc6eec79fcc91388cf751
      
https://github.com/qemu/qemu/commit/518420dfec2f082cfecbc6eec79fcc91388cf751
  Author: Jan Kiszka <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M util/compatfd.c

  Log Message:
  -----------
  compatfd: switch to QemuThread

qemu_thread_create already does signal blocking and detaching for us.

Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: c76bc480e2d70762d02373678942c98fb193b9e5
      
https://github.com/qemu/qemu/commit/c76bc480e2d70762d02373678942c98fb193b9e5
  Author: Jan Kiszka <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M include/exec/ioport.h
    M ioport.c

  Log Message:
  -----------
  portio: Allow to mark portio lists as coalesced MMIO flushing

This will enable us to remove all remaining explicit calls of
qemu_flush_coalesced_mmio_buffer in IO handlers.

Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: eb25a1d9d4e88f4dd41702e35199ce4bbd7d1cee
      
https://github.com/qemu/qemu/commit/eb25a1d9d4e88f4dd41702e35199ce4bbd7d1cee
  Author: Jan Kiszka <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M hw/display/cirrus_vga.c

  Log Message:
  -----------
  cirrus: Mark vga io region as coalesced MMIO flushing

This allows to remove the explicit qemu_flush_coalesced_mmio_buffer
calls - the memory core will invoke them now.

Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: c46860ea53854a96b11af0d6e23b623ce199e95e
      
https://github.com/qemu/qemu/commit/c46860ea53854a96b11af0d6e23b623ce199e95e
  Author: Jan Kiszka <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M hw/display/qxl.c
    M hw/display/vga.c

  Log Message:
  -----------
  vga: Mark relevant portio lists regions as coalesced MMIO flushing

This allows to remove the explicit qemu_flush_coalesced_mmio_buffer
calls.

Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ea753d81e8b085d679f13e4a6023e003e9854d51
      
https://github.com/qemu/qemu/commit/ea753d81e8b085d679f13e4a6023e003e9854d51
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    A include/qemu/seqlock.h

  Log Message:
  -----------
  seqlock: introduce read-write seqlock

Seqlock implementation for QEMU. Usage idiom

reader:
    do {
  start = seqlock_read_begin(&sl);
  ...
    } while (seqlock_read_retry(&sl, start));

writer:
    seqlock_write_lock(&sl);
    ...
    seqlock_write_unlock(&sl);

initialization:
    seqlock_init(QemuSeqLock *sl, QemuMutex *mutex)

    mutex could be NULL if the caller will provide its own protection
    for concurrent write sides (typically using the BQL).

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: cb365646a942ed58aae053064b2048a415337ba2
      
https://github.com/qemu/qemu/commit/cb365646a942ed58aae053064b2048a415337ba2
  Author: Liu Ping Fan <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M cpus.c
    M include/qemu/timer.h

  Log Message:
  -----------
  timer: protect timers_state's clock with seqlock

QEMU_CLOCK_VIRTUAL may be read outside BQL. This will make its
foundation, i.e. cpu_clock_offset exposed to race condition.
Using private lock to protect it.

After this patch, reading QEMU_CLOCK_VIRTUAL is thread safe
unless use_icount is true, in which case the existing callers
still rely on the BQL.

Lock rule: private lock innermost, ie BQL->"this lock"

Signed-off-by: Liu Ping Fan <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: c7c4d063f50f0de980d99f02e055722227d703bc
      
https://github.com/qemu/qemu/commit/c7c4d063f50f0de980d99f02e055722227d703bc
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M include/qemu/thread-posix.h
    M include/qemu/thread-win32.h
    M include/qemu/thread.h
    M util/qemu-thread-posix.c
    M util/qemu-thread-win32.c

  Log Message:
  -----------
  qemu-thread: add QemuEvent

This emulates Win32 manual-reset events using futexes or conditional
variables.  Typical ways to use them are with multi-producer,
single-consumer data structures, to test for a complex condition whose
elements come from different threads:

    for (;;) {
  qemu_event_reset(ev);
  ... test complex condition ...
  if (condition is true) {
      break;
  }
  qemu_event_wait(ev);
    }

Or more efficiently (but with some duplication):

    ... evaluate condition ...
    while (!condition) {
  qemu_event_reset(ev);
  ... evaluate condition ...
  if (!condition) {
      qemu_event_wait(ev);
      ... evaluate condition ...
  }
    }

QemuEvent provides a very fast userspace path in the common case when
no other thread is waiting, or the event is not changing state.

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 3c05341157f4d08dc3cc8ffa675a0aaa4818d028
      
https://github.com/qemu/qemu/commit/3c05341157f4d08dc3cc8ffa675a0aaa4818d028
  Author: Liu Ping Fan <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M include/qemu/timer.h
    M qemu-timer.c

  Log Message:
  -----------
  timer: make qemu_clock_enable sync between disable and timer's cb

After disabling the QemuClock, we should make sure that no QemuTimers
are still in flight. To implement that with light overhead, we resort
to QemuEvent. The caller of disabling will wait on QemuEvent of each
timerlist.

Note, qemu_clock_enable(foo,false) can _not_ be called from timer's cb.
Also, the callers of qemu_clock_enable() should be protected by the BQL.

Signed-off-by: Liu Ping Fan <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 0f809e5fbebb36788aea3523be7f93c04f2c7f8c
      
https://github.com/qemu/qemu/commit/0f809e5fbebb36788aea3523be7f93c04f2c7f8c
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M qemu-timer.c

  Log Message:
  -----------
  timer: extract timer_mod_ns_locked and timerlist_rearm

These will be reused in timer_mod_anticipate functions.

Reviewed-by: Alex Bligh <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: add40e9777de139fb317ca6b1fb0dc142601cfcd
      
https://github.com/qemu/qemu/commit/add40e9777de139fb317ca6b1fb0dc142601cfcd
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M include/qemu/timer.h
    M qemu-timer.c

  Log Message:
  -----------
  timer: add timer_mod_anticipate and timer_mod_anticipate_ns

These let a user anticipate the deadline of a timer, atomically with
other sites that call the function.  This helps avoiding complicated
lock hierarchies.

Reviewed-by: Alex Bligh <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 468cc7cf3b85dd20a833773e6bde9f720f2df677
      
https://github.com/qemu/qemu/commit/468cc7cf3b85dd20a833773e6bde9f720f2df677
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  icount: use cpu_get_icount() directly

This will help later when we will have to place these calls in
a critical section, and thus call a version of cpu_get_icount()
that does not take the lock.

Reviewed-by: Alex Bligh <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 8ed961d95708ee6cadac22fba7762724d533a5b4
      
https://github.com/qemu/qemu/commit/8ed961d95708ee6cadac22fba7762724d533a5b4
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  icount: reorganize icount_warp_rt

To prepare for future code changes, move the increment of qemu_icount_bias
outside the "if" statement.

Also, hoist outside the if the check for timers that expired due to the
"warping".  The check is redundant when !runstate_is_running(), but
doing it this way helps because the code that increments qemu_icount_bias
will be a critical section.

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ce78d18ced118b03e821135e702ba1d513c8b2a7
      
https://github.com/qemu/qemu/commit/ce78d18ced118b03e821135e702ba1d513c8b2a7
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  icount: prepare the code for future races in calling qemu_clock_warp

Computing the deadline of all vm_clocks is somewhat expensive and calls
out to qemu-timer.c; two reasons not to do it in the seqlock's write-side
critical section.  This however opens the door for races in setting and
reading vm_clock_warp_start.

To plug them, we need to cover the case where a new deadline slips in
between the call to qemu_clock_deadline_ns_all and the actual modification
of the icount_warp_timer.  Restrict changes to vm_clock_warp_start and
the icount_warp_timer's expiration time, to only move them back (which
would simply cause an early wakeup).

If a vm_clock timer is cancelled while CPUs are idle, this might cause the
icount_warp_timer to fire unnecessarily.  This is not a problem, after it
fires the timer becomes inactive and the next call to timer_mod_anticipate
will be precise.

In addition to this, we must deactivate the icount_warp_timer _before_
checking whether CPUs are idle.  This way, if the "last" CPU becomes idle
during the call to timer_del we will still set up the icount_warp_timer.

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: a3270e19ccf05603dfaf09e1f18510f7c93095e0
      
https://github.com/qemu/qemu/commit/a3270e19ccf05603dfaf09e1f18510f7c93095e0
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  icount: document (future) locking rules for icount

Reviewed-by: Alex Bligh <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 17a15f1b768fe2aab8c5f360b05c0daddf0c438b
      
https://github.com/qemu/qemu/commit/17a15f1b768fe2aab8c5f360b05c0daddf0c438b
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  icount: make it thread-safe

This lets threads other than the I/O thread use vm_clock even in -icount mode.

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 041603fe5d4537cd165941f96bd76a31f7f662fd
      
https://github.com/qemu/qemu/commit/041603fe5d4537cd165941f96bd76a31f7f662fd
  Author: Paolo Bonzini <address@hidden>
  Date:   2013-10-17 (Thu, 17 Oct 2013)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  exec: remove qemu_safe_ram_ptr

This is not needed since the RAM list is not modified anymore by
qemu_get_ram_ptr.  Replace it with qemu_get_ram_block.

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: b432779a9fe9c2a1bb8cbd98feb341af6e32f892
      
https://github.com/qemu/qemu/commit/b432779a9fe9c2a1bb8cbd98feb341af6e32f892
  Author: Stefan Weil <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M hw/block/virtio-blk.c

  Log Message:
  -----------
  virtio: Remove unneeded memcpy

Report from valgrind:

==19521== Source and destination overlap in memcpy(0x31d38938, 0x31d38938, 64)
==19521==    at 0x4A0A343: memcpy@@GLIBC_2.14 (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==19521==    by 0x42774E: virtio_blk_device_init (virtio-blk.c:686)
==19521==    by 0x46EE9E: virtio_device_init (virtio.c:1158)
==19521==    by 0x25405E: device_realize (qdev.c:178)
==19521==    by 0x2559B5: device_set_realized (qdev.c:699)
==19521==    by 0x3A819B: property_set_bool (object.c:1315)
==19521==    by 0x3A6CE0: object_property_set (object.c:803)

Valgrind is right: blk == &s->blks, so it is a memcpy of 64 byte with
source == destination which can be removed.

Reported-by: Dave Airlie <address@hidden>
Signed-off-by: Stefan Weil <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 655d3b63b036b70714adbdae685055f1bda0f8f1
      
https://github.com/qemu/qemu/commit/655d3b63b036b70714adbdae685055f1bda0f8f1
  Author: Amos Kong <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M hw/net/e1000.c
    M hw/net/rtl8139.c

  Log Message:
  -----------
  net: update nic info during device reset

macaddr is reset during device reset, but nic info
isn't updated, this problem exists in e1000 & rtl8139

Signed-off-by: Amos Kong <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 7c36507c2b8776266f50c5e2739bd18279953b93
      
https://github.com/qemu/qemu/commit/7c36507c2b8776266f50c5e2739bd18279953b93
  Author: Amos Kong <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M hw/net/e1000.c

  Log Message:
  -----------
  net/e1000: update network information when macaddr is changed in guest

If we change macaddr in guest by 'ifconfig eth0 hw ether 12:12:12:34:35:36',
the mac register of e1000 is already updated, but we don't update
network information in qemu. Therefor, the information in monitor
is wrong.

This patch updates nic info when the second part of macaddr is written.

Signed-off-by: Amos Kong <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 23c37c37f0280761072c23bf67d3a4f3c0ff25aa
      
https://github.com/qemu/qemu/commit/23c37c37f0280761072c23bf67d3a4f3c0ff25aa
  Author: Amos Kong <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M hw/net/rtl8139.c

  Log Message:
  -----------
  net/rtl8139: update network information when macaddr is changed in guest

rtl8139 has same problem as e1000, nic info isn't updated when macaddr
is changed in guest.

This patch updates the nic info when the last bit of macaddr is written.

Signed-off-by: Amos Kong <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: c338b6ad609699cf352c8dd6338360b7e3895ad0
      
https://github.com/qemu/qemu/commit/c338b6ad609699cf352c8dd6338360b7e3895ad0
  Author: Fam Zheng <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M block/vmdk.c

  Log Message:
  -----------
  vmdk: Only read cid from image file when opening

Previously cid of parent is parsed from image file for every IO request.
We already have L1/L2 cache and don't have assumption that parent image
can be updated behind us, so remove this to get more efficiency.

The parent CID is checked only for once after opening.

Signed-off-by: Fam Zheng <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: dbbcaa8d4358fdf3c42bf01e9e2d687300e84770
      
https://github.com/qemu/qemu/commit/dbbcaa8d4358fdf3c42bf01e9e2d687300e84770
  Author: Fam Zheng <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M block/vmdk.c

  Log Message:
  -----------
  vmdk: fix VMFS extent parsing

The VMFS extent line in description file doesn't have start offset as
FLAT lines does, and it should be defaulted to 0. The flat_offset
variable is initialized to -1, so we need to set it in this case.

Signed-off-by: Fam Zheng <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: cd22e320a01b790d158d915a45d930f9d0a4bc91
      
https://github.com/qemu/qemu/commit/cd22e320a01b790d158d915a45d930f9d0a4bc91
  Author: Anthony Liguori <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M target-xtensa/translate.c

  Log Message:
  -----------
  Merge remote-tracking branch 'filippov/tags/20131015-xtensa' into staging

xtensa queue 2013-10-15

# gpg: Signature made Tue 15 Oct 2013 06:27:41 AM PDT using RSA key ID F83FA044
# gpg: Can't check signature: public key not found

# By Max Filippov
# Via Max Filippov
* filippov/tags/20131015-xtensa:
  target-xtensa: add in_asm logging

Message-id: address@hidden
Signed-off-by: Anthony Liguori <address@hidden>


  Commit: c21611ab8d0d6e0b3f3e5483777b5c929fb5a96c
      
https://github.com/qemu/qemu/commit/c21611ab8d0d6e0b3f3e5483777b5c929fb5a96c
  Author: Anthony Liguori <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M hw/display/qxl.c
    M include/ui/qemu-spice.h
    M ui/spice-core.c
    M ui/spice-display.c
    M vl.c

  Log Message:
  -----------
  Merge remote-tracking branch 'spice/spice.v75' into staging

# By Gerd Hoffmann (2) and others
# Via Gerd Hoffmann
* spice/spice.v75:
  spice: fix multihead support
  spice-display: add display channel id to the debug messages.
  Fix VNC SASL authentication when using a QXL device
  spice: replace use of deprecated API

Message-id: address@hidden
Signed-off-by: Anthony Liguori <address@hidden>


  Commit: 1cb9b64df380f232bcd142ab27c085cff0add1d8
      
https://github.com/qemu/qemu/commit/1cb9b64df380f232bcd142ab27c085cff0add1d8
  Author: Anthony Liguori <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M Makefile.target
    M default-configs/arm-linux-user.mak
    M default-configs/arm-softmmu.mak
    M default-configs/armeb-linux-user.mak
    M default-configs/m68k-linux-user.mak
    M default-configs/m68k-softmmu.mak
    M default-configs/ppc-linux-user.mak
    M default-configs/ppc-softmmu.mak
    M default-configs/ppc64-linux-user.mak
    M default-configs/ppc64-softmmu.mak
    M default-configs/ppc64abi32-linux-user.mak
    M default-configs/ppcemb-softmmu.mak
    M hw/pci/Makefile.objs
    M rules.mak
    M target-arm/Makefile.objs
    M target-i386/Makefile.objs
    M target-ppc/Makefile.objs
    M ui/Makefile.objs

  Log Message:
  -----------
  Merge remote-tracking branch 'bonzini/configure' into staging

# By Peter Maydell (3) and Ákos Kovács (2)
# Via Paolo Bonzini
* bonzini/configure:
  ui/Makefile.objs: delete unnecessary cocoa.o dependency
  default-configs/: CONFIG_GDBSTUB_XML removed
  Makefile.target: CONFIG_NO_* variables removed
  rules.mak: New string testing functions
  rules.mak: New logical functions for handling y/n values


  Commit: 989644915c281ac83f06f65923d716272ede1ed8
      
https://github.com/qemu/qemu/commit/989644915c281ac83f06f65923d716272ede1ed8
  Author: Anthony Liguori <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M cpus.c
    M exec.c
    M hw/display/cirrus_vga.c
    M hw/display/qxl.c
    M hw/display/vga.c
    M include/exec/ioport.h
    A include/qemu/seqlock.h
    M include/qemu/thread-posix.h
    M include/qemu/thread-win32.h
    M include/qemu/thread.h
    M include/qemu/timer.h
    M ioport.c
    M memory.c
    M qemu-timer.c
    M util/compatfd.c
    M util/qemu-thread-posix.c
    M util/qemu-thread-win32.c

  Log Message:
  -----------
  Merge remote-tracking branch 'bonzini/iommu-for-anthony' into staging

# By Paolo Bonzini (10) and others
# Via Paolo Bonzini
* bonzini/iommu-for-anthony:
  exec: remove qemu_safe_ram_ptr
  icount: make it thread-safe
  icount: document (future) locking rules for icount
  icount: prepare the code for future races in calling qemu_clock_warp
  icount: reorganize icount_warp_rt
  icount: use cpu_get_icount() directly
  timer: add timer_mod_anticipate and timer_mod_anticipate_ns
  timer: extract timer_mod_ns_locked and timerlist_rearm
  timer: make qemu_clock_enable sync between disable and timer's cb
  qemu-thread: add QemuEvent
  timer: protect timers_state's clock with seqlock
  seqlock: introduce read-write seqlock
  vga: Mark relevant portio lists regions as coalesced MMIO flushing
  cirrus: Mark vga io region as coalesced MMIO flushing
  portio: Allow to mark portio lists as coalesced MMIO flushing
  compatfd: switch to QemuThread
  memory: fix 128 arithmetic in info mtree

Message-id: address@hidden
Signed-off-by: Anthony Liguori <address@hidden>


  Commit: 1da9772d83576cef463b88adb7c390f978ef4ea3
      
https://github.com/qemu/qemu/commit/1da9772d83576cef463b88adb7c390f978ef4ea3
  Author: Anthony Liguori <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M block/raw-win32.c
    M block/vmdk.c
    M blockdev.c
    M hmp.c
    M hw/block/virtio-blk.c
    M hw/sd/sd.c

  Log Message:
  -----------
  Merge remote-tracking branch 'stefanha/block' into staging

# By Fam Zheng (3) and others
# Via Stefan Hajnoczi
* stefanha/block:
  vmdk: fix VMFS extent parsing
  vmdk: Only read cid from image file when opening
  virtio: Remove unneeded memcpy
  block/raw-win32: Always use -errno in hdev_open
  blockdev: fix cdrom read_only flag
  sd: Avoid access to NULL BlockDriverState
  hmp: drop bogus "[not inserted]"

Message-id: address@hidden
Signed-off-by: Anthony Liguori <address@hidden>


  Commit: 3551643eb7198398017829a7d26646de1710b0b6
      
https://github.com/qemu/qemu/commit/3551643eb7198398017829a7d26646de1710b0b6
  Author: Anthony Liguori <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M hw/net/e1000.c
    M hw/net/rtl8139.c

  Log Message:
  -----------
  Merge remote-tracking branch 'stefanha/net' into staging

# By Amos Kong
# Via Stefan Hajnoczi
* stefanha/net:
  net/rtl8139: update network information when macaddr is changed in guest
  net/e1000: update network information when macaddr is changed in guest
  net: update nic info during device reset

Message-id: address@hidden
Signed-off-by: Anthony Liguori <address@hidden>


  Commit: fc8ead74674b7129e8f31c2595c76658e5622197
      
https://github.com/qemu/qemu/commit/fc8ead74674b7129e8f31c2595c76658e5622197
  Author: Anthony Liguori <address@hidden>
  Date:   2013-10-18 (Fri, 18 Oct 2013)

  Changed paths:
    M hw/i386/kvmvapic.c
    M target-i386/cpu.c
    M target-i386/cpu.h

  Log Message:
  -----------
  Merge remote-tracking branch 'qemu-kvm/uq/master' into staging

# By Paolo Bonzini (2) and Jan Kiszka (1)
# Via Gleb Natapov
* qemu-kvm/uq/master:
  kvmvapic: Prevent reading beyond the end of guest RAM
  x86: cpuid: reconstruct leaf 0Dh data
  x86: fix migration from pre-version 12

Message-id: address@hidden
Signed-off-by: Anthony Liguori <address@hidden>


Compare: https://github.com/qemu/qemu/compare/1680d485777e...fc8ead74674b

reply via email to

[Prev in Thread] Current Thread [Next in Thread]