qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 99f318: vcpu_dirty: share the same field in C


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 99f318: vcpu_dirty: share the same field in CPUState for a...
Date: Thu, 06 Jul 2017 03:41:48 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 99f318322e7bf11a95149aa66d1758568dd53f8a
      
https://github.com/qemu/qemu/commit/99f318322e7bf11a95149aa66d1758568dd53f8a
  Author: Sergio Andres Gomez Del Real <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/kvm/kvm-all.c
    M include/qom/cpu.h
    M target/i386/hax-all.c
    M target/mips/kvm.c

  Log Message:
  -----------
  vcpu_dirty: share the same field in CPUState for all accelerators

This patch simply replaces the separate boolean field in CPUState that
kvm, hax (and upcoming hvf) have for keeping track of vcpu dirtiness
with a single shared field.

Signed-off-by: Sergio Andres Gomez Del Real <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: abc67eb6e8577fe15c9c27551d6b9c5e5bc08049
      
https://github.com/qemu/qemu/commit/abc67eb6e8577fe15c9c27551d6b9c5e5bc08049
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M qemu-doc.texi

  Log Message:
  -----------
  qemu-doc: Add missing "@c man end" statements

Since commit 3f2ce724f1f1 ("Move the qemu-ga description into a
separate chapter"), the qemu.1 man page looks pretty much screwed
up, e.g. the title was "qemu-ga - QEMU Guest Agent" instead of
"qemu-doc - QEMU Emulator User Documentation". However, that movement
of the gemu-ga chapter is not the real problem, it just triggered
another bug in the qemu-doc.texi: There are some parts in the file
which introduce a "@c man begin OPTIONS" section, but never close
it again with "@c man end". After adding the proper end tags here,
the title of the man page is right again and the previously wrongly
tagged sections now also show up correctly in the man page, too.

Reported-by: Kevin Wolf <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 96d06835dc40007673cdfab6322e9042c4077113
      
https://github.com/qemu/qemu/commit/96d06835dc40007673cdfab6322e9042c4077113
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M block/nbd-client.c

  Log Message:
  -----------
  nbd: fix NBD over TLS

When attaching the NBD QIOChannel to an AioContext, the TLS channel should
be used, not the underlying socket channel.  This is because, trivially,
the TLS channel will be the one that we read/write to and thus the one
that will get the qio_channel_yield() call.

Fixes: ff82911cd3f69f028f2537825c9720ff78bc3f19
Cc: address@hidden
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Daniel P. Berrange <address@hidden>
Tested-by: Daniel P. Berrange <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: e95e9b88ba5f4a6c17f4d0c3a3a6bf3f648bb328
      
https://github.com/qemu/qemu/commit/e95e9b88ba5f4a6c17f4d0c3a3a6bf3f648bb328
  Author: Wu Xiang <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M target/i386/seg_helper.c

  Log Message:
  -----------
  target/i386: fix interrupt CPL error when using ist in x86-64

In do_interrupt64(), when interrupt stack table(ist) is enabled
and the the target code segment is conforming(e2 & DESC_C_MASK), the
old implementation always set new CPL to 0, and SS.RPL to 0.

This is incorrect for when CPL3 code access a CPL0 conforming code
segment, the CPL should remain unchanged. Otherwise higher privileged
code can be compromised.

The patch fix this for always set dpl = cpl when the target code segment
is conforming, and modify the last parameter `flags`, which contains
correct new CPL, in cpu_x86_load_seg_cache().

Signed-off-by: Wu Xiang <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 1110bfe6f5600017258fa6578f9c17ec25b32277
      
https://github.com/qemu/qemu/commit/1110bfe6f5600017258fa6578f9c17ec25b32277
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M target/i386/seg_helper.c

  Log Message:
  -----------
  target/i386: simplify handling of conforming code segments on interrupt

Move the handling of conforming code segments before the handling
of stack switch.

Because dpl == cpl after the new "if", it's now unnecessary to check
the C bit when testing dpl < cpl.  Furthermore, dpl > cpl is checked
slightly above the modified code, so the final "else" is unreachable
and we can remove it.

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


  Commit: 50b8a2d326e60d91492f98d9065c00cf39e34b5c
      
https://github.com/qemu/qemu/commit/50b8a2d326e60d91492f98d9065c00cf39e34b5c
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M include/exec/poison.h

  Log Message:
  -----------
  include/exec/poison: Add some more missing TARGET and CONFIG defines

The defines of some *-linux-user targets were still missing.

Suggested-by: Richard Henderson <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 2099935dbf2e7b1a1359d1c1ae312f976246065d
      
https://github.com/qemu/qemu/commit/2099935dbf2e7b1a1359d1c1ae312f976246065d
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M hw/i386/pc_q35.c
    M include/hw/i386/pc.h
    M include/sysemu/kvm.h
    M target/i386/kvm_i386.h

  Log Message:
  -----------
  Move CONFIG_KVM related definitions to kvm_i386.h

pc.h and sysemu/kvm.h are also included from common code (where
CONFIG_KVM is not available), so the #defines that depend on CONFIG_KVM
should not be declared here to avoid that anybody is using them in a
wrong way. Since we're also going to poison CONFIG_KVM for common code,
let's move them to kvm_i386.h instead. Most of the dummy definitions
from sysemu/kvm.h are also unused since the code that uses them is
only compiled for CONFIG_KVM (e.g. target/i386/kvm.c), so the unused
defines are also simply dropped here instead of being moved.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: cbca3722a33ca6f6a8d9ceba89c5b3e7c28007ee
      
https://github.com/qemu/qemu/commit/cbca3722a33ca6f6a8d9ceba89c5b3e7c28007ee
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M hw/acpi/ich9.c
    M include/exec/poison.h
    M include/sysemu/kvm.h

  Log Message:
  -----------
  include/exec/poison: Mark CONFIG_KVM as poisoned, too

CONFIG_KVM is only defined for target-specific code, so nobody should
use it by accident in common code. To avoid such subtle bugs,
CONFIG_KVM is now marked as poisoned in common code. The header
include/sysemu/kvm.h is somewhat special since it is included
all over the place from common code, too, so we need some extra
logic via "#ifdef NEED_CPU_H" here to make sure that we can
compile all files without problems.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 2cd53943115be5118b5b2d4b80ee0a39c94c4f73
      
https://github.com/qemu/qemu/commit/2cd53943115be5118b5b2d4b80ee0a39c94c4f73
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/tcg/translate-all.c
    M include/exec/cpu-common.h
    M qom/cpu.c

  Log Message:
  -----------
  cpu: Introduce a wrapper for tlb_flush() that can be used in common code

Commit 1f5c00cfdb8114c ("qom/cpu: move tlb_flush to cpu_common_reset")
moved the call to tlb_flush() from the target-specific reset handlers
into the common code qom/cpu.c file, and protected the call with
"#ifdef CONFIG_SOFTMMU" to avoid that it is called for linux-user
only targets. But since qom/cpu.c is common code, CONFIG_SOFTMMU is
*never* defined here, so the tlb_flush() was simply never executed
anymore. Fix it by introducing a wrapper for tlb_flush() in a file
that is re-compiled for each target, i.e. in translate-all.c.

Fixes: 1f5c00cfdb8114c1e3a13426588ceb64f82c9ddb
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 47507383c663b48af28e1428f782df5caad39441
      
https://github.com/qemu/qemu/commit/47507383c663b48af28e1428f782df5caad39441
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M include/exec/poison.h
    M include/qom/cpu.h

  Log Message:
  -----------
  include/exec/poison: Mark CONFIG_SOFTMMU as poisoned

CONFIG_SOFTMMU should never be used in common code, so mark
it as poisoned, too.

Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 5ddc64822b84b34f0ae68e9ed6e497ec35b51587
      
https://github.com/qemu/qemu/commit/5ddc64822b84b34f0ae68e9ed6e497ec35b51587
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M Makefile.objs
    M Makefile.target
    M bootdevice.c

  Log Message:
  -----------
  Makefile: Move bootdevice.o to common-obj-y

There does not seem to be any target specific code in this file, so
we can put it into "common-obj" instead of "obj" to compile it only
once for all targets.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 24f7ca4907a779568153056eafa6da21cb84dc91
      
https://github.com/qemu/qemu/commit/24f7ca4907a779568153056eafa6da21cb84dc91
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M hw/misc/Makefile.objs

  Log Message:
  -----------
  hw/misc/edu: Compile the edu device as common object

edu.c does not contain any target-specific code, so we can put
it into common-obj-y to compile it only once for all targets.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 56382bd5770decbf7ede46e5030e8e348b27009d
      
https://github.com/qemu/qemu/commit/56382bd5770decbf7ede46e5030e8e348b27009d
  Author: Daniel P. Berrange <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M util/qemu-sockets.c

  Log Message:
  -----------
  sockets: avoid formatting buffer that may not be NUL terminated

The 'sun_path' field in the sockaddr_un struct is not required
to be NUL termianted, so when reporting an error, we must use
the separate 'path' variable which is guaranteed terminated.

Fixes a bug spotted by coverity that was introduced in

  commit ad9579aaa16d5b385922d49edac2c96c79bcfb62
  Author: Daniel P. Berrange <address@hidden>
  Date:   Thu May 25 16:53:00 2017 +0100

    sockets: improve error reporting if UNIX socket path is too long

Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 86a57621ce7bfe852413e3f3ce4e9682a7d581c7
      
https://github.com/qemu/qemu/commit/86a57621ce7bfe852413e3f3ce4e9682a7d581c7
  Author: Sergio Andres Gomez Del Real <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M target/i386/Makefile.objs
    M target/i386/cpu.h
    M target/i386/kvm.c
    A target/i386/xsave_helper.c

  Log Message:
  -----------
  xsave_helper: pull xsave and xrstor out of kvm.c into helper function

This patch pulls out of kvm.c and into the new files the implementation
for the xsave and xrstor instructions. This so they can be shared by
kvm and hvf.

Signed-off-by: Sergio Andres Gomez Del Real <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Sergio Andres Gomez Del Real <address@hidden>


  Commit: 0ec7b534821c8b287317f97cd98ee3f908bd3839
      
https://github.com/qemu/qemu/commit/0ec7b534821c8b287317f97cd98ee3f908bd3839
  Author: Alistair Francis <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M util/oslib-win32.c

  Log Message:
  -----------
  util/oslib-win32: Remove if conditional

The original ready < nhandles - 1 can be re-written as ready + 1 <
nhandles.  The check was actually incorrect because
WAIT_OBJECT_0 was not subtracted from ready; it worked because
WAIT_OBJECT_0 is zero.  After subtracting WAIT_OBJECT_0,
the result is the same condition that we are checking on the first
itteration of the for loop. This means we can remove the if statement
and let the for loop check the code.

Signed-off-by: Alistair Francis <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: be59df797c6f465ef4f028fc2519efd2cfed4d30
      
https://github.com/qemu/qemu/commit/be59df797c6f465ef4f028fc2519efd2cfed4d30
  Author: Peter Maydell <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M tests/test-char.c

  Log Message:
  -----------
  tests/test-char.c: Don't use main_loop_wait()'s return value

In QEMU's main_loop() we used to check whether we should do
a nonblocking call to main_loop(); this was deleted in commit e330c118f2a5,
because now that vCPUs always drop the I/O thread lock it is an unnecessary
optimization.

The loop in test-char.c copied the old QEMU main_loop() code, but
here the nonblocking check has never been necessary because this
standalone test case doesn't hold the I/O lock anyway. Remove it,
so we can drop the main_loop_wait() return value.

Signed-off-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: de5f852f38d644edf995a810c34b4d24dbfbd740
      
https://github.com/qemu/qemu/commit/de5f852f38d644edf995a810c34b4d24dbfbd740
  Author: Peter Maydell <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M include/qemu/main-loop.h
    M util/main-loop.c

  Log Message:
  -----------
  main_loop: Make main_loop_wait() return void

The last users of main_loop_wait() that cared about the return value
have now been changed to no longer use it. Drop the now-useless return
value and make the function return void.

We avoid the awkwardness of ifdeffery to handle the 'ret'
variable in main_loop_wait() only being wanted if CONFIG_SLIRP
by simply dropping all the ifdefs. There are stub implementations
of slirp_pollfds_poll() and slirp_pollfds_fill() already in
stubs/slirp.c which do nothing, as required.

Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: e8c2091d4c4dd78bb9b8618205a238b96c87045d
      
https://github.com/qemu/qemu/commit/e8c2091d4c4dd78bb9b8618205a238b96c87045d
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M scripts/checkpatch.pl

  Log Message:
  -----------
  checkpatch: should not use signal except for SIG_DFL or SIG_IGN

Using signal to establish a signal handler is not portable; on
SysV systems, the signal handler would be reset to SIG_DFL after
delivery, while BSD preserves the signal handler.  Daniel Berrange
reported that (to complicate matters further) the signal system call
has SysV behavior, but glibc signal() actually calls the sigaction
system call to provide BSD behavior.

However, using signal() to set a signal's disposition to SIG_DFL
or SIG_IGN is portable and is a relatively common occurrence in
QEMU source code, so allow that.

Reviewed-by: Daniel P. Berrange <address@hidden>
Reviewed-by: Richard W.M. Jones <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 025bdeab3c163aee9604a60b2332a5fcbcc00f8d
      
https://github.com/qemu/qemu/commit/025bdeab3c163aee9604a60b2332a5fcbcc00f8d
  Author: Jason Wang <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M hw/scsi/virtio-scsi.c

  Log Message:
  -----------
  virtio-scsi: finalize IOMMU support

After converting to use DMA api for virtio devices, we should use
dma_as instead of address_space_memory. Otherwise it won't work if
IOMMU is enabled.

Fixes: commit 8607f5c3072c ("virtio: convert to use DMA api")
Cc: address@hidden
Signed-off-by: Jason Wang <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: c096358e747e88fc7364e40e3c354ee0bb683960
      
https://github.com/qemu/qemu/commit/c096358e747e88fc7364e40e3c354ee0bb683960
  Author: Fam Zheng <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

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

  Log Message:
  -----------
  qemu-thread: Assert locks are initialized before using

Not all platforms check whether a lock is initialized before used.  In
particular Linux seems to be more permissive than OSX.

Check initialization state explicitly in our code to catch such bugs
earlier.

Signed-off-by: Fam Zheng <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ee29bdb6a7878205d41a46aa30f17bb831910b85
      
https://github.com/qemu/qemu/commit/ee29bdb6a7878205d41a46aa30f17bb831910b85
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M qemu-doc.texi

  Log Message:
  -----------
  qemu-doc: do not refer to years-old version numbers

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


  Commit: 3b6b75506de44c5070639943c30a0ad5850f5d02
      
https://github.com/qemu/qemu/commit/3b6b75506de44c5070639943c30a0ad5850f5d02
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: factor out list of supported Xen/KVM/HAX targets

This will be useful when the functions are called, early in the configure
process, to filter out targets that do not support hardware acceleration.

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


  Commit: d880a3ba7dd18f0e8efdd24decb706ecc9037dbb
      
https://github.com/qemu/qemu/commit/d880a3ba7dd18f0e8efdd24decb706ecc9037dbb
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: early test for supported targets

Check for unsupported targets in target_list, and print an
error early in the configuration process.

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


  Commit: b3f6ea7e55e8228d6f84d5cee7cb11cae917ba95
      
https://github.com/qemu/qemu/commit/b3f6ea7e55e8228d6f84d5cee7cb11cae917ba95
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: add --disable-tcg configure option

This lets you build without TCG (hardware accelerationor qtest only).  When
this flag is passed to configure, it will automatically filter out the target
list to only those that support KVM or Xen or HAX.

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


  Commit: 8b3ae692b83ecffb9315892d67b8ade5e0427e74
      
https://github.com/qemu/qemu/commit/8b3ae692b83ecffb9315892d67b8ade5e0427e74
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/tcg/tcg-all.c
    M include/sysemu/accel.h
    M vl.c

  Log Message:
  -----------
  vl: convert -tb-size to qemu_strtoul

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


  Commit: e7b161d5738bd5721e05174b25145f33dbc9d184
      
https://github.com/qemu/qemu/commit/e7b161d5738bd5721e05174b25145f33dbc9d184
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M vl.c

  Log Message:
  -----------
  vl: add tcg_enabled() for tcg related code

Need to disable the tcg related code in the vl.c if the
disable-tcg option is added into ./configure command.

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


  Commit: a0be0c585f5dcc4d50a37f6a20d3d625c5ef3a2c
      
https://github.com/qemu/qemu/commit/a0be0c585f5dcc4d50a37f6a20d3d625c5ef3a2c
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/tcg/translate-all.c
    M accel/tcg/translate-common.c
    M exec.c

  Log Message:
  -----------
  tcg: move page_size_init() function

translate-all.c will be disabled if tcg is disabled in the build,
so page_size_init() function and related variables will be moved
to exec.c file.

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


  Commit: 290dae4678df9f271dbde5cc5cc7648aff136493
      
https://github.com/qemu/qemu/commit/290dae4678df9f271dbde5cc5cc7648aff136493
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/kvm/kvm-all.c
    M accel/tcg/Makefile.objs
    M accel/tcg/tcg-all.c
    R accel/tcg/translate-common.c
    M qom/cpu.c

  Log Message:
  -----------
  cpu: move interrupt handling out of translate-common.c

translate-common.c will not be available anymore with --disable-tcg,
so we cannot leave cpu_interrupt_handler there.

Move the TCG-specific handler to accel/tcg/tcg-all.c, and adopt
KVM's handler as the default one, since it works just as well for
Xen and qtest.

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


  Commit: 8e2b72990e9dc80ab3ff19717f45fec839bbcbc2
      
https://github.com/qemu/qemu/commit/8e2b72990e9dc80ab3ff19717f45fec839bbcbc2
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/tcg/cpu-exec-common.c
    M accel/tcg/tcg-all.c
    M accel/tcg/translate-all.c
    M include/qemu-common.h

  Log Message:
  -----------
  tcg: make tcg_allowed global

Change the tcg_enabled() and make sure user build still enable tcg
even x86 softmmu disable tcg.

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


  Commit: f0d14a95a5833885e0940bb650e15d8e959d0d45
      
https://github.com/qemu/qemu/commit/f0d14a95a5833885e0940bb650e15d8e959d0d45
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/tcg/translate-all.c
    M hmp-commands-info.hx
    M monitor.c

  Log Message:
  -----------
  monitor: disable "info jit" and "info opcount" if !TCG

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


  Commit: 24d90a3cfdd30f1f6eb38363aed6c9c084f147ed
      
https://github.com/qemu/qemu/commit/24d90a3cfdd30f1f6eb38363aed6c9c084f147ed
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M hw/i386/kvmvapic.c

  Log Message:
  -----------
  vapic: use tcg_enabled

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


  Commit: a574cf9b417bb7692e7ec371f2091f0243f62551
      
https://github.com/qemu/qemu/commit/a574cf9b417bb7692e7ec371f2091f0243f62551
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M accel/stubs/Makefile.objs
    A accel/stubs/tcg-stub.c

  Log Message:
  -----------
  tcg: add the tcg-stub.c file into accel/stubs/

If tcg is disabled, the functions in tcg-stub.c file will be called.
This file is target-independent file, do not include any platform
related stub functions into this file.

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


  Commit: beeaef55e487acd3f42b4057a9233e7d0454725b
      
https://github.com/qemu/qemu/commit/beeaef55e487acd3f42b4057a9233e7d0454725b
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M bsd-user/main.c
    M include/exec/exec-all.h
    M tcg/tcg.h

  Log Message:
  -----------
  tcg: move tb_lock out of translate-all.h

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


  Commit: 5aa1ef71b44696bec2948a45ea9a0cda51219add
      
https://github.com/qemu/qemu/commit/5aa1ef71b44696bec2948a45ea9a0cda51219add
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-04 (Tue, 04 Jul 2017)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  exec: elide calls to tb_lock and tb_unlock

Adding assertions fixes link errors.

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


  Commit: b11ec7f2e44b285a3967d629b55d1a6970b06787
      
https://github.com/qemu/qemu/commit/b11ec7f2e44b285a3967d629b55d1a6970b06787
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M include/exec/cpu-defs.h
    M include/exec/exec-all.h

  Log Message:
  -----------
  tcg: add CONFIG_TCG guards in headers

Add CONFIG_TCG around TLB-related functions and structure declarations.
Some of these functions are defined in ./accel/tcg/cputlb.c, which will
not be linked in if TCG is disabled, and have no stubs; therefore, their
callers will also be compiled out for --disable-tcg.

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


  Commit: e4b4b6428ca45cb1374dab98ab1d23a213a5db9a
      
https://github.com/qemu/qemu/commit/e4b4b6428ca45cb1374dab98ab1d23a213a5db9a
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M Makefile.target
    M accel/Makefile.objs

  Log Message:
  -----------
  tcg: add the CONFIG_TCG into Makefiles

Add the CONFIG_TCG for frontend and backend's files in the related
Makefiles.

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


  Commit: ab0a19d4f08d924e052eb369420d264240872f8a
      
https://github.com/qemu/qemu/commit/ab0a19d4f08d924e052eb369420d264240872f8a
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M target/i386/helper.c
    M target/i386/mpx_helper.c

  Log Message:
  -----------
  target/i386: move cpu_sync_bndcs_hflags() function

Move cpu_sync_bndcs_hflags() function from mpx_helper.c
to helper.c because mpx_helper.c need be disabled when
tcg is disabled.

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


  Commit: db573d2cf7ae6b5a4fc324be6f55e078fc218464
      
https://github.com/qemu/qemu/commit/db573d2cf7ae6b5a4fc324be6f55e078fc218464
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M target/i386/cpu.h
    M target/i386/fpu_helper.c
    M target/i386/machine.c

  Log Message:
  -----------
  target/i386: make cpu_get_fp80()/cpu_set_fp80() static

Move cpu_get_fp80()/cpu_set_fp80() from fpu_helper.c to
machine.c because fpu_helper.c will be disabled if tcg is
disabled in the build.

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


  Commit: 1d8ad165b688759bbf00e40431ee9fde8817d190
      
https://github.com/qemu/qemu/commit/1d8ad165b688759bbf00e40431ee9fde8817d190
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M target/i386/cpu.h
    M target/i386/fpu_helper.c
    M target/i386/machine.c

  Log Message:
  -----------
  target/i386: split cpu_set_mxcsr() and make cpu_set_fpuc() inline

Split the cpu_set_mxcsr() and make cpu_set_fpuc() inline with specific
tcg code.

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


  Commit: 6578eb25a07c0056976f466baf640ef59ae45ab5
      
https://github.com/qemu/qemu/commit/6578eb25a07c0056976f466baf640ef59ae45ab5
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M target/i386/excp_helper.c
    M target/i386/helper.c

  Log Message:
  -----------
  target/i386: move TLB refill function out of helper.c

This function calls tlb_set_page_with_attrs, which is not available
when TCG is disabled.  Move it to excp_helper.c.

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


  Commit: 79c664f62d75cfba89a5bbe998622c8d5fdf833b
      
https://github.com/qemu/qemu/commit/79c664f62d75cfba89a5bbe998622c8d5fdf833b
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M target/i386/cpu.c
    M target/i386/cpu.h
    M target/i386/helper.c
    M target/i386/machine.c

  Log Message:
  -----------
  target/i386: add the tcg_enabled() in target/i386/

Add the tcg_enabled() where the x86 target needs to disable
TCG-specific code.

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


  Commit: 44eff673411381062b826d048ba9d6630d2b2bdb
      
https://github.com/qemu/qemu/commit/44eff673411381062b826d048ba9d6630d2b2bdb
  Author: Yang Zhong <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M target/i386/Makefile.objs

  Log Message:
  -----------
  target/i386: add the CONFIG_TCG into Makefiles

Add the CONFIG_TCG for frontend and backend's files in the related
Makefiles.

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


  Commit: 67b9c5d4f37ea373ebf9aad251883886e34bf2e1
      
https://github.com/qemu/qemu/commit/67b9c5d4f37ea373ebf9aad251883886e34bf2e1
  Author: Peter Maydell <address@hidden>
  Date:   2017-07-06 (Thu, 06 Jul 2017)

  Changed paths:
    M Makefile.objs
    M Makefile.target
    M accel/Makefile.objs
    M accel/kvm/kvm-all.c
    M accel/stubs/Makefile.objs
    A accel/stubs/tcg-stub.c
    M accel/tcg/Makefile.objs
    M accel/tcg/cpu-exec-common.c
    M accel/tcg/tcg-all.c
    M accel/tcg/translate-all.c
    R accel/tcg/translate-common.c
    M block/nbd-client.c
    M bootdevice.c
    M bsd-user/main.c
    M configure
    M exec.c
    M hmp-commands-info.hx
    M hw/acpi/ich9.c
    M hw/i386/kvmvapic.c
    M hw/i386/pc_q35.c
    M hw/misc/Makefile.objs
    M hw/scsi/virtio-scsi.c
    M include/exec/cpu-common.h
    M include/exec/cpu-defs.h
    M include/exec/exec-all.h
    M include/exec/poison.h
    M include/hw/i386/pc.h
    M include/qemu-common.h
    M include/qemu/main-loop.h
    M include/qemu/thread-posix.h
    M include/qemu/thread-win32.h
    M include/qom/cpu.h
    M include/sysemu/accel.h
    M include/sysemu/kvm.h
    M monitor.c
    M qemu-doc.texi
    M qom/cpu.c
    M scripts/checkpatch.pl
    M target/i386/Makefile.objs
    M target/i386/cpu.c
    M target/i386/cpu.h
    M target/i386/excp_helper.c
    M target/i386/fpu_helper.c
    M target/i386/hax-all.c
    M target/i386/helper.c
    M target/i386/kvm.c
    M target/i386/kvm_i386.h
    M target/i386/machine.c
    M target/i386/mpx_helper.c
    M target/i386/seg_helper.c
    A target/i386/xsave_helper.c
    M target/mips/kvm.c
    M tcg/tcg.h
    M tests/test-char.c
    M util/main-loop.c
    M util/oslib-win32.c
    M util/qemu-sockets.c
    M util/qemu-thread-posix.c
    M util/qemu-thread-win32.c
    M vl.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging

* qemu-thread portability improvement (Fam)
* virtio-scsi IOMMU fix (Jason)
* poisoning and common-obj-y cleanups (Thomas)
* initial Hypervisor.framework refactoring (Sergio)
* x86 TCG interrupt injection fixes (Wu Xiang, me)
* --disable-tcg support for x86 (Yang Zhong, me)
* various other bugfixes and cleanups (Daniel, Peter, Thomas)

# gpg: Signature made Wed 05 Jul 2017 08:12:56 BST
# gpg:                using RSA key 0xBFFBD25F78C7AE83
# gpg: Good signature from "Paolo Bonzini <address@hidden>"
# gpg:                 aka "Paolo Bonzini <address@hidden>"
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* remotes/bonzini/tags/for-upstream: (42 commits)
  target/i386: add the CONFIG_TCG into Makefiles
  target/i386: add the tcg_enabled() in target/i386/
  target/i386: move TLB refill function out of helper.c
  target/i386: split cpu_set_mxcsr() and make cpu_set_fpuc() inline
  target/i386: make cpu_get_fp80()/cpu_set_fp80() static
  target/i386: move cpu_sync_bndcs_hflags() function
  tcg: add the CONFIG_TCG into Makefiles
  tcg: add CONFIG_TCG guards in headers
  exec: elide calls to tb_lock and tb_unlock
  tcg: move tb_lock out of translate-all.h
  tcg: add the tcg-stub.c file into accel/stubs/
  vapic: use tcg_enabled
  monitor: disable "info jit" and "info opcount" if !TCG
  tcg: make tcg_allowed global
  cpu: move interrupt handling out of translate-common.c
  tcg: move page_size_init() function
  vl: add tcg_enabled() for tcg related code
  vl: convert -tb-size to qemu_strtoul
  configure: add --disable-tcg configure option
  configure: early test for supported targets
  ...

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


Compare: https://github.com/qemu/qemu/compare/2185c93ba80f...67b9c5d4f37e

reply via email to

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