qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v6 00/49] fix building of tests/tcg


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-devel] [PATCH v6 00/49] fix building of tests/tcg
Date: Mon, 11 Jun 2018 07:47:34 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0

On 06/11/2018 05:19 AM, Alex Bennée wrote:
> Philippe Mathieu-Daudé <address@hidden> writes:
>> On 06/08/2018 09:32 AM, Alex Bennée wrote:
>>> Hi,
>>>
>>> Not a super amount has changed since the last version but review
>>> comments and review tags have been added. The new patches at the end
>>> enable a .travis.yml run and try and make the image building part of
>>> check-tcg -j safe. Essentially the problem is trying to avoid
>>> re-building the images multiple times. The additional issue is wanting
>>> an upto date Debian SID image whenever we actually build an image but
>>> not forcing a rebuild every time.
>>>
>>> Essentially I'd like to encode a conditional dependency when:
>>>   - the target image doesn't exist
>>>   - or the target image is out of date w.r.t. the dockerfike
>>>
>>> I'm thinking this is going to involve some sort of extension to the
>>> docker.py script to feed the Makefile.
>>>
>>> A number of the prerequisite patches have already been pulled in the
>>> docker fixes series however I think this series is ready to go in now.
>>> Unless there are any objections I'll send a pull on Monday.
>>>
>>> Current unreviewed patches:
>>>
>>>   patch 0017/tests tcg i386 add runner for test i386 fprem.patch needs 
>>> review
>>>   patch 0039/docker move debian powerpc cross to sid based bui.patch needs 
>>> review
>>>   patch 0040/tests tcg enable building for PowerPC.patch needs review
>>>   patch 0042/Makefile.target add clean build guest tests targe.patch needs 
>>> review
>>>   patch 0044/tests tcg add run diff and skip helper macros.patch needs 
>>> review
>>>   patch 0045/tests tcg override runners for broken tests.patch needs review
>>>   patch 0046/target sh4 Fix translator.c assertion failure for.patch needs 
>>> review
>>
>> Is this patch related/required to this series?
>> It looks it should enter via another tree.
>>
>> The SH4 tests pass without it:
>>
>> $ make run-tcg-tests-sh4-linux-user -j1
>>   ...
>>   RUN-TESTS for sh4
>>   TEST    test-mmap (default) on sh4
>>   TEST    sha1 on sh4
>>   TEST    linux-test on sh4
>>   TEST    testthread on sh4
>>   TEST    test-mmap (4096 byte pages) on sh4
> 
> Not with --enable-debug, but yeah I'll drop as it should come via Rich's
> TCG tree.

Oh I just tested the basic options, didn't go with all the matrix :/

Indeed,

  RUN-TESTS for sh4
  TEST    test-mmap (default) on sh4
  TEST    sha1 on sh4
  TEST    linux-test on sh4
  TEST    testthread on sh4
qemu-sh4: accel/tcg/translator.c:66: translator_loop: Assertion
`db->is_jmp == DISAS_NEXT' failed.
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault
make: *** [tests/Makefile.include:950: run-tcg-tests-sh4-linux-user] Error 2

I'd still prefer this enter via Richard tree, and keep this PR
testing-only (in case if bisection in translate.c, this might goes very
slow due to your changes in ./configure triggering full rebuild).

> 
>>
>>>   patch 0047/tests add top level make dependency for docker bu.patch needs 
>>> review
>>>   patch 0048/tests docker prevent sub makes re building debian.patch needs 
>>> review
>>>   patch 0049/.travis.yml add check tcg test.patch needs review
>>>
>>>
>>> Alex Bennée (46):
>>>   configure: add support for --cross-cc-FOO
>>>   configure: move i386_cc to cross_cc_i386
>>>   configure: allow user to specify --cross-cc-cflags-foo=
>>>   configure: set cross_cc_FOO for host compiler
>>>   docker: Add "cc" subcommand
>>>   docker: extend "cc" command to accept compiler
>>>   docker: allow "cc" command to run in user context
>>>   docker: Makefile.include introduce DOCKER_SCRIPT
>>>   tests/tcg: move architecture independent tests into subdir
>>>   tests/tcg/multiarch: enable additional linux-test tests
>>>   tests/tcg/multiarch: move most output to stdout
>>>   tests/tcg: move i386 specific tests into subdir
>>>   tests/tcg: enable building for i386
>>>   tests/tcg/i386: fix test-i386
>>>   tests/tcg/i386: add runner for test-i386-fprem
>>>   tests/tcg/x86_64: add Makefile.target
>>>   tests/tcg/i386/test-i386: use modern vector_size attributes
>>>   tests/tcg/i386/test-i386: fix printf format
>>>   tests/tcg: move ARM specific tests into subdir
>>>   tests/tcg: enable building for ARM
>>>   tests/tcg/arm: fix up test-arm-iwmmxt test
>>>   tests/tcg: enable building for AArch64
>>>   tests/tcg/arm: add fcvt test cases for AArch32/64
>>>   tests/tcg: move MIPS specific tests into subdir
>>>   tests/tcg: enable building for MIPS
>>>   tests/tcg/mips: include common mips hello-mips
>>>   tests/tcg: enable building for s390x
>>>   tests/tcg: enable building for ppc64
>>>   tests/tcg: enable building for Alpha
>>>   tests/tcg/alpha: add Alpha specific tests
>>>   tests/tcg: enable building for HPPA
>>>   tests/tcg: enable building for m68k
>>>   tests/tcg: enable building for sh4
>>>   tests/tcg: enable building for sparc64
>>>   tests/tcg: enable building for mips64
>>>   tests/tcg: enable building for RISCV64
>>>   docker: move debian-powerpc-cross to sid based build
>>>   tests/tcg: enable building for PowerPC
>>>   tests/tcg/Makefile: update to be called from Makefile.target
>>>   Makefile.target: add (clean-/build-)guest-tests targets
>>>   tests/Makefile.include: add [build|clean|check]-tcg targets
>>>   tests/tcg: add run, diff, and skip helper macros
>>>   tests/tcg: override runners for broken tests
>>>   tests: add top-level make dependency for docker builds
>>>   tests/docker: prevent sub-makes re-building debian-sid
>>>   .travis.yml: add check-tcg test
>>>
>>> Fam Zheng (2):
>>>   tests/tcg/multiarch: Build fix for linux-test
>>>   tests/tcg/i386: Build fix for hello-i386
>>>
>>> Richard Henderson (1):
>>>   target/sh4: Fix translator.c assertion failure for gUSA
>>>
>>>  .travis.yml                                   |    6 +
>>>  MAINTAINERS                                   |   14 +
>>>  Makefile.target                               |    5 +
>>>  configure                                     |  134 +-
>>>  target/sh4/translate.c                        |   81 +-
>>>  tests/Makefile.include                        |   38 +-
>>>  tests/docker/Makefile.include                 |   31 +-
>>>  tests/docker/docker.py                        |   31 +
>>>  .../dockerfiles/debian-alpha-cross.docker     |   12 +
>>>  tests/docker/dockerfiles/debian-apt-fake.sh   |   46 -
>>>  .../dockerfiles/debian-hppa-cross.docker      |   12 +
>>>  .../dockerfiles/debian-m68k-cross.docker      |   12 +
>>>  .../dockerfiles/debian-mips64-cross.docker    |   12 +
>>>  .../dockerfiles/debian-powerpc-cross.docker   |   39 +-
>>>  .../dockerfiles/debian-riscv64-cross.docker   |   12 +
>>>  .../dockerfiles/debian-sh4-cross.docker       |   12 +
>>>  tests/docker/dockerfiles/debian-sid.docker    |   32 +
>>>  .../dockerfiles/debian-sparc64-cross.docker   |   12 +
>>>  tests/docker/dockerfiles/debian8.docker       |    3 -
>>>  tests/tcg/Makefile                            |  219 +-
>>>  tests/tcg/Makefile.include                    |   89 +
>>>  tests/tcg/Makefile.probe                      |   31 +
>>>  tests/tcg/README                              |   69 +-
>>>  tests/tcg/aarch64/Makefile.include            |    8 +
>>>  tests/tcg/aarch64/Makefile.target             |   17 +
>>>  tests/tcg/aarch64/fcvt.ref                    | 3268 +++++++++++++++++
>>>  tests/tcg/alpha/Makefile                      |   35 -
>>>  tests/tcg/alpha/Makefile.include              |    2 +
>>>  tests/tcg/alpha/Makefile.target               |   18 +
>>>  tests/tcg/alpha/crt.s                         |   26 -
>>>  tests/tcg/alpha/hello-alpha.c                 |    2 +
>>>  tests/tcg/alpha/test-cond.c                   |    1 +
>>>  tests/tcg/alpha/test-ovf.c                    |    2 +
>>>  tests/tcg/arm/Makefile.include                |    8 +
>>>  tests/tcg/arm/Makefile.target                 |   32 +
>>>  tests/tcg/arm/README                          |   11 +
>>>  tests/tcg/arm/fcvt.c                          |  458 +++
>>>  tests/tcg/arm/fcvt.ref                        | 3268 +++++++++++++++++
>>>  tests/tcg/{ => arm}/hello-arm.c               |    0
>>>  .../test-arm-iwmmxt.S}                        |    0
>>>  tests/tcg/hppa/Makefile.include               |    2 +
>>>  tests/tcg/hppa/Makefile.target                |    6 +
>>>  tests/tcg/i386/Makefile.include               |    9 +
>>>  tests/tcg/i386/Makefile.target                |   51 +
>>>  tests/tcg/i386/README                         |   38 +
>>>  tests/tcg/{ => i386}/hello-i386.c             |    1 +
>>>  tests/tcg/{ => i386}/pi_10.com                |  Bin
>>>  tests/tcg/{ => i386}/runcom.c                 |    0
>>>  tests/tcg/{ => i386}/test-i386-code16.S       |    0
>>>  tests/tcg/{ => i386}/test-i386-fprem.c        |   12 +-
>>>  tests/tcg/{ => i386}/test-i386-muldiv.h       |    0
>>>  tests/tcg/{ => i386}/test-i386-shift.h        |    0
>>>  tests/tcg/{ => i386}/test-i386-ssse3.c        |    0
>>>  tests/tcg/{ => i386}/test-i386-vm86.S         |    0
>>>  tests/tcg/{ => i386}/test-i386.c              |    7 +-
>>>  tests/tcg/{ => i386}/test-i386.h              |    0
>>>  tests/tcg/m68k/Makefile.include               |    2 +
>>>  tests/tcg/m68k/Makefile.target                |    7 +
>>>  tests/tcg/mips/Makefile.include               |   20 +
>>>  tests/tcg/mips/Makefile.target                |   22 +
>>>  tests/tcg/mips/README                         |    7 +
>>>  tests/tcg/{ => mips}/hello-mips.c             |    0
>>>  tests/tcg/multiarch/Makefile.target           |   36 +
>>>  tests/tcg/multiarch/README                    |    1 +
>>>  tests/tcg/{ => multiarch}/linux-test.c        |  113 +-
>>>  tests/tcg/{ => multiarch}/sha1.c              |    0
>>>  tests/tcg/{ => multiarch}/test-mmap.c         |   40 +-
>>>  tests/tcg/{ => multiarch}/testthread.c        |    0
>>>  tests/tcg/ppc/Makefile.include                |    7 +
>>>  tests/tcg/ppc/Makefile.target                 |   12 +
>>>  tests/tcg/riscv/Makefile.include              |   10 +
>>>  tests/tcg/s390x/Makefile.include              |    2 +
>>>  tests/tcg/sh4/Makefile.include                |    4 +
>>>  tests/tcg/sh4/Makefile.target                 |    7 +
>>>  tests/tcg/sparc64/Makefile.include            |    2 +
>>>  tests/tcg/sparc64/Makefile.target             |   11 +
>>>  tests/tcg/test_path.c                         |  157 -
>>>  tests/tcg/x86_64/Makefile.target              |   15 +
>>>  78 files changed, 8068 insertions(+), 641 deletions(-)
>>>  create mode 100644 tests/docker/dockerfiles/debian-alpha-cross.docker
>>>  delete mode 100755 tests/docker/dockerfiles/debian-apt-fake.sh
>>>  create mode 100644 tests/docker/dockerfiles/debian-hppa-cross.docker
>>>  create mode 100644 tests/docker/dockerfiles/debian-m68k-cross.docker
>>>  create mode 100644 tests/docker/dockerfiles/debian-mips64-cross.docker
>>>  create mode 100644 tests/docker/dockerfiles/debian-riscv64-cross.docker
>>>  create mode 100644 tests/docker/dockerfiles/debian-sh4-cross.docker
>>>  create mode 100644 tests/docker/dockerfiles/debian-sid.docker
>>>  create mode 100644 tests/docker/dockerfiles/debian-sparc64-cross.docker
>>>  create mode 100644 tests/tcg/Makefile.include
>>>  create mode 100644 tests/tcg/Makefile.probe
>>>  create mode 100644 tests/tcg/aarch64/Makefile.include
>>>  create mode 100644 tests/tcg/aarch64/Makefile.target
>>>  create mode 100644 tests/tcg/aarch64/fcvt.ref
>>>  delete mode 100644 tests/tcg/alpha/Makefile
>>>  create mode 100644 tests/tcg/alpha/Makefile.include
>>>  create mode 100644 tests/tcg/alpha/Makefile.target
>>>  delete mode 100644 tests/tcg/alpha/crt.s
>>>  create mode 100644 tests/tcg/arm/Makefile.include
>>>  create mode 100644 tests/tcg/arm/Makefile.target
>>>  create mode 100644 tests/tcg/arm/README
>>>  create mode 100644 tests/tcg/arm/fcvt.c
>>>  create mode 100644 tests/tcg/arm/fcvt.ref
>>>  rename tests/tcg/{ => arm}/hello-arm.c (100%)
>>>  rename tests/tcg/{test-arm-iwmmxt.s => arm/test-arm-iwmmxt.S} (100%)
>>>  create mode 100644 tests/tcg/hppa/Makefile.include
>>>  create mode 100644 tests/tcg/hppa/Makefile.target
>>>  create mode 100644 tests/tcg/i386/Makefile.include
>>>  create mode 100644 tests/tcg/i386/Makefile.target
>>>  create mode 100644 tests/tcg/i386/README
>>>  rename tests/tcg/{ => i386}/hello-i386.c (96%)
>>>  rename tests/tcg/{ => i386}/pi_10.com (100%)
>>>  rename tests/tcg/{ => i386}/runcom.c (100%)
>>>  rename tests/tcg/{ => i386}/test-i386-code16.S (100%)
>>>  rename tests/tcg/{ => i386}/test-i386-fprem.c (97%)
>>>  rename tests/tcg/{ => i386}/test-i386-muldiv.h (100%)
>>>  rename tests/tcg/{ => i386}/test-i386-shift.h (100%)
>>>  rename tests/tcg/{ => i386}/test-i386-ssse3.c (100%)
>>>  rename tests/tcg/{ => i386}/test-i386-vm86.S (100%)
>>>  rename tests/tcg/{ => i386}/test-i386.c (99%)
>>>  rename tests/tcg/{ => i386}/test-i386.h (100%)
>>>  create mode 100644 tests/tcg/m68k/Makefile.include
>>>  create mode 100644 tests/tcg/m68k/Makefile.target
>>>  create mode 100644 tests/tcg/mips/Makefile.include
>>>  create mode 100644 tests/tcg/mips/Makefile.target
>>>  create mode 100644 tests/tcg/mips/README
>>>  rename tests/tcg/{ => mips}/hello-mips.c (100%)
>>>  create mode 100644 tests/tcg/multiarch/Makefile.target
>>>  create mode 100644 tests/tcg/multiarch/README
>>>  rename tests/tcg/{ => multiarch}/linux-test.c (86%)
>>>  rename tests/tcg/{ => multiarch}/sha1.c (100%)
>>>  rename tests/tcg/{ => multiarch}/test-mmap.c (93%)
>>>  rename tests/tcg/{ => multiarch}/testthread.c (100%)
>>>  create mode 100644 tests/tcg/ppc/Makefile.include
>>>  create mode 100644 tests/tcg/ppc/Makefile.target
>>>  create mode 100644 tests/tcg/riscv/Makefile.include
>>>  create mode 100644 tests/tcg/s390x/Makefile.include
>>>  create mode 100644 tests/tcg/sh4/Makefile.include
>>>  create mode 100644 tests/tcg/sh4/Makefile.target
>>>  create mode 100644 tests/tcg/sparc64/Makefile.include
>>>  create mode 100644 tests/tcg/sparc64/Makefile.target
>>>  delete mode 100644 tests/tcg/test_path.c
>>>  create mode 100644 tests/tcg/x86_64/Makefile.target
>>>
> 
> 
> --
> Alex Bennée
> 



reply via email to

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