mbox series

[PULL,00/21] testing and plugin updates (tsan, plugins, cross-builds)

Message ID 20200616125324.19045-1-alex.bennee@linaro.org
Headers show
Series testing and plugin updates (tsan, plugins, cross-builds) | expand

Message

Alex Bennée June 16, 2020, 12:53 p.m. UTC
The following changes since commit f5e34624f28f37ec3c8a93bdee348effee966a78:

  Merge remote-tracking branch 'remotes/amarkovic/tags/mips-queue-jun-15-2020' into staging (2020-06-16 11:00:28 +0100)

are available in the Git repository at:

  https://github.com/stsquad/qemu.git tags/pull-testing-and-plugin-160620-1

for you to fetch changes up to 99c5f1ccb9ad9fe42466df292a9e4c9b863eafe6:

  plugins: new lockstep plugin for debugging TCG changes (2020-06-16 13:25:00 +0100)

----------------------------------------------------------------
Testing and plugin updates

  - clear up dtc warnings
  - add support for --enable-tsan builds
  - re-enable shippable cross builds
  - serialise cirrus check steps
  - fix check-tcg plugin issues
  - add lockstep plugin

----------------------------------------------------------------
Alex Bennée (6):
      tests/docker: bump fedora to 32
      Revert ".shippable: temporaily disable some cross builds"
      cirrus.yml: serialise make check
      tests/tcg: build plugin list from contents of src directory
      tests/tcg: ensure -cpu max also used for plugin run
      plugins: new lockstep plugin for debugging TCG changes

Claudio Fontana (2):
      Makefile: dtc: update, build the libfdt target
      Makefile: remove old compatibility gunks

Emilio G. Cota (7):
      cpu: convert queued work to a QSIMPLEQ
      thread: add qemu_spin_destroy
      cputlb: destroy CPUTLB with tlb_destroy
      qht: call qemu_spin_destroy for head buckets
      tcg: call qemu_spin_destroy for tb->jmp_lock
      translate-all: call qemu_spin_destroy for PageDesc
      thread: add tsan annotations to QemuSpin

Lingfeng Yang (1):
      configure: add --enable-tsan flag + fiber annotations for coroutine-ucontext

Robert Foley (5):
      tests/docker: Added docker build support for TSan.
      include/qemu: Added tsan.h for annotations.
      util: Added tsan annotate for thread name.
      docs: Added details on TSan to testing.rst
      tests: Disable select tests under TSan, which hit TSan issue.

 docs/devel/testing.rst                     | 107 +++++++++
 configure                                  |  48 +++-
 Makefile                                   |  16 +-
 include/exec/exec-all.h                    |   8 +
 include/hw/core/cpu.h                      |   6 +-
 include/qemu/thread.h                      |  38 +++-
 include/qemu/tsan.h                        |  71 ++++++
 include/tcg/tcg.h                          |   1 +
 accel/tcg/cputlb.c                         |  15 ++
 accel/tcg/translate-all.c                  |  17 ++
 cpus-common.c                              |  25 +--
 cpus.c                                     |  14 +-
 exec.c                                     |   1 +
 hw/core/cpu.c                              |   1 +
 tcg/tcg.c                                  |   9 +
 tests/plugin/lockstep.c                    | 340 +++++++++++++++++++++++++++++
 util/coroutine-ucontext.c                  |  66 +++++-
 util/qemu-thread-posix.c                   |   2 +
 util/qht.c                                 |   1 +
 .cirrus.yml                                |   6 +-
 .shippable.yml                             |  12 +-
 dtc                                        |   2 +-
 tests/Makefile.include                     |   9 +-
 tests/docker/dockerfiles/fedora.docker     |   2 +-
 tests/docker/dockerfiles/ubuntu2004.docker |  65 ++++++
 tests/docker/test-tsan                     |  44 ++++
 tests/plugin/Makefile                      |   1 +
 tests/qtest/Makefile.include               |   7 +-
 tests/tcg/Makefile.target                  |  12 +-
 tests/tcg/aarch64/Makefile.target          |   5 +-
 tests/tcg/arm/Makefile.target              |   2 +-
 tests/tcg/i386/Makefile.target             |   1 +
 tests/tsan/blacklist.tsan                  |  10 +
 tests/tsan/suppressions.tsan               |  14 ++
 34 files changed, 910 insertions(+), 68 deletions(-)
 create mode 100644 include/qemu/tsan.h
 create mode 100644 tests/plugin/lockstep.c
 create mode 100644 tests/docker/dockerfiles/ubuntu2004.docker
 create mode 100755 tests/docker/test-tsan
 create mode 100644 tests/tsan/blacklist.tsan
 create mode 100644 tests/tsan/suppressions.tsan

-- 
2.20.1