[PATCH v2 00/10] accel: Allow targets to use Kconfig, disable semihosting by default

Philippe Mathieu-Daudé posted 10 patches 3 years, 11 months ago
Test docker-mingw@fedora failed
Test checkpatch passed
Test asan passed
Test docker-quick@centos7 failed
Test FreeBSD passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20200515170804.5707-1-philmd@redhat.com
There is a newer version of this series
Makefile                                | 15 +++++++++++----
default-configs/arm-softmmu.mak         |  1 -
default-configs/lm32-softmmu.mak        |  2 --
default-configs/m68k-softmmu.mak        |  2 --
default-configs/mips-softmmu-common.mak |  3 ---
default-configs/nios2-softmmu.mak       |  2 --
default-configs/xtensa-softmmu.mak      |  2 --
accel/stubs/tcg-stub.c                  |  7 +++++++
Kconfig.host                            |  7 -------
MAINTAINERS                             | 17 ++++++++++++++++-
accel/Kconfig                           |  9 +++++++++
hw/semihosting/Kconfig                  |  4 +++-
target/arm/Kconfig                      |  2 ++
target/lm32/Kconfig                     |  2 ++
target/m68k/Kconfig                     |  2 ++
target/mips/Kconfig                     |  2 ++
target/nios2/Kconfig                    |  2 ++
target/riscv/Kconfig                    |  2 ++
target/xtensa/Kconfig                   |  2 ++
19 files changed, 60 insertions(+), 25 deletions(-)
create mode 100644 accel/Kconfig
create mode 100644 target/arm/Kconfig
create mode 100644 target/lm32/Kconfig
create mode 100644 target/m68k/Kconfig
create mode 100644 target/mips/Kconfig
create mode 100644 target/nios2/Kconfig
create mode 100644 target/riscv/Kconfig
create mode 100644 target/xtensa/Kconfig
[PATCH v2 00/10] accel: Allow targets to use Kconfig, disable semihosting by default
Posted by Philippe Mathieu-Daudé 3 years, 11 months ago
This series include generic patches I took of the KVM/ARM
specific series which will follow.

- List orphan accelerators in MAINTAINERS
- Add accel/Kconfig
- Allow targets to use their how Kconfig
- Enforce semihosting on architecture where required,
  disable it elsewhere

Since v1:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg689024.html
- Drop HVF MAINTAINERS patch (merged elsewhere)
- Kconfig-select SEMIHOSTING (bonzini)
- Drop user-mode selection patches
- consider m68k/nios2/xtensa/riscv (pm215)
- reword Kconfig SEMIHOSTING description (pm215)
- reset some of rth R-b tags

Previous RFC for semihosting posted earlier:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg631218.html

$ git backport-diff -u v1 -r v2
Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively

001/10:[----] [--] 'MAINTAINERS: Fix KVM path expansion glob'
002/10:[----] [-C] 'MAINTAINERS: Add an 'overall' entry for accelerators'
003/10:[----] [-C] 'MAINTAINERS: Add an entry for the HAX accelerator'
004/10:[down] 'accel/tcg: Add stub for probe_access()'
005/10:[down] 'Makefile: Remove dangerous EOL trailing backslash'
006/10:[0003] [FC] 'Makefile: Write MINIKCONF variables as one entry per line'
007/10:[----] [--] 'accel/Kconfig: Extract accel selectors into their own config'
008/10:[----] [--] 'accel/Kconfig: Add the TCG selector'
009/10:[down] 'Makefile: Allow target-specific optional Kconfig'
010/10:[0028] [FC] 'hw/semihosting: Make the feature depend of TCG, and allow to disable it'

Philippe Mathieu-Daudé (10):
  MAINTAINERS: Fix KVM path expansion glob
  MAINTAINERS: Add an 'overall' entry for accelerators
  MAINTAINERS: Add an entry for the HAX accelerator
  accel/tcg: Add stub for probe_access()
  Makefile: Remove dangerous EOL trailing backslash
  Makefile: Write MINIKCONF variables as one entry per line
  accel/Kconfig: Extract accel selectors into their own config
  accel/Kconfig: Add the TCG selector
  Makefile: Allow target-specific optional Kconfig
  hw/semihosting: Make the feature depend of TCG, and allow to disable
    it

 Makefile                                | 15 +++++++++++----
 default-configs/arm-softmmu.mak         |  1 -
 default-configs/lm32-softmmu.mak        |  2 --
 default-configs/m68k-softmmu.mak        |  2 --
 default-configs/mips-softmmu-common.mak |  3 ---
 default-configs/nios2-softmmu.mak       |  2 --
 default-configs/xtensa-softmmu.mak      |  2 --
 accel/stubs/tcg-stub.c                  |  7 +++++++
 Kconfig.host                            |  7 -------
 MAINTAINERS                             | 17 ++++++++++++++++-
 accel/Kconfig                           |  9 +++++++++
 hw/semihosting/Kconfig                  |  4 +++-
 target/arm/Kconfig                      |  2 ++
 target/lm32/Kconfig                     |  2 ++
 target/m68k/Kconfig                     |  2 ++
 target/mips/Kconfig                     |  2 ++
 target/nios2/Kconfig                    |  2 ++
 target/riscv/Kconfig                    |  2 ++
 target/xtensa/Kconfig                   |  2 ++
 19 files changed, 60 insertions(+), 25 deletions(-)
 create mode 100644 accel/Kconfig
 create mode 100644 target/arm/Kconfig
 create mode 100644 target/lm32/Kconfig
 create mode 100644 target/m68k/Kconfig
 create mode 100644 target/mips/Kconfig
 create mode 100644 target/nios2/Kconfig
 create mode 100644 target/riscv/Kconfig
 create mode 100644 target/xtensa/Kconfig

-- 
2.21.3


Re: [PATCH v2 00/10] accel: Allow targets to use Kconfig, disable semihosting by default
Posted by no-reply@patchew.org 3 years, 11 months ago
Patchew URL: https://patchew.org/QEMU/20200515170804.5707-1-philmd@redhat.com/



Hi,

This series failed the docker-quick@centos7 build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.

=== TEST SCRIPT BEGIN ===
#!/bin/bash
make docker-image-centos7 V=1 NETWORK=1
time make docker-test-quick@centos7 SHOW_ENV=1 J=14 NETWORK=1
=== TEST SCRIPT END ===

/tmp/qemu-test/src/target/arm/arm-semi.c:787: undefined reference to `qemu_semihosting_console_outs'
/tmp/qemu-test/src/target/arm/arm-semi.c:815: undefined reference to `qemu_semihosting_console_inc'
/tmp/qemu-test/src/target/arm/arm-semi.c:784: undefined reference to `qemu_semihosting_console_outc'
collect2: error: ld returned 1 exit status
make[1]: *** [qemu-system-aarch64] Error 1
make: *** [aarch64-softmmu/all] Error 2
Traceback (most recent call last):
  File "./tests/docker/docker.py", line 664, in <module>
    sys.exit(main())
---
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=490bf18b41e04df58182bdb1996b896b', '-u', '1003', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=1', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew2/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-k03oe5yh/src/docker-src.2020-05-15-23.41.43.21629:/var/tmp/qemu:z,ro', 'qemu:centos7', '/var/tmp/qemu/run', 'test-quick']' returned non-zero exit status 2.
filter=--filter=label=com.qemu.instance.uuid=490bf18b41e04df58182bdb1996b896b
make[1]: *** [docker-run] Error 1
make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-k03oe5yh/src'
make: *** [docker-run-test-quick@centos7] Error 2

real    2m45.420s
user    0m8.257s


The full log is available at
http://patchew.org/logs/20200515170804.5707-1-philmd@redhat.com/testing.docker-quick@centos7/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Re: [PATCH v2 00/10] accel: Allow targets to use Kconfig, disable semihosting by default
Posted by no-reply@patchew.org 3 years, 11 months ago
Patchew URL: https://patchew.org/QEMU/20200515170804.5707-1-philmd@redhat.com/



Hi,

This series failed the docker-mingw@fedora build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.

=== TEST SCRIPT BEGIN ===
#! /bin/bash
export ARCH=x86_64
make docker-image-fedora V=1 NETWORK=1
time make docker-test-mingw@fedora J=14 NETWORK=1
=== TEST SCRIPT END ===

/tmp/qemu-test/src/target/arm/arm-semi.c:815: undefined reference to `qemu_semihosting_console_inc'
/tmp/qemu-test/src/target/arm/arm-semi.c:787: undefined reference to `qemu_semihosting_console_outs'
/tmp/qemu-test/src/target/arm/arm-semi.c:784: undefined reference to `qemu_semihosting_console_outc'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:208: qemu-system-aarch64w.exe] Error 1
make: *** [Makefile:534: aarch64-softmmu/all] Error 2
make: *** Waiting for unfinished jobs....
Traceback (most recent call last):
  File "./tests/docker/docker.py", line 664, in <module>
---
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=e4300b50b74f4cf6a4342bebb0db3e5b', '-u', '1001', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-d_su7kf_/src/docker-src.2020-05-15-23.55.36.10662:/var/tmp/qemu:z,ro', 'qemu:fedora', '/var/tmp/qemu/run', 'test-mingw']' returned non-zero exit status 2.
filter=--filter=label=com.qemu.instance.uuid=e4300b50b74f4cf6a4342bebb0db3e5b
make[1]: *** [docker-run] Error 1
make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-d_su7kf_/src'
make: *** [docker-run-test-mingw@fedora] Error 2

real    2m20.941s
user    0m8.489s


The full log is available at
http://patchew.org/logs/20200515170804.5707-1-philmd@redhat.com/testing.docker-mingw@fedora/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com