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

Alex Bennée posted 21 patches 3 years, 11 months ago
Only 0 patches received!
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
[PULL v2 00/21] testing and plugin updates (tsan, pluginsm cross-builds)
Posted by Alex Bennée 3 years, 11 months ago
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-2

for you to fetch changes up to c81950a2f1923dec3f6b952ec6bb9b921be58a70:

  plugins: new lockstep plugin for debugging TCG changes (2020-06-16 14:49:05 +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


Re: [PULL v2 00/21] testing and plugin updates (tsan, pluginsm cross-builds)
Posted by Peter Maydell 3 years, 11 months ago
On Tue, 16 Jun 2020 at 14:51, Alex Bennée <alex.bennee@linaro.org> wrote:
>
> 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-2
>
> for you to fetch changes up to c81950a2f1923dec3f6b952ec6bb9b921be58a70:
>
>   plugins: new lockstep plugin for debugging TCG changes (2020-06-16 14:49:05 +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


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/5.1
for any user-visible changes.

-- PMM