mbox

[PULL,v2,00/30] testing, gdbstub and semihosting

Message ID 20210118111745.20104-1-alex.bennee@linaro.org
State New
Headers show

Pull-request

https://github.com/stsquad/qemu.git tags/pull-testing-and-misc-180121-2

Message

Alex Bennée Jan. 18, 2021, 11:17 a.m. UTC
The following changes since commit 825a215c003cd028e26c7d19aa5049d957345f43:

  Merge remote-tracking branch 'remotes/kraxel/tags/audio-20210115-pull-request' into staging (2021-01-15 22:21:21 +0000)

are available in the Git repository at:

  https://github.com/stsquad/qemu.git tags/pull-testing-and-misc-180121-2

for you to fetch changes up to 767ba049b8f8f8ebfebe90ecaf1b5a9cf8c865ff:

  semihosting: Implement SYS_ISERROR (2021-01-18 10:05:06 +0000)

----------------------------------------------------------------
Testing, gdbstub and semihosting patches:

  - clean-ups to docker images
  - drop duplicate jobs from shippable
  - prettier tag generation (+gtags)
  - generate browsable source tree
  - more Travis->GitLab migrations
  - fix checkpatch to deal with commits
  - gate gdbstub tests on 8.3.1, expand tests
  - support Xfer:auxv:read gdb packet
  - better gdbstub cleanup
  - use GDB's SVE register layout
  - make arm-compat-semihosting common
  - add riscv semihosting support
  - add HEAPINFO, ELAPSED, TICKFREQ, TMPNAM and ISERROR to semihosting

----------------------------------------------------------------
Alessandro Di Federico (1):
      Add newline when generating Dockerfile

Alex Bennée (16):
      Makefile: add GNU global tags support
      Makefile: wrap ctags in quiet-command calls
      Makefile: wrap etags in quiet-command calls
      Makefile: wrap cscope in quiet-command calls
      docker: expand debian-amd64 image to include tag tools
      gitlab: move docs and tools build across from Travis
      gitlab: migrate the minimal tools and unit tests from Travis
      scripts/checkpatch.pl: fix git-show invocation to include diffstat
      test/guest-debug: echo QEMU command as well
      configure: gate our use of GDB to 8.3.1 or above
      Revert "tests/tcg/multiarch/Makefile.target: Disable run-gdbstub-sha1 test"
      gdbstub: implement a softmmu based test
      gdbstub: drop CPUEnv from gdb_exit()
      gdbstub: drop gdbserver_cleanup in favour of gdb_exit
      gdbstub: ensure we clean-up when terminated
      target/arm: use official org.gnu.gdb.aarch64.sve layout for registers

Keith Packard (8):
      semihosting: Move ARM semihosting code to shared directories
      semihosting: Change common-semi API to be architecture-independent
      semihosting: Change internal common-semi interfaces to use CPUState *
      semihosting: Support SYS_HEAPINFO when env->boot_info is not set
      riscv: Add semihosting support
      semihosting: Implement SYS_ELAPSED and SYS_TICKFREQ
      semihosting: Implement SYS_TMPNAM
      semihosting: Implement SYS_ISERROR

Kito Cheng (1):
      riscv: Add semihosting support for user mode

Lirong Yuan (1):
      gdbstub: add support to Xfer:auxv:read: packet

Lukas Straub (1):
      Fix build with new yank feature by adding stubs

Philippe Mathieu-Daudé (2):
      tests/docker: Remove Debian 9 remnant lines
      shippable.yml: Remove jobs duplicated on Gitlab-CI

 configure                                          |   7 +-
 Makefile                                           |  46 +-
 default-configs/devices/arm-softmmu.mak            |   1 +
 default-configs/devices/riscv32-softmmu.mak        |   2 +
 default-configs/devices/riscv64-softmmu.mak        |   2 +
 default-configs/targets/aarch64-linux-user.mak     |   1 +
 default-configs/targets/aarch64_be-linux-user.mak  |   1 +
 default-configs/targets/arm-linux-user.mak         |   1 +
 default-configs/targets/armeb-linux-user.mak       |   1 +
 default-configs/targets/riscv32-linux-user.mak     |   1 +
 default-configs/targets/riscv64-linux-user.mak     |   1 +
 hw/semihosting/common-semi.h                       |  39 ++
 include/exec/gdbstub.h                             |  14 +-
 include/qemu/timer.h                               |   2 +
 linux-user/qemu.h                                  |   4 +-
 target/arm/cpu.h                                   |   8 -
 target/riscv/cpu_bits.h                            |   1 +
 bsd-user/syscall.c                                 |   6 +-
 gdbstub.c                                          |  65 ++-
 .../arm-semi.c => hw/semihosting/arm-compat-semi.c | 525 ++++++++++++++-------
 linux-user/aarch64/cpu_loop.c                      |   3 +-
 linux-user/arm/cpu_loop.c                          |   3 +-
 linux-user/exit.c                                  |   2 +-
 linux-user/riscv/cpu_loop.c                        |   5 +
 linux-user/{arm => }/semihost.c                    |   8 +-
 softmmu/runstate.c                                 |   2 +-
 stubs/yank.c                                       |  29 ++
 target/arm/gdbstub.c                               |  75 ++-
 target/arm/helper.c                                |   7 +-
 target/arm/m_helper.c                              |   7 +-
 target/m68k/m68k-semi.c                            |   2 +-
 target/nios2/nios2-semi.c                          |   2 +-
 target/riscv/cpu_helper.c                          |  10 +
 target/riscv/translate.c                           |  11 +
 util/qemu-timer-common.c                           |   4 +
 target/riscv/insn_trans/trans_privileged.c.inc     |  37 +-
 .gitignore                                         |   3 +
 .gitlab-ci.yml                                     |  30 +-
 .shippable.yml                                     |  14 +-
 .travis.yml                                        |  25 -
 MAINTAINERS                                        |   2 +
 hw/semihosting/Kconfig                             |   4 +
 hw/semihosting/meson.build                         |   3 +
 linux-user/arm/meson.build                         |   3 -
 linux-user/meson.build                             |   1 +
 qemu-options.hx                                    |  10 +-
 scripts/checkpatch.pl                              |   2 +-
 stubs/meson.build                                  |   1 +
 target/arm/meson.build                             |   2 -
 tests/docker/Makefile.include                      |   1 -
 tests/docker/docker.py                             |   4 +-
 tests/docker/dockerfiles/debian-amd64.docker       |   5 +-
 tests/guest-debug/run-test.py                      |  35 +-
 tests/tcg/aarch64/Makefile.softmmu-target          |   1 +
 tests/tcg/aarch64/gdbstub/test-sve-ioctl.py        |  11 +
 tests/tcg/aarch64/system/boot.S                    |   1 +
 tests/tcg/i386/Makefile.softmmu-target             |   1 +
 tests/tcg/i386/system/boot.S                       |   2 +-
 tests/tcg/multiarch/Makefile.target                |  13 +-
 tests/tcg/multiarch/gdbstub/memory.py              | 130 +++++
 .../tcg/multiarch/gdbstub/test-qxfer-auxv-read.py  |  57 +++
 tests/tcg/multiarch/system/Makefile.softmmu-target |  19 +-
 tests/tcg/x86_64/Makefile.softmmu-target           |   1 +
 tests/tcg/x86_64/system/boot.S                     |   2 +-
 64 files changed, 982 insertions(+), 336 deletions(-)
 create mode 100644 hw/semihosting/common-semi.h
 rename target/arm/arm-semi.c => hw/semihosting/arm-compat-semi.c (66%)
 rename linux-user/{arm => }/semihost.c (89%)
 create mode 100644 stubs/yank.c
 create mode 100644 tests/tcg/multiarch/gdbstub/memory.py
 create mode 100644 tests/tcg/multiarch/gdbstub/test-qxfer-auxv-read.py

Comments

Peter Maydell Jan. 18, 2021, 3:18 p.m. UTC | #1
On Mon, 18 Jan 2021 at 11:17, Alex Bennée <alex.bennee@linaro.org> wrote:
>
> The following changes since commit 825a215c003cd028e26c7d19aa5049d957345f43:
>
>   Merge remote-tracking branch 'remotes/kraxel/tags/audio-20210115-pull-request' into staging (2021-01-15 22:21:21 +0000)
>
> are available in the Git repository at:
>
>   https://github.com/stsquad/qemu.git tags/pull-testing-and-misc-180121-2
>
> for you to fetch changes up to 767ba049b8f8f8ebfebe90ecaf1b5a9cf8c865ff:
>
>   semihosting: Implement SYS_ISERROR (2021-01-18 10:05:06 +0000)
>
> ----------------------------------------------------------------
> Testing, gdbstub and semihosting patches:
>
>   - clean-ups to docker images
>   - drop duplicate jobs from shippable
>   - prettier tag generation (+gtags)
>   - generate browsable source tree
>   - more Travis->GitLab migrations
>   - fix checkpatch to deal with commits
>   - gate gdbstub tests on 8.3.1, expand tests
>   - support Xfer:auxv:read gdb packet
>   - better gdbstub cleanup
>   - use GDB's SVE register layout
>   - make arm-compat-semihosting common
>   - add riscv semihosting support
>   - add HEAPINFO, ELAPSED, TICKFREQ, TMPNAM and ISERROR to semihosting
>


Applied, thanks.

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

-- PMM