qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] dfae62: docker.py/build: support -t and -f ar


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] dfae62: docker.py/build: support -t and -f arguments
Date: Sat, 13 Jun 2020 09:30:28 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: dfae62845961556935c6b8ccbb4285d4688c42b4
      
https://github.com/qemu/qemu/commit/dfae62845961556935c6b8ccbb4285d4688c42b4
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M tests/docker/Makefile.include
    M tests/docker/docker.py

  Log Message:
  -----------
  docker.py/build: support -t and -f arguments

The docker.py command line is subtly different from docker and podman's,
in that the tag and Dockerfile are passed via positional arguments.
Remove this gratuitous difference and just parse -f and -t.

-f was previously used by --extra-files, only keep the long option.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: af509738f8e4400c26d321abeac924efb04fbfa0
      
https://github.com/qemu/qemu/commit/af509738f8e4400c26d321abeac924efb04fbfa0
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M tests/docker/docker.py

  Log Message:
  -----------
  docker.py/build: support binary files in --extra-files

Read the --extra-files in binary mode to avoid encoding errors.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 6ed4075c3c06b35cbd8316f2121073c600fcc089
      
https://github.com/qemu/qemu/commit/6ed4075c3c06b35cbd8316f2121073c600fcc089
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M scripts/coverity-scan/run-coverity-scan

  Log Message:
  -----------
  run-coverity-scan: get Coverity token and email from special git config 
section

Support a [coverity] section in .git/config.  It can be used to retrieve the
token and also, if it is different from user.email, the username of the
submitter.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 726590594071a458643a00160aa659dd5f663b72
      
https://github.com/qemu/qemu/commit/726590594071a458643a00160aa659dd5f663b72
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M scripts/coverity-scan/coverity-scan.docker
    M scripts/coverity-scan/run-coverity-scan

  Log Message:
  -----------
  run-coverity-scan: use docker.py

Our trusted docker wrapper allows run-coverity-scan to run with both
docker and podman.

For the "run" phase this is transparent; for the "build" phase however
scripts are replaced with a bind mount (-v).  This is not an issue
because the secret option is meant for secrets stored globally in the
system and bind mounts are a valid substitute for secrets that are known
to whoever builds the container.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b99b007905f06042435ebc6fbcbe66ee34a7b596
      
https://github.com/qemu/qemu/commit/b99b007905f06042435ebc6fbcbe66ee34a7b596
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M scripts/coverity-scan/run-coverity-scan

  Log Message:
  -----------
  run-coverity-scan: add --no-update-tools option

Provide a quick way to skip building the container while we figure out how
to get caching right.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 3077453cf965c999ae0aaab46c566edf74f8e0b4
      
https://github.com/qemu/qemu/commit/3077453cf965c999ae0aaab46c566edf74f8e0b4
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M scripts/coverity-scan/run-coverity-scan

  Log Message:
  -----------
  run-coverity-scan: use --no-update-tools in docker run

Tools are already updated via the docker build.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2e90470e90d660ed03321ba677fba2d5208bc6e4
      
https://github.com/qemu/qemu/commit/2e90470e90d660ed03321ba677fba2d5208bc6e4
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M scripts/coverity-scan/coverity-scan.docker
    M scripts/coverity-scan/run-coverity-scan

  Log Message:
  -----------
  run-coverity-scan: download tools outside the container

This lets us look at coverity_tool.md5 across executions of run-coverity-scan
and skip the download.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: fbb84f074174aa3bb6fde4a63b569a1f7e64f264
      
https://github.com/qemu/qemu/commit/fbb84f074174aa3bb6fde4a63b569a1f7e64f264
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M scripts/coverity-scan/run-coverity-scan

  Log Message:
  -----------
  run-coverity-scan: support --update-tools-only --docker

Just build the container when run-coverity-scan is invoked with
--update-tools-only --docker.  This requires moving the "docker build"
logic into the update_coverity_tools function.

The only snag is that --update-tools-only --docker requires access to
the dockerfile.  For now just report an error for --src-tarball, and
"docker build" will fail if not in a source tree.  Another possibility
could be to host our container images on a public registry, and use
"FROM qemu:fedora" to make the Dockerfile small enough that it can be
included directly in the run-coverity-scan script.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 59d55a16edfac087248dc60dd9525bdfcc057bb1
      
https://github.com/qemu/qemu/commit/59d55a16edfac087248dc60dd9525bdfcc057bb1
  Author: Igor Mammedov <imammedo@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M softmmu/vl.c

  Log Message:
  -----------
  vl.c: run preconfig loop before creating default RAM backend

Default RAM backend depends on numa_uses_legacy_mem(), which is
infulenced by -numa options on CLI or set-numa-node QMP command
at preconfig time. If QEMU is started with  '-preconfig'
without -numa, it will lead to creating default RAM backend
even if later set-numa-node is used to assing RAM to NUMA nodes
using 'memdev' NUMA option.
That at best will waste RAM object created by default and with
next patch adding a check to prevent usage of conflicting
 '-M memory-backend' and '-numa memdev'
options, it will make QEMU error out if user tries to configure
NUMA at preconfig time with memdev option, making set-numa-node
unusable.

To fix issue, move preconfig loop before default RAM backend is
created, so that numa_uses_legacy_mem() would take into account
effects of set-numa-node commands executed at preconfig time.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20200511141103.43768-2-imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ea81f98bce48fc424960ca180fe2ccad0427bfc7
      
https://github.com/qemu/qemu/commit/ea81f98bce48fc424960ca180fe2ccad0427bfc7
  Author: Igor Mammedov <imammedo@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/core/numa.c

  Log Message:
  -----------
  numa: prevent usage of -M memory-backend and -numa memdev at the same time

Options -M memory-backend and -numa memdev are mutually exclusive,
and if used together, it might lead to a crash in the worst case.
For example when the same backend is used with these options together:
  -m 4G \
  -object memory-backend-ram,id=mem0,size=4G \
  -M pc,memory-backend=mem0 \
  -numa node,memdev=mem0
QEMU will abort with:
   exec.c:2006: qemu_ram_set_idstr: Assertion `!new_block->idstr[0]' failed.

and following backtrace:
    abort ()
    qemu_ram_set_idstr ()
    vmstate_register_ram ()
    vmstate_register_ram_global ()
    machine_consume_memdev ()
    numa_init_memdev_container ()
    numa_complete_configuration ()
    machine_run_board_init ()

add a check to error out in case the user tries to use both options at
the same time.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20200511141103.43768-3-imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b8164e68e5f91325821d413fec84b9a0956e95bb
      
https://github.com/qemu/qemu/commit/b8164e68e5f91325821d413fec84b9a0956e95bb
  Author: Pavel Dovgalyuk <Pavel.Dovgaluk@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  icount: fix shift=auto for record/replay

This patch fixes shift=auto when record/replay is enabled.
Now user does not need to guess the best shift value.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgaluk@ispras.ru>

--

v2:
  moved icount_time_shift to vmstate subsection
Message-Id: <158988500050.15192.692077802469400393.stgit@pasha-ThinkPad-X280>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 4a39181db284167111ff1b27bffe7599543e930f
      
https://github.com/qemu/qemu/commit/4a39181db284167111ff1b27bffe7599543e930f
  Author: Cédric Le Goater <clg@kaod.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M qom/object.c

  Log Message:
  -----------
  qom/object: Fix object_child_foreach_recursive() return value

When recursing, the return value of do_object_child_foreach() is not
taken into account.

Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Fixes: d714b8de7747 ("qom: Add recursive version of object_child_for_each")
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200404153340.164861-1-clg@kaod.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ce8540fde2cb535923a52a012f57b418eea85e1b
      
https://github.com/qemu/qemu/commit/ce8540fde2cb535923a52a012f57b418eea85e1b
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/misc_helper.c

  Log Message:
  -----------
  target/i386: Fix OUTL debug output

Fix OUTL instructions incorrectly displayed as OUTW.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200517110147.26026-1-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ca27b5eb7cdd112ed465bd757358af4c06e135ea
      
https://github.com/qemu/qemu/commit/ca27b5eb7cdd112ed465bd757358af4c06e135ea
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/block/vhost-user-blk.c
    M hw/pci-host/pam.c
    M hw/scsi/vhost-user-scsi.c
    M include/hw/display/edid.h
    M include/qemu/typedefs.h
    M include/qom/object.h
    M include/qom/qom-qobject.h
    M include/sysemu/sysemu.h
    M stubs/qmp_memory_device.c

  Log Message:
  -----------
  qom/object: Move Object typedef to 'qemu/typedefs.h'

We use the Object type all over the place.
Forward declare it in "qemu/typedefs.h".

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20200504115656.6045-2-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 78f8d4975c5d035e2e2447e6e499629b96142db0
      
https://github.com/qemu/qemu/commit/78f8d4975c5d035e2e2447e6e499629b96142db0
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M include/io/task.h
    M io/task.c
    M tests/test-io-task.c

  Log Message:
  -----------
  io/task: Move 'qom/object.h' header to source

We need "qom/object.h" to call object_ref()/object_unref(),
and to test the TYPE_DUMMY.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20200504115656.6045-3-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: fdbff6bd145c1e27520cfe206f04cc664fbb2b30
      
https://github.com/qemu/qemu/commit/fdbff6bd145c1e27520cfe206f04cc664fbb2b30
  Author: Philippe Mathieu-Daudé <philmd@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M Makefile
    M configure

  Log Message:
  -----------
  Makefile: Let the 'help' target list the helper targets

List the name of the helper targets when calling 'make help',
along with the tool targets:

  $ make help
  [...]

  Helper targets:
    fsdev/virtfs-proxy-helper      - Build virtfs-proxy-helper
    scsi/qemu-pr-helper            - Build qemu-pr-helper
    qemu-bridge-helper             - Build qemu-bridge-helper
    vhost-user-gpu                 - Build vhost-user-gpu
    virtiofsd                      - Build virtiofsd

  Tools targets:
    qemu-ga                        - Build qemu-ga tool
    qemu-keymap                    - Build qemu-keymap tool
    elf2dmp                        - Build elf2dmp tool
    ivshmem-client                 - Build ivshmem-client tool
    ivshmem-server                 - Build ivshmem-server tool
    qemu-nbd                       - Build qemu-nbd tool
    qemu-storage-daemon            - Build qemu-storage-daemon tool
    qemu-img                       - Build qemu-img tool
    qemu-io                        - Build qemu-io tool
    qemu-edid                      - Build qemu-edid tool

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: d42cd96100724bc9fbac18cc17c5f5f9b9b2f181
      
https://github.com/qemu/qemu/commit/d42cd96100724bc9fbac18cc17c5f5f9b9b2f181
  Author: Jon Doron <arilou@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/hyperv/hyperv.c
    M include/hw/hyperv/hyperv.h

  Log Message:
  -----------
  hyperv: expose API to determine if synic is enabled

Signed-off-by: Jon Doron <arilou@gmail.com>
Message-Id: <20200424123444.3481728-2-arilou@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 973b1fbd862c848dde7f710ba1b9ca340235e75f
      
https://github.com/qemu/qemu/commit/973b1fbd862c848dde7f710ba1b9ca340235e75f
  Author: Jon Doron <arilou@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    A include/hw/hyperv/vmbus-proto.h

  Log Message:
  -----------
  vmbus: add vmbus protocol definitions

Add a header with data structures and constants used in Hyper-V VMBus
hypervisor <-> guest interactions.

Based on the respective stuff from Linux kernel.

Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Signed-off-by: Jon Doron <arilou@gmail.com>
Message-Id: <20200424123444.3481728-3-arilou@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 0d71f7082d7aeec8d9767e32dbf7dd86b94b8260
      
https://github.com/qemu/qemu/commit/0d71f7082d7aeec8d9767e32dbf7dd86b94b8260
  Author: Jon Doron <arilou@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M Makefile.objs
    M hw/hyperv/Kconfig
    M hw/hyperv/Makefile.objs
    A hw/hyperv/trace-events
    A hw/hyperv/vmbus.c
    A include/hw/hyperv/vmbus-bridge.h
    A include/hw/hyperv/vmbus.h

  Log Message:
  -----------
  vmbus: vmbus implementation

Add the VMBus infrastructure -- bus, devices, root bridge, vmbus state
machine, vmbus channel interactions, etc.

VMBus is a collection of technologies.  At its lowest layer, it's a message
passing and signaling mechanism, allowing efficient passing of messages to and
from guest VMs.  A layer higher, it's a mechanism for defining channels of
communication, where each channel is tagged with a type (which implies a
protocol) and a instance ID.  A layer higher than that, it's a bus driver,
serving as the basis of device enumeration within a VM, where a channel can
optionally be exposed as a paravirtual device.  When a server-side (paravirtual
back-end) component wishes to offer a channel to a guest VM, it does so by
specifying a channel type, a mode, and an instance ID.  VMBus then exposes this
in the guest.

More information about VMBus can be found in the file
vmbuskernelmodeclientlibapi.h in Microsoft's WDK.

TODO:
 - split into smaller palatable pieces
 - more comments
 - check and handle corner cases

Kudos to Evgeny Yakovlev (formerly eyakovlev@virtuozzo.com) and Andrey
Smetatin (formerly asmetanin@virtuozzo.com) for research and
prototyping.

Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Signed-off-by: Jon Doron <arilou@gmail.com>
Message-Id: <20200424123444.3481728-4-arilou@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: cab78e7cb298c247c1749125001362a586c45c1f
      
https://github.com/qemu/qemu/commit/cab78e7cb298c247c1749125001362a586c45c1f
  Author: Jon Doron <arilou@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c

  Log Message:
  -----------
  i386:pc: whitelist dynamic vmbus-bridge

As vmbus-bridge is derived from sysbus device, it has to be whitelisted
to be allowed to be created with -device.

Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Signed-off-by: Jon Doron <arilou@gmail.com>
Message-Id: <20200424123444.3481728-5-arilou@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 6775d15de18268718c2f971c2b2d255c76ff2240
      
https://github.com/qemu/qemu/commit/6775d15de18268718c2f971c2b2d255c76ff2240
  Author: Jon Doron <arilou@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/hyperv/vmbus.c
    M hw/i386/acpi-build.c
    M include/hw/hyperv/vmbus-bridge.h

  Log Message:
  -----------
  i386: Hyper-V VMBus ACPI DSDT entry

Guest OS uses ACPI to discover VMBus presence.  Add a corresponding
entry to DSDT in case VMBus has been enabled.

Experimentally Windows guests were found to require this entry to
include two IRQ resources. They seem to never be used but they still
have to be there.

Make IRQ numbers user-configurable via corresponding properties; use 7
and 13 by default.

Signed-off-by: Evgeny Yakovlev <eyakovlev@virtuozzo.com>
Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Signed-off-by: Jon Doron <arilou@gmail.com>
Message-Id: <20200424123444.3481728-6-arilou@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 4dd8a7064b8a6527f99a62be11a5124e65cae270
      
https://github.com/qemu/qemu/commit/4dd8a7064b8a6527f99a62be11a5124e65cae270
  Author: Jon Doron <arilou@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/hyperv/vmbus.c
    M include/hw/hyperv/vmbus.h

  Log Message:
  -----------
  vmbus: add infrastructure to save/load vmbus requests

This can be allow to include controller-specific data while
saving/loading in-flight scsi requests of the vmbus scsi controller.

Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Signed-off-by: Jon Doron <arilou@gmail.com>
Message-Id: <20200424123444.3481728-7-arilou@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: cac9edfc4dad2a7d2ad7e23e0de4edc41801e346
      
https://github.com/qemu/qemu/commit/cac9edfc4dad2a7d2ad7e23e0de4edc41801e346
  Author: Babu Moger <babu.moger@amd.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/cpu.c

  Log Message:
  -----------
  target/i386: Fix the CPUID leaf CPUID_Fn80000008

CPUID leaf CPUID_Fn80000008_ECX provides information about the
number of threads supported by the processor. It was found that
the field ApicIdSize(bits 15-12) was not set correctly.

ApicIdSize is defined as the number of bits required to represent
all the ApicId values within a package.

Valid Values: Value Description
3h-0h           Reserved.
4h              up to 16 threads.
5h              up to 32 threads.
6h              up to 64 threads.
7h              up to 128 threads.
Fh-8h           Reserved.

Fix the bit appropriately.

This came up during following thread.
https://lore.kernel.org/qemu-devel/158643709116.17430.15995069125716778943.malonedeb@wampee.canonical.com/#t

Refer the Processor Programming Reference (PPR) for AMD Family 17h
Model 01h, Revision B1 Processors. The documentation is available
from the bugzilla Link below.
Link: https://bugzilla.kernel.org/show_bug.cgi?id=206537

Reported-by: Philipp Eppelt <1871842@bugs.launchpad.net>
Signed-off-by: Babu Moger <babu.moger@amd.com>
Message-Id: <20200417215345.64800.73351.stgit@localhost.localdomain>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2dfbea1a872727fb747ca6adf2390e09956cdc6e
      
https://github.com/qemu/qemu/commit/2dfbea1a872727fb747ca6adf2390e09956cdc6e
  Author: Janne Grunau <j@jannau.net>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/ops_sse.h

  Log Message:
  -----------
  target/i386: fix phadd* with identical destination and source register

Detected by asm test suite failures in dav1d
(https://code.videolan.org/videolan/dav1d). Can be reproduced by
`qemu-x86_64 -cpu core2duo ./tests/checkasm --test=mc_8bpc 1659890620`.

Signed-off-by: Janne Grunau <j@jannau.net>
Message-Id: <20200401225253.30745-1-j@jannau.net>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 29282253b79fcb917d154d37a491c17b390f258b
      
https://github.com/qemu/qemu/commit/29282253b79fcb917d154d37a491c17b390f258b
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Add reference to VMware open-vm-tools

This official VMware open-source project can be used as reference to
understand how guest code interacts with VMPort virtual device. Thus,
providing understanding on how device is expected to behave.

Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-2-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c9ab24cef8ab680e3d24d7332599b2b857bd107b
      
https://github.com/qemu/qemu/commit/c9ab24cef8ab680e3d24d7332599b2b857bd107b
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Add device properties

No functional change.

This is done as a preparation for the following patches that will
introduce several device properties.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200312165431.82118-3-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b889212973dabee119a1ab21326a27fc51b88d6d
      
https://github.com/qemu/qemu/commit/b889212973dabee119a1ab21326a27fc51b88d6d
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/core/machine.c
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Propagate IOPort read to vCPU EAX register

vmport_ioport_read() returns the value that should propagate to vCPU EAX
register when guest reads VMPort IOPort (i.e. By x86 IN instruction).

However, because vmport_ioport_read() calls cpu_synchronize_state(), the
returned value gets overridden by the value in QEMU vCPU EAX register.
i.e. cpu->env.regs[R_EAX].

To fix this issue, change vmport_ioport_read() to explicitly override
cpu->env.regs[R_EAX] with the value it wish to propagate to vCPU EAX
register.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-4-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 0342ee761ef27a0def476dab3e284f924b3c801e
      
https://github.com/qemu/qemu/commit/0342ee761ef27a0def476dab3e284f924b3c801e
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/core/machine.c
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Set EAX to -1 on failed and unsupported commands

This is used as a signal for VMware Tools to know if a command it
attempted to invoke, failed or is unsupported. As a result, VMware Tools
will either report failure to user or fallback to another backdoor command
in attempt to perform some operation.

A few examples:
* open-vm-tools TimeSyncReadHost() function fallbacks to
CMD_GETTIMEFULL command when CMD_GETTIMEFULL_WITH_LAG
fails/unsupported.
* open-vm-tools Hostinfo_NestingSupported() function verifies
EAX != -1 to check for success.
* open-vm-tools Hostinfo_VCPUInfoBackdoor() functions checks
if reserved-bit is set to indicate command is unimplemented.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-5-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2fd2f799f874a4d4156c4c7287c92cfbbae5bdb2
      
https://github.com/qemu/qemu/commit/2fd2f799f874a4d4156c4c7287c92cfbbae5bdb2
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Introduce vmware-vmx-version property

vmware-vmx-version is a number returned from CMD_GETVERSION which specifies
to guest VMware Tools the the host VMX version. If the host reports a number
that is different than what the guest VMware Tools expects, it may force
guest to upgrade VMware Tools. (See comment above VERSION_MAGIC and
VmCheck_IsVirtualWorld() function in open-vm-tools open-source code).

For better readability and allow maintaining compatability for guests
which may expect different vmware-vmx-version, make vmware-vmx-version a
VMPort object property. This would allow user to control it's value via
"-global vmport.vmware-vmx-version=X".

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200312165431.82118-6-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: f8bdc550370f9a652a00db891f9b7640d83c0c43
      
https://github.com/qemu/qemu/commit/f8bdc550370f9a652a00db891f9b7640d83c0c43
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/core/machine.c
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Report vmware-vmx-type in CMD_GETVERSION

As can be seen from VmCheck_GetVersion() in open-vm-tools code,
CMD_GETVERSION should return vmware-vmx-type in ECX register.

Default is to fake host as VMware ESX server. But user can control
this value by "-global vmport.vmware-vmx-type=X".

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-7-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: d8f23d619c495bc64977c00e92f3af4ff2c54046
      
https://github.com/qemu/qemu/commit/d8f23d619c495bc64977c00e92f3af4ff2c54046
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/pc.c
    M hw/i386/vmmouse.c
    M hw/i386/vmport.c
    R hw/i386/vmport.h
    A include/hw/i386/vmport.h

  Log Message:
  -----------
  hw/i386/vmport: Introduce vmport.h

No functional change. This is mere refactoring.

Suggested-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200312165431.82118-8-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: dcd938f032d3cca5d33d9faaca591b498d40debe
      
https://github.com/qemu/qemu/commit/dcd938f032d3cca5d33d9faaca591b498d40debe
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmmouse.c
    M hw/i386/vmport.c
    M include/hw/i386/vmport.h

  Log Message:
  -----------
  hw/i386/vmport: Define enum for all commands

No functional change.

Defining an enum for all VMPort commands have the following advantages:
* It gets rid of the error-prone requirement to update VMPORT_ENTRIES
when new VMPort commands are added to QEMU.
* It makes it clear to know by looking at one place at the source, what
are all the VMPort commands supported by QEMU.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200312165431.82118-9-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: aaacf1c15a225ffeb1ff066b78e211594b3a5053
      
https://github.com/qemu/qemu/commit/aaacf1c15a225ffeb1ff066b78e211594b3a5053
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/core/machine.c
    M hw/i386/vmport.c
    M include/hw/i386/vmport.h

  Log Message:
  -----------
  hw/i386/vmport: Add support for CMD_GETBIOSUUID

This is VMware documented functionallity that some guests rely on.
Returns the BIOS UUID of the current virtual machine.

Note that we also introduce a new compatability flag "x-cmds-v2" to
make sure to expose new VMPort commands only to new machine-types.
This flag will also be used by the following patches that will introduce
additional VMPort commands.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-10-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: acacd3550ba1b2379d5a14a00f7dad4820a015b4
      
https://github.com/qemu/qemu/commit/acacd3550ba1b2379d5a14a00f7dad4820a015b4
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c
    M include/hw/i386/vmport.h

  Log Message:
  -----------
  hw/i386/vmport: Add support for CMD_GET_VCPU_INFO

Command currently returns that it is unimplemented by setting
the reserved-bit in it's return value.

Following patches will return various useful vCPU information
to guest.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-13-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 7f9114b77c285016cb5ac28604b9923cbac43ddf
      
https://github.com/qemu/qemu/commit/7f9114b77c285016cb5ac28604b9923cbac43ddf
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Allow x2apic without IR

Signal to guest that hypervisor supports x2apic without VT-d/IOMMU
Interrupt-Remapping support. This allows guest to use x2apic in
case all APIC IDs fits in 8-bit (i.e. Max APIC ID < 255).

See Linux kernel commit 4cca6ea04d31 ("x86/apic: Allow x2apic
without IR on VMware platform") and Linux try_to_enable_x2apic()
function.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-14-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 73b994f6d74ec00a1d78daf4145096ff9f0e2982
      
https://github.com/qemu/qemu/commit/73b994f6d74ec00a1d78daf4145096ff9f0e2982
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

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

  Log Message:
  -----------
  i386/cpu: Store LAPIC bus frequency in CPU structure

No functional change.
This information will be used by following patches.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-15-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: d6048bfd12e24a0980ba2040cfaa2b101df3fa16
      
https://github.com/qemu/qemu/commit/d6048bfd12e24a0980ba2040cfaa2b101df3fa16
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c
    M include/hw/i386/vmport.h

  Log Message:
  -----------
  hw/i386/vmport: Add support for CMD_GETHZ

This command returns to guest information on LAPIC bus frequency and TSC
frequency.

One can see how this interface is used by Linux vmware_platform_setup()
introduced in Linux commit 88b094fb8d4f ("x86: Hypervisor detection and
get tsc_freq from hypervisor").

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-16-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 23accdf162dcccb9fec9585a64ad01a87b13da5c
      
https://github.com/qemu/qemu/commit/23accdf162dcccb9fec9585a64ad01a87b13da5c
  Author: Liran Alon <liran.alon@oracle.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Assert vmport initialized before registering commands

vmport_register() is also called from other modules such as vmmouse.
Therefore, these modules rely that vmport is realized before those call
sites. If this is violated, vmport_register() will NULL-deref.

To make such issues easier to debug, assert in vmport_register() that
vmport is already realized.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200312165431.82118-17-liran.alon@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: da278d58a092bfcc4e36f1e274229c1468dea731
      
https://github.com/qemu/qemu/commit/da278d58a092bfcc4e36f1e274229c1468dea731
  Author: Philippe Mathieu-Daudé <philmd@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M MAINTAINERS
    M accel/Makefile.objs
    A accel/xen/Makefile.objs
    A accel/xen/xen-all.c
    M hw/acpi/piix4.c
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M hw/i386/xen/xen-hvm.c
    M hw/i386/xen/xen_platform.c
    M hw/isa/piix3.c
    M hw/pci/msix.c
    M hw/xen/Makefile.objs
    R hw/xen/xen-common.c
    M include/exec/ram_addr.h
    M include/hw/xen/xen.h
    A include/sysemu/xen.h
    M migration/savevm.c
    M softmmu/vl.c
    M stubs/xen-hvm.c
    M target/i386/cpu.c

  Log Message:
  -----------
  accel: Move Xen accelerator code under accel/xen/

This code is not related to hardware emulation.
Move it under accel/ with the other hypervisors.

Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200508100222.7112-1-philmd@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ad195c8ff562365b3e5b43e800d6acd84cb22e99
      
https://github.com/qemu/qemu/commit/ad195c8ff562365b3e5b43e800d6acd84cb22e99
  Author: Masahiro Yamada <masahiroy@kernel.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M qom/object.c

  Log Message:
  -----------
  qom: remove index from object_resolve_abs_path()

You can advance 'parts' to track the current path fragment.
The 'index' parameter is unneeded.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Message-Id: <20200510013235.954906-1-masahiroy@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: e5a0cc5e44c0344a3b8e284feeeffe43debca995
      
https://github.com/qemu/qemu/commit/e5a0cc5e44c0344a3b8e284feeeffe43debca995
  Author: Masahiro Yamada <masahiroy@kernel.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M qom/object.c

  Log Message:
  -----------
  qom/object: factor out the initialization of hash table of properties

Properties are not related to the initialization of interfaces.

The initialization of the hash table can be moved after the if-block,
and unified.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Message-Id: <20200512172615.2291999-1-masahiroy@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 3d91293ed2c023b016d845b68ee184ee0f435227
      
https://github.com/qemu/qemu/commit/3d91293ed2c023b016d845b68ee184ee0f435227
  Author: Masahiro Yamada <masahiroy@kernel.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M qom/object.c

  Log Message:
  -----------
  qom/object: simplify type_initialize_interface()

iface_impl->class is the same as new_iface. Make it more readable.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Message-Id: <20200512182501.2300530-1-masahiroy@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: e27a959581759d4f6df45993ba940ec1f769ea68
      
https://github.com/qemu/qemu/commit/e27a959581759d4f6df45993ba940ec1f769ea68
  Author: Masahiro Yamada <masahiroy@kernel.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M qom/object.c

  Log Message:
  -----------
  qom/object: pass (Object *) to object_initialize_with_type()

object_new_with_type() already passes (Object *) pointer.
Avoid casting back and forth.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Message-Id: <20200512173104.2293073-1-masahiroy@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c5e18709585c6f2a3464f89434b0040ce5164d9d
      
https://github.com/qemu/qemu/commit/c5e18709585c6f2a3464f89434b0040ce5164d9d
  Author: Masahiro Yamada <masahiroy@kernel.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M qom/container.c

  Log Message:
  -----------
  qom/container: remove .instance_size initializer from container_info

You can omit .instance_size if it is the same as that of the parent.

    .class_size = sizeof(ObjectClass)

... is omitted here, so removing .instance_size is more consistent.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Message-Id: <20200513033600.2709646-1-masahiroy@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 6c1ddc36d8ddcb21e905dfdecfb9f2e4d4fd8acc
      
https://github.com/qemu/qemu/commit/6c1ddc36d8ddcb21e905dfdecfb9f2e4d4fd8acc
  Author: Markus Armbruster <armbru@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: Fix botched configure_icount() error API violation fix

Before recent commit abc9bf69a66, configure_icount() returned early
when option "shift" was absent: succeed when option "align" was also
absent, else fail.

Since then, it still errors out when only "align" is present, but
continues when both are absent.  Crashes when examining the value of
"shift" further.  Reproducer: -icount "".

Revert this erroneous part of the commit.

Fixes: abc9bf69a66a11499a801ff545b8fe7adbb3a04c
Fixes: Coverity CID 1428754
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200515042231.18201-1-armbru@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 34a0950605855870017bbe4d96110bf06a075982
      
https://github.com/qemu/qemu/commit/34a0950605855870017bbe4d96110bf06a075982
  Author: WangBowen <bowen.wang@intel.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/hax-all.c
    M target/i386/hax-i386.h

  Log Message:
  -----------
  hax: Dynamic allocate vcpu state structure

Dynamic allocating vcpu state structure according to smp value to be
more precise and safe. Previously it will alloccate array of fixed size
HAX_MAX_VCPU.

This is achieved by using g_new0 to dynamic allocate the array. The
allocated size is obtained from smp.max_cpus in MachineState. Also, the
size is compared with HAX_MAX_VCPU when creating the vm. The reason for
choosing dynamic array over linked list is because the status is visited
by index all the time.

This will lead to QEMU checking whether the smp value is larger than the
HAX_MAX_VCPU when creating vm, if larger, the process will terminate,
otherwise it will allocate array of size smp to store the status.

V2: Check max_cpus before open vm. (Philippe)

Signed-off-by: WangBowen <bowen.wang@intel.com>
Signed-off-by: Colin Xu <colin.xu@intel.com>
Message-Id: <20200509035952.187615-1-colin.xu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2a6931425890a9a2822e62f60724a9edbb93ba10
      
https://github.com/qemu/qemu/commit/2a6931425890a9a2822e62f60724a9edbb93ba10
  Author: Pan Nengyuan <pannengyuan@huawei.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

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

  Log Message:
  -----------
  i386/kvm: fix a use-after-free when vcpu plug/unplug

When we hotplug vcpus, cpu_update_state is added to vm_change_state_head
in kvm_arch_init_vcpu(). But it forgot to delete in kvm_arch_destroy_vcpu() 
after
unplug. Then it will cause a use-after-free access. This patch delete it in
kvm_arch_destroy_vcpu() to fix that.

Reproducer:
    virsh setvcpus vm1 4 --live
    virsh setvcpus vm1 2 --live
    virsh suspend vm1
    virsh resume vm1

The UAF stack:
==qemu-system-x86_64==28233==ERROR: AddressSanitizer: heap-use-after-free on 
address 0x62e00002e798 at pc 0x5573c6917d9e bp 0x7fff07139e50 sp 0x7fff07139e40
WRITE of size 1 at 0x62e00002e798 thread T0
    #0 0x5573c6917d9d in cpu_update_state /mnt/sdb/qemu/target/i386/kvm.c:742
    #1 0x5573c699121a in vm_state_notify /mnt/sdb/qemu/vl.c:1290
    #2 0x5573c636287e in vm_prepare_start /mnt/sdb/qemu/cpus.c:2144
    #3 0x5573c6362927 in vm_start /mnt/sdb/qemu/cpus.c:2150
    #4 0x5573c71e8304 in qmp_cont /mnt/sdb/qemu/monitor/qmp-cmds.c:173
    #5 0x5573c727cb1e in qmp_marshal_cont qapi/qapi-commands-misc.c:835
    #6 0x5573c7694c7a in do_qmp_dispatch /mnt/sdb/qemu/qapi/qmp-dispatch.c:132
    #7 0x5573c7694c7a in qmp_dispatch /mnt/sdb/qemu/qapi/qmp-dispatch.c:175
    #8 0x5573c71d9110 in monitor_qmp_dispatch /mnt/sdb/qemu/monitor/qmp.c:145
    #9 0x5573c71dad4f in monitor_qmp_bh_dispatcher 
/mnt/sdb/qemu/monitor/qmp.c:234

Reported-by: Euler Robot <euler.robot@huawei.com>
Signed-off-by: Pan Nengyuan <pannengyuan@huawei.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200513132630.13412-1-pannengyuan@huawei.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: f50ab86a2620bd7e8507af865b164655ee921661
      
https://github.com/qemu/qemu/commit/f50ab86a2620bd7e8507af865b164655ee921661
  Author: Prasad J Pandit <pjp@fedoraproject.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/scsi/megasas.c

  Log Message:
  -----------
  megasas: use unsigned type for reply_queue_head and check index

A guest user may set 'reply_queue_head' field of MegasasState to
a negative value. Later in 'megasas_lookup_frame' it is used to
index into s->frames[] array. Use unsigned type to avoid OOB
access issue.

Also check that 'index' value stays within s->frames[] bounds
through the while() loop in 'megasas_lookup_frame' to avoid OOB
access.

Reported-by: Ren Ding <rding@gatech.edu>
Reported-by: Hanqing Zhao <hanqing@gatech.edu>
Reported-by: Alexander Bulekov <alxndr@bu.edu>
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Acked-by: Alexander Bulekov <alxndr@bu.edu>
Message-Id: <20200513192540.1583887-2-ppandit@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: fd6918556736ecce8b10acd581ba134ffb62d9f9
      
https://github.com/qemu/qemu/commit/fd6918556736ecce8b10acd581ba134ffb62d9f9
  Author: Prasad J Pandit <pjp@fedoraproject.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/scsi/megasas.c

  Log Message:
  -----------
  megasas: avoid NULL pointer dereference

While in megasas_handle_frame(), megasas_enqueue_frame() may
set a NULL frame into MegasasCmd object for a given 'frame_addr'
address. Add check to avoid a NULL pointer dereference issue.

Reported-by: Alexander Bulekov <alxndr@bu.edu>
Fixes: https://bugs.launchpad.net/qemu/+bug/1878259
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Acked-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Message-Id: <20200513192540.1583887-3-ppandit@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2b151297e44655e45c18f57ae0232780ee4ad45a
      
https://github.com/qemu/qemu/commit/2b151297e44655e45c18f57ae0232780ee4ad45a
  Author: Prasad J Pandit <pjp@fedoraproject.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/scsi/megasas.c

  Log Message:
  -----------
  megasas: use unsigned type for positive numeric fields

Use unsigned type for the MegasasState fields which hold positive
numeric values.

Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Message-Id: <20200513192540.1583887-4-ppandit@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c415f2c58296d86e9abb7e4a133111acf7031da3
      
https://github.com/qemu/qemu/commit/c415f2c58296d86e9abb7e4a133111acf7031da3
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    A tests/tcg/i386/test-i386-fxtract.c

  Log Message:
  -----------
  target/i386: implement special cases for fxtract

The implementation of the fxtract instruction treats all nonzero
operands as normal numbers, so yielding incorrect results for invalid
formats, infinities, NaNs and subnormal and pseudo-denormal operands.
Implement appropriate handling of all those cases.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Acked-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <alpine.DEB.2.21.2005070042360.18350@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 0d48b436327955c69e2eb53f88aba9aa1e0dbaa0
      
https://github.com/qemu/qemu/commit/0d48b436327955c69e2eb53f88aba9aa1e0dbaa0
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    A tests/tcg/i386/test-i386-fscale.c

  Log Message:
  -----------
  target/i386: fix fscale handling of signaling NaN

The implementation of the fscale instruction returns a NaN exponent
unchanged.  Fix it to return a quiet NaN when the provided exponent is
a signaling NaN.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005070043330.18350@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b40eec96b26028b68c3594fbf34b6d6f029df26a
      
https://github.com/qemu/qemu/commit/b40eec96b26028b68c3594fbf34b6d6f029df26a
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    M tests/tcg/i386/test-i386-fscale.c

  Log Message:
  -----------
  target/i386: fix fscale handling of invalid exponent encodings

The fscale implementation does not check for invalid encodings in the
exponent operand, thus treating them like INT_MIN (the value returned
for invalid encodings by floatx80_to_int32_round_to_zero).  Fix it to
treat them similarly to signaling NaN exponents, thus generating a
quiet NaN result.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005070044190.18350@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c1c5fb8f9067c830e36830c2b82c0ec146c03d7b
      
https://github.com/qemu/qemu/commit/c1c5fb8f9067c830e36830c2b82c0ec146c03d7b
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    M tests/tcg/i386/test-i386-fscale.c

  Log Message:
  -----------
  target/i386: fix fscale handling of infinite exponents

The fscale implementation passes infinite exponents through to generic
code that rounds the exponent to a 32-bit integer before using
floatx80_scalbn.  In round-to-nearest mode, and ignoring exceptions,
this works in many cases.  But it fails to handle the special cases of
scaling 0 by a +Inf exponent or an infinity by a -Inf exponent, which
should produce a NaN, and because it produces an inexact result for
finite nonzero numbers being scaled, the result is sometimes incorrect
in other rounding modes.  Add appropriate handling of infinite
exponents to produce a NaN or an appropriately signed exact zero or
infinity as a result.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005070045010.18350@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c535d68755576bfa33be7aef7bd294a601f776e0
      
https://github.com/qemu/qemu/commit/c535d68755576bfa33be7aef7bd294a601f776e0
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    M tests/tcg/i386/test-i386-fscale.c

  Log Message:
  -----------
  target/i386: fix fscale handling of rounding precision

The fscale implementation uses floatx80_scalbn for the final scaling
operation.  floatx80_scalbn ends up rounding the result using the
dynamic rounding precision configured for the FPU.  But only a limited
set of x87 floating-point instructions are supposed to respect the
dynamic rounding precision, and fscale is not in that set.  Fix the
implementation to save and restore the rounding precision around the
call to floatx80_scalbn.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005070045430.18350@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 38df19fad71abe8823f8b416f672be95c2ac8d04
      
https://github.com/qemu/qemu/commit/38df19fad71abe8823f8b416f672be95c2ac8d04
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

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

  Log Message:
  -----------
  exec: Let address_space_read/write_cached() propagate MemTxResult

Both address_space_read_cached_slow() and
address_space_write_cached_slow() return a MemTxResult type.
Do not discard it, return it to the caller.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ddfc8b96eec648f35f0f054bd3f0a05df6cd34fb
      
https://github.com/qemu/qemu/commit/ddfc8b96eec648f35f0f054bd3f0a05df6cd34fb
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

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

  Log Message:
  -----------
  exec: Propagate cpu_memory_rw_debug() error

Do not ignore the MemTxResult error type returned by
the address_space_rw() API.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 6766ba506eb62110b8299d25718565a03220d012
      
https://github.com/qemu/qemu/commit/6766ba506eb62110b8299d25718565a03220d012
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M disas.c

  Log Message:
  -----------
  disas: Let disas::read_memory() handler return EIO on error

Both cpu_memory_rw_debug() and address_space_read() return
an error on failed transaction. Check the returned value,
and return EIO in case of error.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 5579b524b0d2e4b310157c0b7985d35c24238120
      
https://github.com/qemu/qemu/commit/5579b524b0d2e4b310157c0b7985d35c24238120
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M include/hw/elf_ops.h

  Log Message:
  -----------
  hw/elf_ops: Do not ignore write failures when loading ELF

Do not ignore the MemTxResult error type returned by
address_space_write().

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 80b4008c805ebcfd4c0d302ac31c1689e34571e0
      
https://github.com/qemu/qemu/commit/80b4008c805ebcfd4c0d302ac31c1689e34571e0
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    A tests/tcg/i386/test-i386-fldcst.c

  Log Message:
  -----------
  target/i386: fix floating-point load-constant rounding

The implementations of the fldl2t, fldl2e, fldpi, fldlg2 and fldln2
instructions load fixed constants independent of the rounding mode.
Fix them to load a value correctly rounded for the current rounding
mode (but always rounded to 64-bit precision independent of the
precision control, and without setting "inexact") as specified.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <alpine.DEB.2.21.2005132348310.11687@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 34b9cc076ff423023a779a04a9f7cd7c17372cbf
      
https://github.com/qemu/qemu/commit/34b9cc076ff423023a779a04a9f7cd7c17372cbf
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    A tests/tcg/i386/test-i386-fxam.c

  Log Message:
  -----------
  target/i386: fix fxam handling of invalid encodings

The fxam implementation does not check for invalid encodings, instead
treating them like NaN or normal numbers depending on the exponent.
Fix it to check that the high bit of the significand is set before
treating an encoding as NaN or normal, thus resulting in correct
handling (all of C0, C2 and C3 cleared) for invalid encodings.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005132349311.11687@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 18c53e1e73197a24f9f4b66b1276eb9868db5bf0
      
https://github.com/qemu/qemu/commit/18c53e1e73197a24f9f4b66b1276eb9868db5bf0
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    A tests/tcg/i386/test-i386-fbstp.c

  Log Message:
  -----------
  target/i386: fix fbstp handling of negative zero

The fbstp implementation stores +0 when the rounded result should be
-0 because it compares an integer value with 0 to determine the sign.
Fix this by checking the sign bit of the operand instead.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005132350230.11687@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 374ff4d0a3c2cce2bc6e4ba8a77eaba55c165252
      
https://github.com/qemu/qemu/commit/374ff4d0a3c2cce2bc6e4ba8a77eaba55c165252
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    M tests/tcg/i386/test-i386-fbstp.c

  Log Message:
  -----------
  target/i386: fix fbstp handling of out-of-range values

The fbstp implementation fails to check for out-of-range and invalid
values, instead just taking the result of conversion to int64_t and
storing its sign and low 18 decimal digits.  Fix this by checking for
an out-of-range result (invalid conversions always result in INT64_MAX
or INT64_MIN from the softfloat code, which are large enough to be
considered as out-of-range by this code) and storing the packed BCD
indefinite encoding in that case.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005132351110.11687@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c8af85b10c818709755f5dc8061c69920611fd4c
      
https://github.com/qemu/qemu/commit/c8af85b10c818709755f5dc8061c69920611fd4c
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    A tests/tcg/i386/test-i386-fisttp.c

  Log Message:
  -----------
  target/i386: fix fisttpl, fisttpll handling of out-of-range values

The fist / fistt family of instructions should all store the most
negative integer in the destination format when the rounded /
truncated integer result is out of range or the input is an invalid
encoding, infinity or NaN.  The fisttpl and fisttpll implementations
(32-bit and 64-bit results, truncate towards zero) failed to do this,
producing the most positive integer in some cases instead.  Fix this
by copying the code used to handle this issue for fistpl and fistpll,
adjusted to use the _round_to_zero functions for the actual
conversion (but without any other changes to that code).

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005152119160.3469@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c781a2cc423155079acf45e5ce79e6635f109fc4
      
https://github.com/qemu/qemu/commit/c781a2cc423155079acf45e5ce79e6635f109fc4
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/vmport.c

  Log Message:
  -----------
  hw/i386/vmport: Allow QTest use without crashing

Trying libFuzzer on the vmport device, we get:

  AddressSanitizer:DEADLYSIGNAL
  =================================================================
  ==29476==ERROR: AddressSanitizer: SEGV on unknown address 0x000000008840 (pc 
0x56448bec4d79 bp 0x7ffeec9741b0 sp 0x7ffeec9740e0 T0)
  ==29476==The signal is caused by a READ memory access.
    #0 0x56448bec4d78 in vmport_ioport_read (qemu-fuzz-i386+0x1260d78)
    #1 0x56448bb5f175 in memory_region_read_accessor (qemu-fuzz-i386+0xefb175)
    #2 0x56448bb30c13 in access_with_adjusted_size (qemu-fuzz-i386+0xeccc13)
    #3 0x56448bb2ea27 in memory_region_dispatch_read1 (qemu-fuzz-i386+0xecaa27)
    #4 0x56448bb2e443 in memory_region_dispatch_read (qemu-fuzz-i386+0xeca443)
    #5 0x56448b961ab1 in flatview_read_continue (qemu-fuzz-i386+0xcfdab1)
    #6 0x56448b96336d in flatview_read (qemu-fuzz-i386+0xcff36d)
    #7 0x56448b962ec4 in address_space_read_full (qemu-fuzz-i386+0xcfeec4)

This is easily reproducible using:

  $ echo inb 0x5658 | qemu-system-i386 -M isapc,accel=qtest -qtest stdio
  [I 1589796572.009763] OPENED
  [R +0.008069] inb 0x5658
  Segmentation fault (core dumped)

  $ coredumpctl gdb -q
  Program terminated with signal SIGSEGV, Segmentation fault.
  #0  0x00005605b54d0f21 in vmport_ioport_read (opaque=0x5605b7531ce0, addr=0, 
size=4) at hw/i386/vmport.c:77
  77          eax = env->regs[R_EAX];
  (gdb) p cpu
  $1 = (X86CPU *) 0x0
  (gdb) bt
  #0  0x00005605b54d0f21 in vmport_ioport_read (opaque=0x5605b7531ce0, addr=0, 
size=4) at hw/i386/vmport.c:77
  #1  0x00005605b53db114 in memory_region_read_accessor (mr=0x5605b7531d80, 
addr=0, value=0x7ffc9d261a30, size=4, shift=0, mask=4294967295, attrs=...) at 
memory.c:434
  #2  0x00005605b53db5d4 in access_with_adjusted_size (addr=0, 
value=0x7ffc9d261a30, size=1, access_size_min=4, access_size_max=4, access_fn=
      0x5605b53db0d2 <memory_region_read_accessor>, mr=0x5605b7531d80, 
attrs=...) at memory.c:544
  #3  0x00005605b53de156 in memory_region_dispatch_read1 (mr=0x5605b7531d80, 
addr=0, pval=0x7ffc9d261a30, size=1, attrs=...) at memory.c:1396
  #4  0x00005605b53de228 in memory_region_dispatch_read (mr=0x5605b7531d80, 
addr=0, pval=0x7ffc9d261a30, op=MO_8, attrs=...) at memory.c:1424
  #5  0x00005605b537c80a in flatview_read_continue (fv=0x5605b7650290, 
addr=22104, attrs=..., ptr=0x7ffc9d261b4b, len=1, addr1=0, l=1, 
mr=0x5605b7531d80) at exec.c:3200
  #6  0x00005605b537c95d in flatview_read (fv=0x5605b7650290, addr=22104, 
attrs=..., buf=0x7ffc9d261b4b, len=1) at exec.c:3239
  #7  0x00005605b537c9e6 in address_space_read_full (as=0x5605b5f74ac0 
<address_space_io>, addr=22104, attrs=..., buf=0x7ffc9d261b4b, len=1) at 
exec.c:3252
  #8  0x00005605b53d5a5d in address_space_read (len=1, buf=0x7ffc9d261b4b, 
attrs=..., addr=22104, as=0x5605b5f74ac0 <address_space_io>) at 
include/exec/memory.h:2401
  #9  0x00005605b53d5a5d in cpu_inb (addr=22104) at ioport.c:88

X86CPU is NULL because QTest accelerator does not use CPU.
Fix by returning default values when QTest accelerator is used.

Reported-by: Clang AddressSanitizer
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 353f98c9ad52ff4b8cfe553c90be04f747a14c98
      
https://github.com/qemu/qemu/commit/353f98c9ad52ff4b8cfe553c90be04f747a14c98
  Author: Cathy Zhang <cathy.zhang@intel.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

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

  Log Message:
  -----------
  x86/cpu: Enable AVX512_VP2INTERSECT cpu feature

AVX512_VP2INTERSECT compute vector pair intersection to a pair
of mask registers, which is introduced with intel Tiger Lake,
defining as CPUID.(EAX=7,ECX=0):EDX[bit 08].

Refer to the following release spec:
https://software.intel.com/sites/default/files/managed/c5/15/\
architecture-instruction-set-extensions-programming-reference.pdf

Signed-off-by: Cathy Zhang <cathy.zhang@intel.com>
Message-Id: <1586760758-13638-1-git-send-email-cathy.zhang@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 97a3757616ca27840c7ce1d088d8f1d2e5753738
      
https://github.com/qemu/qemu/commit/97a3757616ca27840c7ce1d088d8f1d2e5753738
  Author: Peter Xu <peterx@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/vfio/pci.c

  Log Message:
  -----------
  vfio/pci: Use kvm_irqchip_add_irqfd_notifier_gsi() for irqfds

VFIO is currently the only one left that is not using the generic
function (kvm_irqchip_add_irqfd_notifier_gsi()) to register irqfds.
Let VFIO use the common framework too.

Follow up patches will introduce extra features for kvm irqfd, so that
VFIO can easily leverage that after the switch.

Reviewed-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Alex Williamson <alex.williamson@redhat.com>
Acked-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20200318145204.74483-3-peterx@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ff66ba87ba1c43c10bc77138281bbdbd8bddaaba
      
https://github.com/qemu/qemu/commit/ff66ba87ba1c43c10bc77138281bbdbd8bddaaba
  Author: Peter Xu <peterx@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M accel/kvm/kvm-all.c

  Log Message:
  -----------
  KVM: Pass EventNotifier into kvm_irqchip_assign_irqfd

So that kvm_irqchip_assign_irqfd() can have access to the
EventNotifiers, especially the resample event.  It is needed in follow
up patch to cache and kick resamplefds from QEMU.

Reviewed-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20200318145204.74483-4-peterx@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c82d9d43ed5d1a7021890d788193fdbeae1011c8
      
https://github.com/qemu/qemu/commit/c82d9d43ed5d1a7021890d788193fdbeae1011c8
  Author: Peter Xu <peterx@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M accel/kvm/kvm-all.c
    M accel/kvm/trace-events
    M hw/intc/ioapic.c
    M include/sysemu/kvm.h

  Log Message:
  -----------
  KVM: Kick resamplefd for split kernel irqchip

This is majorly only for X86 because that's the only one that supports
split irqchip for now.

When the irqchip is split, we face a dilemma that KVM irqfd will be
enabled, however the slow irqchip is still running in the userspace.
It means that the resamplefd in the kernel irqfds won't take any
effect and it will miss to ack INTx interrupts on EOIs.

One example is split irqchip with VFIO INTx, which will break if we
use the VFIO INTx fast path.

This patch can potentially supports the VFIO fast path again for INTx,
that the IRQ delivery will still use the fast path, while we don't
need to trap MMIOs in QEMU for the device to emulate the EIOs (see the
callers of vfio_eoi() hook).  However the EOI of the INTx will still
need to be done from the userspace by caching all the resamplefds in
QEMU and kick properly for IOAPIC EOI broadcast.

This is tricky because in this case the userspace ioapic irr &
remote-irr will be bypassed.  However such a change will greatly boost
performance for assigned devices using INTx irqs (TCP_RR boosts 46%
after this patch applied).

When the userspace is responsible for the resamplefd kickup, don't
register it on the kvm_irqfd anymore, because on newer kernels (after
commit 654f1f13ea56, 5.2+) the KVM_IRQFD will fail if with both split
irqchip and resamplefd.  This will make sure that the fast path will
work for all supported kernels.

https://patchwork.kernel.org/patch/10738541/#22609933

Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20200318145204.74483-5-peterx@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 4d1d4602488fd5f3c0f0601feac4289b474add37
      
https://github.com/qemu/qemu/commit/4d1d4602488fd5f3c0f0601feac4289b474add37
  Author: Sai Pavan Boddu <sai.pavan.boddu@xilinx.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M chardev/char-socket.c

  Log Message:
  -----------
  chardev/char-socket: Properly make qio connections non blocking

In tcp_chr_sync_read function, there is a possibility of socket
disconnection during blocking read, then tcp_chr_hup function would clean up
the qio channel pointers(i.e ioc, sioc).

Signed-off-by: Sai Pavan Boddu <sai.pavan.boddu@xilinx.com>
Message-Id: <1587289900-29485-1-git-send-email-sai.pavan.boddu@xilinx.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: bbad173c7478269d2f4f67c81bafb1711f3cc815
      
https://github.com/qemu/qemu/commit/bbad173c7478269d2f4f67c81bafb1711f3cc815
  Author: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M tests/qtest/machine-none-test.c

  Log Message:
  -----------
  tests: machine-none-test: Enable MicroBlaze testing

Enable MicroBlaze testing.

Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Message-Id: <20200416193303.23674-2-edgar.iglesias@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2356ff8500f3aec43070fcfa61a624ec36a8c6b4
      
https://github.com/qemu/qemu/commit/2356ff8500f3aec43070fcfa61a624ec36a8c6b4
  Author: Wei Huang <wei.huang2@amd.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hw/i386/amd_iommu.c

  Log Message:
  -----------
  hw/i386/amd_iommu: Fix the reserved bits definition of IOMMU commands

Many reserved bits of amd_iommu commands are defined incorrectly in QEMU.
Because of it, QEMU incorrectly injects lots of illegal commands into guest
VM's IOMMU event log.

Signed-off-by: Wei Huang <wei.huang2@amd.com>
Message-Id: <20200418042845.596457-1-wei.huang2@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ddf63df736257f9151d5e0fc3c6fddcb97f29cab
      
https://github.com/qemu/qemu/commit/ddf63df736257f9151d5e0fc3c6fddcb97f29cab
  Author: Pavel Dovgalyuk <Pavel.Dovgaluk@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M replay/replay-internal.c

  Log Message:
  -----------
  replay: implement fair mutex

In record/replay icount mode main loop thread and vCPU thread
do not perform simultaneously. They take replay mutex to synchronize
the actions. Sometimes vCPU thread waits for locking the mutex for
very long time, because main loop releases the mutex and takes it
back again. Standard qemu mutex do not provide the ordering
capabilities.

This patch adds a "queue" for replay mutex. Therefore thread ordering
becomes more "fair". Threads are executed in the same order as
they are trying to take the mutex.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgaluk@ispras.ru>
Message-Id: <158823802979.28101.9340462887738957616.stgit@pasha-ThinkPad-X280>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 20c8fa2ec74fe32a42008c177ed9c48031356705
      
https://github.com/qemu/qemu/commit/20c8fa2ec74fe32a42008c177ed9c48031356705
  Author: Julio Faracco <jcfaracco@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/hax-i386.h
    M target/i386/hvf/hvf-i386.h

  Log Message:
  -----------
  i386: Remove unused define's from hax and hvf

Commit acb9f95a removed boundary checks for ID and VCPU ID. After that,
the max definitions of that boundaries are not required anymore. This
commit is only a code cleanup.

Signed-off-by: Julio Faracco <jcfaracco@gmail.com>
Message-Id: <20200323200538.202164-1-jcfaracco@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ea39f9b643959d759b8643b4c11c4cbb3683d0ff
      
https://github.com/qemu/qemu/commit/ea39f9b643959d759b8643b4c11c4cbb3683d0ff
  Author: Like Xu <like.xu@linux.intel.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

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

  Log Message:
  -----------
  target/i386: define a new MSR based feature word - FEAT_PERF_CAPABILITIES

The Perfmon and Debug Capability MSR named IA32_PERF_CAPABILITIES is
a feature-enumerating MSR, which only enumerates the feature full-width
write (via bit 13) by now which indicates the processor supports IA32_A_PMCx
interface for updating bits 32 and above of IA32_PMCx.

The existence of MSR IA32_PERF_CAPABILITIES is enumerated by CPUID.1:ECX[15].

Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Cc: qemu-devel@nongnu.org
Signed-off-by: Like Xu <like.xu@linux.intel.com>
Message-Id: <20200529074347.124619-5-like.xu@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 9548a891738424a09eae9ef6e3826ef930cdd598
      
https://github.com/qemu/qemu/commit/9548a891738424a09eae9ef6e3826ef930cdd598
  Author: David Carlier <devnexen@gmail.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M util/oslib-posix.c

  Log Message:
  -----------
  util/oslib: Returns the real thread identifier on FreeBSD and NetBSD

getpid is good enough in a mono thread context, however thr_self/_lwp_self
reflects the real current thread identifier from a given process.

Signed-off-by: David Carlier <devnexen@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Signed-off-by: David Carlier <devnexen@gmail.com>


  Commit: 2261d3939fd40267029e790a9970f0e6c2ecfdea
      
https://github.com/qemu/qemu/commit/2261d3939fd40267029e790a9970f0e6c2ecfdea
  Author: Philippe Mathieu-Daudé <philmd@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M hmp-commands-info.hx
    M include/exec/memory.h
    M memory.c
    M monitor/misc.c

  Log Message:
  -----------
  memory: Make 'info mtree' not display disabled regions by default

We might have many disabled memory regions, making the 'info mtree'
output too verbose to be useful.
Remove the disabled regions in the default output, but allow the
monitor user to display them using the '-D' option.

Before:

  (qemu) info mtree
  memory-region: system
    0000000000000000-ffffffffffffffff (prio 0, i/o): system
      0000000000000000-0000000007ffffff (prio 0, ram): alias ram-below-4g 
@pc.ram 0000000000000000-0000000007ffffff
      0000000000000000-ffffffffffffffff (prio -1, i/o): pci
        00000000000a0000-00000000000bffff (prio 1, i/o): vga-lowmem
        00000000000c0000-00000000000dffff (prio 1, rom): pc.rom
        00000000000e0000-00000000000fffff (prio 1, rom): alias isa-bios 
@pc.bios 0000000000020000-000000000003ffff
        00000000fffc0000-00000000ffffffff (prio 0, rom): pc.bios
      00000000000a0000-00000000000bffff (prio 1, i/o): alias smram-region @pci 
00000000000a0000-00000000000bffff
      00000000000c0000-00000000000c3fff (prio 1, ram): alias pam-ram @pc.ram 
00000000000c0000-00000000000c3fff [disabled]
      00000000000c0000-00000000000c3fff (prio 1, ram): alias pam-pci @pc.ram 
00000000000c0000-00000000000c3fff [disabled]
      00000000000c0000-00000000000c3fff (prio 1, ram): alias pam-rom @pc.ram 
00000000000c0000-00000000000c3fff [disabled]
      00000000000c0000-00000000000c3fff (prio 1, i/o): alias pam-pci @pci 
00000000000c0000-00000000000c3fff
      00000000000c4000-00000000000c7fff (prio 1, ram): alias pam-ram @pc.ram 
00000000000c4000-00000000000c7fff [disabled]
      00000000000c4000-00000000000c7fff (prio 1, ram): alias pam-pci @pc.ram 
00000000000c4000-00000000000c7fff [disabled]
      00000000000c4000-00000000000c7fff (prio 1, ram): alias pam-rom @pc.ram 
00000000000c4000-00000000000c7fff [disabled]
      00000000000c4000-00000000000c7fff (prio 1, i/o): alias pam-pci @pci 
00000000000c4000-00000000000c7fff
      00000000000c8000-00000000000cbfff (prio 1, ram): alias pam-ram @pc.ram 
00000000000c8000-00000000000cbfff [disabled]
      00000000000c8000-00000000000cbfff (prio 1, ram): alias pam-pci @pc.ram 
00000000000c8000-00000000000cbfff [disabled]
      00000000000c8000-00000000000cbfff (prio 1, ram): alias pam-rom @pc.ram 
00000000000c8000-00000000000cbfff [disabled]
      00000000000c8000-00000000000cbfff (prio 1, i/o): alias pam-pci @pci 
00000000000c8000-00000000000cbfff
      00000000000cc000-00000000000cffff (prio 1, ram): alias pam-ram @pc.ram 
00000000000cc000-00000000000cffff [disabled]
      00000000000cc000-00000000000cffff (prio 1, ram): alias pam-pci @pc.ram 
00000000000cc000-00000000000cffff [disabled]
      00000000000cc000-00000000000cffff (prio 1, ram): alias pam-rom @pc.ram 
00000000000cc000-00000000000cffff [disabled]
      00000000000cc000-00000000000cffff (prio 1, i/o): alias pam-pci @pci 
00000000000cc000-00000000000cffff
      00000000000d0000-00000000000d3fff (prio 1, ram): alias pam-ram @pc.ram 
00000000000d0000-00000000000d3fff [disabled]
      00000000000d0000-00000000000d3fff (prio 1, ram): alias pam-pci @pc.ram 
00000000000d0000-00000000000d3fff [disabled]
      00000000000d0000-00000000000d3fff (prio 1, ram): alias pam-rom @pc.ram 
00000000000d0000-00000000000d3fff [disabled]
      00000000000d0000-00000000000d3fff (prio 1, i/o): alias pam-pci @pci 
00000000000d0000-00000000000d3fff
      00000000000d4000-00000000000d7fff (prio 1, ram): alias pam-ram @pc.ram 
00000000000d4000-00000000000d7fff [disabled]
      00000000000d4000-00000000000d7fff (prio 1, ram): alias pam-pci @pc.ram 
00000000000d4000-00000000000d7fff [disabled]
      00000000000d4000-00000000000d7fff (prio 1, ram): alias pam-rom @pc.ram 
00000000000d4000-00000000000d7fff [disabled]
      00000000000d4000-00000000000d7fff (prio 1, i/o): alias pam-pci @pci 
00000000000d4000-00000000000d7fff
      00000000000d8000-00000000000dbfff (prio 1, ram): alias pam-ram @pc.ram 
00000000000d8000-00000000000dbfff [disabled]
      00000000000d8000-00000000000dbfff (prio 1, ram): alias pam-pci @pc.ram 
00000000000d8000-00000000000dbfff [disabled]
      00000000000d8000-00000000000dbfff (prio 1, ram): alias pam-rom @pc.ram 
00000000000d8000-00000000000dbfff [disabled]
      00000000000d8000-00000000000dbfff (prio 1, i/o): alias pam-pci @pci 
00000000000d8000-00000000000dbfff
      00000000000dc000-00000000000dffff (prio 1, ram): alias pam-ram @pc.ram 
00000000000dc000-00000000000dffff [disabled]
      00000000000dc000-00000000000dffff (prio 1, ram): alias pam-pci @pc.ram 
00000000000dc000-00000000000dffff [disabled]
      00000000000dc000-00000000000dffff (prio 1, ram): alias pam-rom @pc.ram 
00000000000dc000-00000000000dffff [disabled]
      00000000000dc000-00000000000dffff (prio 1, i/o): alias pam-pci @pci 
00000000000dc000-00000000000dffff
      00000000000e0000-00000000000e3fff (prio 1, ram): alias pam-ram @pc.ram 
00000000000e0000-00000000000e3fff [disabled]
      00000000000e0000-00000000000e3fff (prio 1, ram): alias pam-pci @pc.ram 
00000000000e0000-00000000000e3fff [disabled]
      00000000000e0000-00000000000e3fff (prio 1, ram): alias pam-rom @pc.ram 
00000000000e0000-00000000000e3fff [disabled]
      00000000000e0000-00000000000e3fff (prio 1, i/o): alias pam-pci @pci 
00000000000e0000-00000000000e3fff
      00000000000e4000-00000000000e7fff (prio 1, ram): alias pam-ram @pc.ram 
00000000000e4000-00000000000e7fff [disabled]
      00000000000e4000-00000000000e7fff (prio 1, ram): alias pam-pci @pc.ram 
00000000000e4000-00000000000e7fff [disabled]
      00000000000e4000-00000000000e7fff (prio 1, ram): alias pam-rom @pc.ram 
00000000000e4000-00000000000e7fff [disabled]
      00000000000e4000-00000000000e7fff (prio 1, i/o): alias pam-pci @pci 
00000000000e4000-00000000000e7fff
      00000000000e8000-00000000000ebfff (prio 1, ram): alias pam-ram @pc.ram 
00000000000e8000-00000000000ebfff [disabled]
      00000000000e8000-00000000000ebfff (prio 1, ram): alias pam-pci @pc.ram 
00000000000e8000-00000000000ebfff [disabled]
      00000000000e8000-00000000000ebfff (prio 1, ram): alias pam-rom @pc.ram 
00000000000e8000-00000000000ebfff [disabled]
      00000000000e8000-00000000000ebfff (prio 1, i/o): alias pam-pci @pci 
00000000000e8000-00000000000ebfff
      00000000000ec000-00000000000effff (prio 1, ram): alias pam-ram @pc.ram 
00000000000ec000-00000000000effff [disabled]
      00000000000ec000-00000000000effff (prio 1, ram): alias pam-pci @pc.ram 
00000000000ec000-00000000000effff [disabled]
      00000000000ec000-00000000000effff (prio 1, ram): alias pam-rom @pc.ram 
00000000000ec000-00000000000effff [disabled]
      00000000000ec000-00000000000effff (prio 1, i/o): alias pam-pci @pci 
00000000000ec000-00000000000effff
      00000000000f0000-00000000000fffff (prio 1, ram): alias pam-ram @pc.ram 
00000000000f0000-00000000000fffff [disabled]
      00000000000f0000-00000000000fffff (prio 1, ram): alias pam-pci @pc.ram 
00000000000f0000-00000000000fffff [disabled]
      00000000000f0000-00000000000fffff (prio 1, ram): alias pam-rom @pc.ram 
00000000000f0000-00000000000fffff [disabled]
      00000000000f0000-00000000000fffff (prio 1, i/o): alias pam-pci @pci 
00000000000f0000-00000000000fffff
      00000000fec00000-00000000fec00fff (prio 0, i/o): ioapic
      00000000fed00000-00000000fed003ff (prio 0, i/o): hpet
      00000000fee00000-00000000feefffff (prio 4096, i/o): apic-msi

After:

  (qemu) info mtree
  memory-region: system
    0000000000000000-ffffffffffffffff (prio 0, i/o): system
      0000000000000000-0000000007ffffff (prio 0, ram): alias ram-below-4g 
@pc.ram 0000000000000000-0000000007ffffff
      0000000000000000-ffffffffffffffff (prio -1, i/o): pci
        00000000000a0000-00000000000bffff (prio 1, i/o): vga-lowmem
        00000000000c0000-00000000000dffff (prio 1, rom): pc.rom
        00000000000e0000-00000000000fffff (prio 1, rom): alias isa-bios 
@pc.bios 0000000000020000-000000000003ffff
        00000000fffc0000-00000000ffffffff (prio 0, rom): pc.bios
      00000000000a0000-00000000000bffff (prio 1, i/o): alias smram-region @pci 
00000000000a0000-00000000000bffff
      00000000000c0000-00000000000c3fff (prio 1, i/o): alias pam-pci @pci 
00000000000c0000-00000000000c3fff
      00000000000c4000-00000000000c7fff (prio 1, i/o): alias pam-pci @pci 
00000000000c4000-00000000000c7fff
      00000000000c8000-00000000000cbfff (prio 1, i/o): alias pam-pci @pci 
00000000000c8000-00000000000cbfff
      00000000000cc000-00000000000cffff (prio 1, i/o): alias pam-pci @pci 
00000000000cc000-00000000000cffff
      00000000000d0000-00000000000d3fff (prio 1, i/o): alias pam-pci @pci 
00000000000d0000-00000000000d3fff
      00000000000d4000-00000000000d7fff (prio 1, i/o): alias pam-pci @pci 
00000000000d4000-00000000000d7fff
      00000000000d8000-00000000000dbfff (prio 1, i/o): alias pam-pci @pci 
00000000000d8000-00000000000dbfff
      00000000000dc000-00000000000dffff (prio 1, i/o): alias pam-pci @pci 
00000000000dc000-00000000000dffff
      00000000000e0000-00000000000e3fff (prio 1, i/o): alias pam-pci @pci 
00000000000e0000-00000000000e3fff
      00000000000e4000-00000000000e7fff (prio 1, i/o): alias pam-pci @pci 
00000000000e4000-00000000000e7fff
      00000000000e8000-00000000000ebfff (prio 1, i/o): alias pam-pci @pci 
00000000000e8000-00000000000ebfff
      00000000000ec000-00000000000effff (prio 1, i/o): alias pam-pci @pci 
00000000000ec000-00000000000effff
      00000000000f0000-00000000000fffff (prio 1, i/o): alias pam-pci @pci 
00000000000f0000-00000000000fffff
      00000000fec00000-00000000fec00fff (prio 0, i/o): ioapic
      00000000fed00000-00000000fed003ff (prio 0, i/o): hpet
      00000000fee00000-00000000feefffff (prio 4096, i/o): apic-msi

The old behavior is preserved using 'info mtree -D'.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c08790f48b2f41ef26d491fd4d460b74c06cefe4
      
https://github.com/qemu/qemu/commit/c08790f48b2f41ef26d491fd4d460b74c06cefe4
  Author: Philippe Mathieu-Daudé <philmd@redhat.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M include/qemu/thread.h

  Log Message:
  -----------
  qemu/thread: Mark qemu_thread_exit() with 'noreturn' attribute

After upgrading to Ubuntu 20.04 LTS, GCC 9.3 complains:

  util/qemu-thread-posix.c: In function ‘qemu_thread_exit’:
  util/qemu-thread-posix.c:577:6: error: function might be candidate for 
attribute ‘noreturn’ [-Werror=suggest-attribute=noreturn]
    577 | void qemu_thread_exit(void *retval)
        |      ^~~~~~~~~~~~~~~~

Fix by marking the qemu_thread_exit function with QEMU_NORETURN
to set the 'noreturn' attribute.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: f2dfe54c74f768a5bf78c9e5918918727f9d9459
      
https://github.com/qemu/qemu/commit/f2dfe54c74f768a5bf78c9e5918918727f9d9459
  Author: Leonid Bloch <lbloch@janustech.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: Do not ignore malloc value

Not checking the value of malloc will cause a warning with GCC 10.1,
which may result in configuration failure, with the following line in
config.log:

config-temp/qemu-conf.c:2:18: error: ignoring return value of ‘malloc’ 
declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
    2 | int main(void) { malloc(1); return 0; }
      |                  ^~~~~~~~~

Signed-off-by: Leonid Bloch <lb.workbox@gmail.com>
Message-Id: <20200524221204.9791-1-lb.workbox@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 77f55eac6c433e23e82a1b88b2d74f385c4c7d82
      
https://github.com/qemu/qemu/commit/77f55eac6c433e23e82a1b88b2d74f385c4c7d82
  Author: Prasad J Pandit <pjp@fedoraproject.org>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

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

  Log Message:
  -----------
  exec: set map length to zero when returning NULL

When mapping physical memory into host's virtual address space,
'address_space_map' may return NULL if BounceBuffer is in_use.
Set and return '*plen = 0' to avoid later NULL pointer dereference.

Reported-by: Alexander Bulekov <alxndr@bu.edu>
Fixes: https://bugs.launchpad.net/qemu/+bug/1878259
Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Message-Id: <20200526111743.428367-1-ppandit@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 975af797f1e04e4d1b1a12f1731141d3770fdbce
      
https://github.com/qemu/qemu/commit/975af797f1e04e4d1b1a12f1731141d3770fdbce
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M target/i386/fpu_helper.c
    A tests/tcg/i386/test-i386-fp-exceptions.c

  Log Message:
  -----------
  target/i386: fix IEEE x87 floating-point exception raising

Most x87 instruction implementations fail to raise the expected IEEE
floating-point exceptions because they do nothing to convert the
exception state from the softfloat machinery into the exception flags
in the x87 status word.  There is special-case handling of division to
raise the divide-by-zero exception, but that handling is itself buggy:
it raises the exception in inappropriate cases (inf / 0 and nan / 0,
which should not raise any exceptions, and 0 / 0, which should raise
"invalid" instead).

Fix this by converting the floating-point exceptions raised during an
operation by the softfloat machinery into exceptions in the x87 status
word (passing through the existing fpu_set_exception function for
handling related to trapping exceptions).  There are special cases
where some functions convert to integer internally but exceptions from
that conversion are not always correct exceptions for the instruction
to raise.

There might be scope for some simplification if the softfloat
exception state either could always be assumed to be in sync with the
state in the status word, or could always be ignored at the start of
each instruction and just set to 0 then; I haven't looked into that in
detail, and it might run into interactions with the various ways the
emulation does not yet handle trapping exceptions properly.  I think
the approach taken here, of saving the softfloat state, setting
exceptions there to 0 and then merging the old exceptions back in
after carrying out the operation, is conservatively safe.

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2005152120280.3469@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: bc921b2711c4e2e8ab99a3045f6c0f134a93b535
      
https://github.com/qemu/qemu/commit/bc921b2711c4e2e8ab99a3045f6c0f134a93b535
  Author: Joseph Myers <joseph@codesourcery.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/ops_sse.h
    M tests/tcg/i386/Makefile.target
    A tests/tcg/i386/test-i386-pcmpistri.c

  Log Message:
  -----------
  target/i386: correct fix for pcmpxstrx substring search

This corrects a bug introduced in my previous fix for SSE4.2 pcmpestri
/ pcmpestrm / pcmpistri / pcmpistrm substring search, commit
ae35eea7e4a9f21dd147406dfbcd0c4c6aaf2a60.

That commit fixed a bug that showed up in four GCC tests with one libc
implementation.  The tests in question generate random inputs to the
intrinsics and compare results to a C implementation, but they only
test 1024 possible random inputs, and when the tests use the cases of
those instructions that work with word rather than byte inputs, it's
easy to have problematic cases that show up much less frequently than
that.  Thus, testing with a different libc implementation, and so a
different random number generator, showed up a problem with the
previous patch.

When investigating the previous test failures, I found the description
of these instructions in the Intel manuals (starting from computing a
16x16 or 8x8 set of comparison results) confusing and hard to match up
with the more optimized implementation in QEMU, and referred to AMD
manuals which described the instructions in a different way.  Those
AMD descriptions are very explicit that the whole of the string being
searched for must be found in the other operand, not running off the
end of that operand; they say "If the prototype and the SUT are equal
in length, the two strings must be identical for the comparison to be
TRUE.".  However, that statement is incorrect.

In my previous commit message, I noted:

  The operation in this case is a search for a string (argument d to
  the helper) in another string (argument s to the helper); if a copy
  of d at a particular position would run off the end of s, the
  resulting output bit should be 0 whether or not the strings match in
  the region where they overlap, but the QEMU implementation was
  wrongly comparing only up to the point where s ends and counting it
  as a match if an initial segment of d matched a terminal segment of
  s.  Here, "run off the end of s" means that some byte of d would
  overlap some byte outside of s; thus, if d has zero length, it is
  considered to match everywhere, including after the end of s.

The description "some byte of d would overlap some byte outside of s"
is accurate only when understood to refer to overlapping some byte
*within the 16-byte operand* but at or after the zero terminator; it
is valid to run over the end of s if the end of s is the end of the
16-byte operand.  So the fix in the previous patch for the case of d
being empty was correct, but the other part of that patch was not
correct (as it never allowed partial matches even at the end of the
16-byte operand).  Nor was the code before the previous patch correct
for the case of d nonempty, as it would always have allowed partial
matches at the end of s.

Fix with a partial revert of my previous change, combined with
inserting a check for the special case of s having maximum length to
determine where it is necessary to check for matches.

In the added test, test 1 is for the case of empty strings, which
failed before my 2017 patch, test 2 is for the bug introduced by my
2017 patch and test 3 deals with the case where a match of an initial
segment at the end of the string is not valid when the string ends
before the end of the 16-byte operand (that is, the case that would be
broken by a simple revert of the non-empty-string part of my 2017
patch).

Signed-off-by: Joseph Myers <joseph@codesourcery.com>
Message-Id: <alpine.DEB.2.21.2006121344290.9881@digraph.polyomino.org.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 33fb9bfaa4bef35b53affaf17368b439834de5f9
      
https://github.com/qemu/qemu/commit/33fb9bfaa4bef35b53affaf17368b439834de5f9
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/sysemu/accel.h

  Log Message:
  -----------
  sysemu/accel: Restrict machine methods to system-mode

Restrict init_machine(), setup_post() and has_memory()
to system-mode.

Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200526172427.17460-2-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ce4049e89344cc019fff75ab0ecc645af27400ca
      
https://github.com/qemu/qemu/commit/ce4049e89344cc019fff75ab0ecc645af27400ca
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/sysemu/tcg.h

  Log Message:
  -----------
  sysemu/tcg: Only declare tcg_allowed when TCG is available

When TCG is not available, the tcg_allowed variable does not exist.

Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20200526172427.17460-3-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: f291cf54148e5b9e51c55b9056e4be546492a9ca
      
https://github.com/qemu/qemu/commit/f291cf54148e5b9e51c55b9056e4be546492a9ca
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/sysemu/hvf.h

  Log Message:
  -----------
  sysemu/hvf: Only declare hvf_allowed when HVF is available

When HVF is not available, the hvf_allowed variable does not exist.

Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200526172427.17460-4-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: e89aac1acdc62c09313c20ea1706554d9c3b9162
      
https://github.com/qemu/qemu/commit/e89aac1acdc62c09313c20ea1706554d9c3b9162
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/ppc/cpu.h
    M target/ppc/kvm_ppc.h
    M target/ppc/translate_init.inc.c

  Log Message:
  -----------
  target/ppc: Restrict PPCVirtualHypervisorClass to system-mode

The code related to PPC Virtual Hypervisor is pointless in user-mode.

Acked-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20200526172427.17460-5-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 24115348bd8a8a1206646b81990e451ee841c8e5
      
https://github.com/qemu/qemu/commit/24115348bd8a8a1206646b81990e451ee841c8e5
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/sysemu/hvf.h
    M target/i386/hvf/hvf-i386.h

  Log Message:
  -----------
  i386: hvf: Move HVFState definition into hvf

"sysemu/hvf.h" is intended for inclusion in generic code. However it
also contains several hvf definitions and declarations, including
HVFState that are used only inside "hvf.c". "hvf-i386.h" would be more
appropriate place to define HVFState as it's only included by "hvf.c"
and "x86_task.c".

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-2-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 583ae161b1d7ba8832260d1cca022afce7dcf957
      
https://github.com/qemu/qemu/commit/583ae161b1d7ba8832260d1cca022afce7dcf957
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/sysemu/hvf.h
    M target/i386/hvf/hvf.c

  Log Message:
  -----------
  i386: hvf: Drop useless declarations in sysemu

They're either declared elsewhere or have no use.

While at it, rename _hvf_cpu_synchronize_post_init() to
do_hvf_cpu_synchronize_post_init().

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-3-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>


  Commit: 8598135dd6df2b2ad2ce10f68d9eae3e9e26da6d
      
https://github.com/qemu/qemu/commit/8598135dd6df2b2ad2ce10f68d9eae3e9e26da6d
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/sysemu/hvf.h

  Log Message:
  -----------
  i386: hvf: Clean stray includes in sysemu

They have no use.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Claudio Fontana <cfontana@suse.de>
Message-Id: <20200528193758.51454-4-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 6345d7e2aeb6f7bbaa9c1e7e94e21fccf9453c70
      
https://github.com/qemu/qemu/commit/6345d7e2aeb6f7bbaa9c1e7e94e21fccf9453c70
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/hvf/x86.h

  Log Message:
  -----------
  i386: hvf: Drop unused variable

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-5-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>


  Commit: 81ae3d0216587bf868486244f038072e07ee4e9d
      
https://github.com/qemu/qemu/commit/81ae3d0216587bf868486244f038072e07ee4e9d
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/hvf/hvf.c

  Log Message:
  -----------
  i386: hvf: Use ins_len to advance IP

There's no need to read VMCS twice, instruction length is already
available in ins_len.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-6-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>


  Commit: 5d32173fc30e5b08e196f7ffd993ddc8335a203e
      
https://github.com/qemu/qemu/commit/5d32173fc30e5b08e196f7ffd993ddc8335a203e
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_decode.c
    M target/i386/hvf/x86_emu.c
    M target/i386/hvf/x86_task.c

  Log Message:
  -----------
  i386: hvf: Use IP from CPUX86State

Drop and replace rip field from HVFX86EmulatorState in favor of eip from
common CPUX86State.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-7-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>


  Commit: 2d5f696cb7b7a024f2a1bd4a8c6aed7a1d5532b4
      
https://github.com/qemu/qemu/commit/2d5f696cb7b7a024f2a1bd4a8c6aed7a1d5532b4
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_decode.c

  Log Message:
  -----------
  i386: hvf: Drop fetch_rip from HVFX86EmulatorState

The field is used to print address of instructions that have no parser
in decode_invalid(). RIP from VMCS is saved into fetch_rip before
decoding starts but it's also saved into env->eip in load_regs().
Therefore env->eip can be used instead of fetch_rip.

While at it, correct address printed in decode_invalid(). It prints an
address before the unknown instruction.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-8-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 967f4da2afb2ece8b2b054bc8af23389e028fdcc
      
https://github.com/qemu/qemu/commit/967f4da2afb2ece8b2b054bc8af23389e028fdcc
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86.c
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_emu.c
    M target/i386/hvf/x86_flags.c
    M target/i386/hvf/x86_task.c
    M target/i386/hvf/x86hvf.c

  Log Message:
  -----------
  i386: hvf: Drop rflags from HVFX86EmulatorState

HVFX86EmulatorState carries it's own copy of x86 flags. It can be
dropped in favor of eflags in generic CPUX86State.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-9-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ea48ae91210eae3cb7d3576d2dc8152529d5f962
      
https://github.com/qemu/qemu/commit/ea48ae91210eae3cb7d3576d2dc8152529d5f962
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/hvf/x86.c
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_decode.c
    M target/i386/hvf/x86_task.c

  Log Message:
  -----------
  i386: hvf: Drop copy of RFLAGS defines

Use the ones provided in target/i386/cpu.h instead.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-10-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 167c6aef67dcf4f2d1c417db057ad95f84030180
      
https://github.com/qemu/qemu/commit/167c6aef67dcf4f2d1c417db057ad95f84030180
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_emu.c

  Log Message:
  -----------
  i386: hvf: Drop regs in HVFX86EmulatorState

HVFX86EmulatorState carries it's own copy of x86 registers. It can be
dropped in favor of regs in generic CPUX86State.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-11-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 577f02b89049c4a466973ae2785c6928e00798c8
      
https://github.com/qemu/qemu/commit/577f02b89049c4a466973ae2785c6928e00798c8
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/cpu.h
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_flags.c

  Log Message:
  -----------
  i386: hvf: Move lazy_flags into CPUX86State

The lazy flags are still needed for instruction decoder.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-12-r.bolshakov@yadro.com>
[Move struct to target/i386/cpu.h - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: fe76b09c5b600310639af7ec614fb1303c773e5f
      
https://github.com/qemu/qemu/commit/fe76b09c5b600310639af7ec614fb1303c773e5f
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/cpu.h
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_emu.c

  Log Message:
  -----------
  i386: hvf: Move mmio_buf into CPUX86State

There's no similar field in CPUX86State, but it's needed for MMIO traps.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-13-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: e77cb0bb204c18c04a8290e03181510bbbfc683a
      
https://github.com/qemu/qemu/commit/e77cb0bb204c18c04a8290e03181510bbbfc683a
  Author: Roman Bolshakov <r.bolshakov@yadro.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/qemu/typedefs.h
    M target/i386/cpu.h
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86.h

  Log Message:
  -----------
  i386: hvf: Drop HVFX86EmulatorState

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Message-Id: <20200528193758.51454-14-r.bolshakov@yadro.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: acd0c9416d4846afc541605ee0e75ca163773e6c
      
https://github.com/qemu/qemu/commit/acd0c9416d4846afc541605ee0e75ca163773e6c
  Author: Anthony PERARD <anthony.perard@citrix.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M accel/xen/xen-all.c
    M hw/Makefile.objs
    M hw/i386/pc_piix.c
    M hw/xen/Makefile.objs
    M hw/xen/xen_pt.c
    M hw/xen/xen_pt.h
    A hw/xen/xen_pt_stub.c

  Log Message:
  -----------
  xen: fix build without pci passthrough

Xen PCI passthrough support may not be available and thus the global
variable "has_igd_gfx_passthru" might be compiled out. Common code
should not access it in that case.

Unfortunately, we can't use CONFIG_XEN_PCI_PASSTHROUGH directly in
xen-common.c so this patch instead move access to the
has_igd_gfx_passthru variable via function and those functions are
also implemented as stubs. The stubs will be used when QEMU is built
without passthrough support.

Now, when one will want to enable igd-passthru via the -machine
property, they will get an error message if QEMU is built without
passthrough support.

Fixes: 46472d82322d0 ('xen: convert "-machine igd-passthru" to an accelerator 
property')
Reported-by: Roger Pau Monné <roger.pau@citrix.com>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Message-Id: <20200603160442.3151170-1-anthony.perard@citrix.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b5b9b1ad4648b625cee25ef5c4cac2a7588d9c04
      
https://github.com/qemu/qemu/commit/b5b9b1ad4648b625cee25ef5c4cac2a7588d9c04
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c
    M target/i386/sev_i386.h

  Log Message:
  -----------
  target/i386: sev: Remove unused QSevGuestInfoClass

This structure is nothing but an empty wrapper around the parent class,
which by QOM conventions means we don't need it at all.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200604064219.436242-2-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a86ab19d4a955ab5c7e9df56801c9c580a009148
      
https://github.com/qemu/qemu/commit/a86ab19d4a955ab5c7e9df56801c9c580a009148
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c
    M target/i386/sev_i386.h

  Log Message:
  -----------
  target/i386: sev: Move local structure definitions into .c file

Neither QSevGuestInfo nor SEVState (not to be confused with SevState) is
used anywhere outside target/i386/sev.c, so they might as well live in
there rather than in a (somewhat) exposed header.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200604064219.436242-3-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: d2d8a1984d7954f10f878dd8b9f6f01069c20d33
      
https://github.com/qemu/qemu/commit/d2d8a1984d7954f10f878dd8b9f6f01069c20d33
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: Rename QSevGuestInfo

At the moment this is a purely passive object which is just a container for
information used elsewhere, hence the name.  I'm going to change that
though, so as a preliminary rename it to SevGuestState.

That name risks confusion with both SEVState and SevState, but I'll be
working on that in following patches.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200604064219.436242-4-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 75a877e3b14a8575fd6bc99d193f7fcc03eee94b
      
https://github.com/qemu/qemu/commit/75a877e3b14a8575fd6bc99d193f7fcc03eee94b
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: Embed SEVState in SevGuestState

Currently SevGuestState contains only configuration information.  For
runtime state another non-QOM struct SEVState is allocated separately.

Simplify things by instead embedding the SEVState structure in
SevGuestState.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200604064219.436242-5-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 8673dee354271a4f30f68059bfbbbea3d21e1a73
      
https://github.com/qemu/qemu/commit/8673dee354271a4f30f68059bfbbbea3d21e1a73
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: Partial cleanup to sev_state global

The SEV code uses a pretty ugly global to access its internal state.  Now
that SEVState is embedded in SevGuestState, we can avoid accessing it via
the global in some cases.  In the remaining cases use a new global
referencing the containing SevGuestState which will simplify some future
transformations.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200604064219.436242-6-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a06d2bad053f5f95871c0b429acc2c64c74a92b3
      
https://github.com/qemu/qemu/commit/a06d2bad053f5f95871c0b429acc2c64c74a92b3
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: Remove redundant cbitpos and reduced_phys_bits fields

The SEVState structure has cbitpos and reduced_phys_bits fields which are
simply copied from the SevGuestState structure and never changed.  Now that
SEVState is embedded in SevGuestState we can just access the original copy
directly.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200604064219.436242-7-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 0bd1527774fc17985f47df41b95f31b00b162129
      
https://github.com/qemu/qemu/commit/0bd1527774fc17985f47df41b95f31b00b162129
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: Remove redundant policy field

SEVState::policy is set from the final value of the policy field in the
parameter structure for the KVM_SEV_LAUNCH_START ioctl().  But, AFAICT
that ioctl() won't ever change it from the original supplied value which
comes from SevGuestState::policy.

So, remove this field and just use SevGuestState::policy directly.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200604064219.436242-8-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: cf504cd67b26ded2e25eb8f33b5ebec031b31def
      
https://github.com/qemu/qemu/commit/cf504cd67b26ded2e25eb8f33b5ebec031b31def
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: Remove redundant handle field

The user can explicitly specify a handle via the "handle" property wired
to SevGuestState::handle.  That gets passed to the KVM_SEV_LAUNCH_START
ioctl() which may update it, the final value being copied back to both
SevGuestState::handle and SEVState::handle.

AFAICT, nothing will be looking SEVState::handle before it and
SevGuestState::handle have been updated from the ioctl().  So, remove the
field and just use SevGuestState::handle directly.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200604064219.436242-9-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 421522eb534d82040bc8e405ed3a28d94d17f24e
      
https://github.com/qemu/qemu/commit/421522eb534d82040bc8e405ed3a28d94d17f24e
  Author: David Gibson <david@gibson.dropbear.id.au>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: Unify SEVState and SevGuestState

SEVState is contained with SevGuestState.  We've now fixed redundancies
and name conflicts, so there's no real point to the nested structure.  Just
move all the fields of SEVState into SevGuestState.

This eliminates the SEVState structure, which as a bonus removes the
confusion with the SevState enum.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200604064219.436242-10-david@gibson.dropbear.id.au>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2046811c66afd54358355242fa23b987b7445440
      
https://github.com/qemu/qemu/commit/2046811c66afd54358355242fa23b987b7445440
  Author: Michael S. Tsirkin <mst@redhat.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M scripts/checkpatch.pl

  Log Message:
  -----------
  checkpatch: reversed logic with acpi test checks

Logic reversed: allowed list should just be ignored. Instead we
only take that into account :(

Fixes: e11b06a880ca ("checkpatch: ignore allowed diff list")
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Message-Id: <20200602053614.54745-1-mst@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Tested-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: e1bc61989264a37aeffefa1fb3cf100db259b35b
      
https://github.com/qemu/qemu/commit/e1bc61989264a37aeffefa1fb3cf100db259b35b
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M include/exec/memory.h

  Log Message:
  -----------
  exec/memory: Remove unused MemoryRegionMmio type

Since commit 62a0db942dec ('memory: Remove old_mmio accessors')
this structure is unused. Remove it.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200601141536.15192-2-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2c89d91195c4c7a118d2ae3518c31ca77a0583cd
      
https://github.com/qemu/qemu/commit/2c89d91195c4c7a118d2ae3518c31ca77a0583cd
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M hw/usb/hcd-musb.c
    M hw/usb/tusb6010.c
    M include/hw/usb.h
    A include/hw/usb/hcd-musb.h

  Log Message:
  -----------
  hw/usb: Move device-specific declarations to new 'hcd-musb.h' header

Move the declarations for the MUSB-HDRC USB2.0 OTG compliant core
into a separate header.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200601141536.15192-3-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: efb22b2f98975785aa594e5a198d4c2e13a5d2d0
      
https://github.com/qemu/qemu/commit/efb22b2f98975785aa594e5a198d4c2e13a5d2d0
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M hw/usb/hcd-musb.c
    M include/exec/cpu-common.h
    M include/hw/usb/hcd-musb.h

  Log Message:
  -----------
  exec/cpu-common: Move MUSB specific typedefs to 'hw/usb/hcd-musb.h'

The CPUReadMemoryFunc/CPUWriteMemoryFunc typedefs are legacy
remnant from before the conversion to MemoryRegions.
Since they are now only used in tusb6010.c and hcd-musb.c,
move them to "hw/usb/musb.h" and rename them appropriately.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200601141536.15192-4-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: ed5d7ff34a8cfafd8efe2aab4eeaf9bf789870e3
      
https://github.com/qemu/qemu/commit/ed5d7ff34a8cfafd8efe2aab4eeaf9bf789870e3
  Author: Pavel Dovgalyuk <Pavel.Dovgaluk@gmail.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M replay/replay.c

  Log Message:
  -----------
  replay: fix replay shutdown for console mode

When QEMU is used without any graphical window,
QEMU execution is terminated with the signal (e.g., Ctrl-C).
Signal processing in QEMU does not include
qemu_system_shutdown_request call. That is why shutdown
event is not recorded by record/replay in this case.
This patch adds shutdown event to the end of the record log.
Now every replay will shutdown the machine at the end.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgaluk@ispras.ru>
Message-Id: <159012995470.27967.18129611453659045726.stgit@pasha-ThinkPad-X280>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 234b74966390894046dfef6157ecc49c39fdce20
      
https://github.com/qemu/qemu/commit/234b74966390894046dfef6157ecc49c39fdce20
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M accel/stubs/Makefile.objs
    A accel/stubs/xen-stub.c
    M stubs/Makefile.objs
    R stubs/xen-common.c
    R stubs/xen-hvm.c

  Log Message:
  -----------
  stubs: move Xen stubs to accel/

Keep them close to the other accelerator-dependent stubs, so as to remove
stubs that are not needed by tools.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 3575b0aea983ad57804c9af739ed8ff7bc168393
      
https://github.com/qemu/qemu/commit/3575b0aea983ad57804c9af739ed8ff7bc168393
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    R target/i386/TODO

  Log Message:
  -----------
  target/i386: Remove obsolete TODO file

The last real change to this file is from 2012, so it is very likely
that this file is completely out-of-date and ignored today. Let's
simply remove it to avoid confusion if someone finds it by accident.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200611172445.5177-1-thuth@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 7d3660e79830a069f1848bb4fa1cdf8f666424fb
      
https://github.com/qemu/qemu/commit/7d3660e79830a069f1848bb4fa1cdf8f666424fb
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M MAINTAINERS
    M Makefile
    M Makefile.objs
    M accel/Makefile.objs
    M accel/kvm/kvm-all.c
    M accel/kvm/trace-events
    M accel/stubs/Makefile.objs
    A accel/stubs/xen-stub.c
    A accel/xen/Makefile.objs
    A accel/xen/xen-all.c
    M chardev/char-socket.c
    M configure
    M cpus.c
    M disas.c
    M exec.c
    M hmp-commands-info.hx
    M hw/Makefile.objs
    M hw/acpi/piix4.c
    M hw/block/vhost-user-blk.c
    M hw/core/machine.c
    M hw/core/numa.c
    M hw/hyperv/Kconfig
    M hw/hyperv/Makefile.objs
    M hw/hyperv/hyperv.c
    A hw/hyperv/trace-events
    A hw/hyperv/vmbus.c
    M hw/i386/acpi-build.c
    M hw/i386/amd_iommu.c
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M hw/i386/vmmouse.c
    M hw/i386/vmport.c
    R hw/i386/vmport.h
    M hw/i386/xen/xen-hvm.c
    M hw/i386/xen/xen_platform.c
    M hw/intc/ioapic.c
    M hw/isa/piix3.c
    M hw/pci-host/pam.c
    M hw/pci/msix.c
    M hw/scsi/megasas.c
    M hw/scsi/vhost-user-scsi.c
    M hw/usb/hcd-musb.c
    M hw/usb/tusb6010.c
    M hw/vfio/pci.c
    M hw/xen/Makefile.objs
    R hw/xen/xen-common.c
    M hw/xen/xen_pt.c
    M hw/xen/xen_pt.h
    A hw/xen/xen_pt_stub.c
    M include/exec/cpu-all.h
    M include/exec/cpu-common.h
    M include/exec/memory.h
    M include/exec/ram_addr.h
    M include/hw/display/edid.h
    M include/hw/elf_ops.h
    M include/hw/hyperv/hyperv.h
    A include/hw/hyperv/vmbus-bridge.h
    A include/hw/hyperv/vmbus-proto.h
    A include/hw/hyperv/vmbus.h
    A include/hw/i386/vmport.h
    M include/hw/usb.h
    A include/hw/usb/hcd-musb.h
    M include/hw/xen/xen.h
    M include/io/task.h
    M include/qemu/thread.h
    M include/qemu/typedefs.h
    M include/qom/object.h
    M include/qom/qom-qobject.h
    M include/sysemu/accel.h
    M include/sysemu/hvf.h
    M include/sysemu/kvm.h
    M include/sysemu/sysemu.h
    M include/sysemu/tcg.h
    A include/sysemu/xen.h
    M io/task.c
    M memory.c
    M migration/savevm.c
    M monitor/misc.c
    M qom/container.c
    M qom/object.c
    M replay/replay-internal.c
    M replay/replay.c
    M scripts/checkpatch.pl
    M scripts/coverity-scan/coverity-scan.docker
    M scripts/coverity-scan/run-coverity-scan
    M softmmu/vl.c
    M stubs/Makefile.objs
    M stubs/qmp_memory_device.c
    R stubs/xen-common.c
    R stubs/xen-hvm.c
    R target/i386/TODO
    M target/i386/cpu.c
    M target/i386/cpu.h
    M target/i386/fpu_helper.c
    M target/i386/hax-all.c
    M target/i386/hax-i386.h
    M target/i386/hvf/hvf-i386.h
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86.c
    M target/i386/hvf/x86.h
    M target/i386/hvf/x86_decode.c
    M target/i386/hvf/x86_emu.c
    M target/i386/hvf/x86_flags.c
    M target/i386/hvf/x86_task.c
    M target/i386/hvf/x86hvf.c
    M target/i386/kvm.c
    M target/i386/misc_helper.c
    M target/i386/ops_sse.h
    M target/i386/sev.c
    M target/i386/sev_i386.h
    M target/ppc/cpu.h
    M target/ppc/kvm_ppc.h
    M target/ppc/translate_init.inc.c
    M tests/docker/Makefile.include
    M tests/docker/docker.py
    M tests/qtest/machine-none-test.c
    M tests/tcg/i386/Makefile.target
    A tests/tcg/i386/test-i386-fbstp.c
    A tests/tcg/i386/test-i386-fisttp.c
    A tests/tcg/i386/test-i386-fldcst.c
    A tests/tcg/i386/test-i386-fp-exceptions.c
    A tests/tcg/i386/test-i386-fscale.c
    A tests/tcg/i386/test-i386-fxam.c
    A tests/tcg/i386/test-i386-fxtract.c
    A tests/tcg/i386/test-i386-pcmpistri.c
    M tests/test-io-task.c
    M util/oslib-posix.c

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

* Miscellaneous fixes and feature enablement (many)
* SEV refactoring (David)
* Hyper-V initial support (Jon)
* i386 TCG fixes (x87 and SSE, Joseph)
* vmport cleanup and improvements (Philippe, Liran)
* Use-after-free with vCPU hot-unplug (Nengyuan)
* run-coverity-scan improvements (myself)
* Record/replay fixes (Pavel)
* -machine kernel_irqchip=split improvements for INTx (Peter)
* Code cleanups (Philippe)
* Crash and security fixes (PJP)
* HVF cleanups (Roman)

# gpg: Signature made Fri 12 Jun 2020 16:57:04 BST
# gpg:                using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg:                issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>" [full]
# 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: (116 commits)
  target/i386: Remove obsolete TODO file
  stubs: move Xen stubs to accel/
  replay: fix replay shutdown for console mode
  exec/cpu-common: Move MUSB specific typedefs to 'hw/usb/hcd-musb.h'
  hw/usb: Move device-specific declarations to new 'hcd-musb.h' header
  exec/memory: Remove unused MemoryRegionMmio type
  checkpatch: reversed logic with acpi test checks
  target/i386: sev: Unify SEVState and SevGuestState
  target/i386: sev: Remove redundant handle field
  target/i386: sev: Remove redundant policy field
  target/i386: sev: Remove redundant cbitpos and reduced_phys_bits fields
  target/i386: sev: Partial cleanup to sev_state global
  target/i386: sev: Embed SEVState in SevGuestState
  target/i386: sev: Rename QSevGuestInfo
  target/i386: sev: Move local structure definitions into .c file
  target/i386: sev: Remove unused QSevGuestInfoClass
  xen: fix build without pci passthrough
  i386: hvf: Drop HVFX86EmulatorState
  i386: hvf: Move mmio_buf into CPUX86State
  i386: hvf: Move lazy_flags into CPUX86State
  ...

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

# Conflicts:
#       hw/i386/acpi-build.c


Compare: https://github.com/qemu/qemu/compare/9e3903136d9a...7d3660e79830



reply via email to

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