* Replace YAML anchors by extends in the gitlab-CI yaml files
* Many small qtest fixes (e.g. to fix issues discovered by Coverity) * Poison more config switches in common code * Fix the failing Travis-CI and Cirrus-CI tasks -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmCeXFMRHHRodXRoQHJl ZGhhdC5jb20ACgkQLtnXdP5wLbUV7g//VRxN74v2pO6zSsSNavYTkMa3jZE1Io3l w9lsOr3DM0HIMhyEMwSJsiygj0s8TNanUtFBHfDfo1k1gmZYd5FiM1sB7ZB/sB/S 9Q9wjmeV2NMG7pcr9zLmiJaEM2LGfGbso44/m0c+gpSyxzg2TeH7sF+38AUZI9/R J6/gOzIs4WWdSV4f8kp+YPPQCyOtxZsfxDuk1z1fKsBgXE5iEBUqYyyZUm4gYJkN 4ALmqc/NVeLszt08qkPHxwXQc488nCJP31psxx6MQ7toKfCAamT07Pp3oi70cakC y+HVfsIHc7SxaZyj8sbJCU3LJHwDd8N82ydJUrv216qDffb38fNb+m6y9mcYy2MH C25uGe9mucTuTP1WIttC6nCKg/MCgi4PWIzqEhkeKj3TxpTUJJP+BUIfSubV38Gc T+XUCNkWWW8sTeRiyE3m9pEZ+gz1MFubaIr/Owephch1SjRYn4zUwJFHHi3I4PY4 7XjEo8y2M9tKckW3pCfYi+aIDzC1DcRtzvXUGtdemX5xVjTAGlKkFLWl/brdCn2U y+JrwrL8cQ3Fy7bXzmK6m9mmhcIW6PcSOBE7RnSESyKzqM5VBSBgnjMqnHcP3FrV FYzihTCDcFKy3ELUe3Kbc1TgG/07stQs9xInGXN7ZFsIwadfHgoNVQ6JpOqq1oQa fvmLPBhq+a4= =QZuG -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/thuth-gitlab/tags/pull-request-2021-05-14' into staging * Replace YAML anchors by extends in the gitlab-CI yaml files * Many small qtest fixes (e.g. to fix issues discovered by Coverity) * Poison more config switches in common code * Fix the failing Travis-CI and Cirrus-CI tasks # gpg: Signature made Fri 14 May 2021 12:17:39 BST # gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5 # gpg: issuer "thuth@redhat.com" # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full] # gpg: aka "Thomas Huth <thuth@redhat.com>" [full] # gpg: aka "Thomas Huth <huth@tuxfamily.org>" [full] # gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown] # Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5 * remotes/thuth-gitlab/tags/pull-request-2021-05-14: cirrus.yml: Fix the MSYS2 task pc-bios/s390-ccw: Fix inline assembly for older versions of Clang tests/qtest/migration-test: Use g_autofree to avoid leaks on error paths configure: Poison all current target-specific #defines migration: Move populate_vfio_info() into a separate file include/sysemu: Poison all accelerator CONFIG switches in common code tests: Avoid side effects inside g_assert() arguments tests/qtest/rtc-test: Remove pointless NULL check tests/qtest/tpm-util.c: Free memory with correct free function tests/migration-test: Fix "true" vs true tests/qtest/npcm7xx_pwm-test.c: Avoid g_assert_true() for non-test assertions tests/qtest/ahci-test.c: Calculate iso_size with 64-bit arithmetic util/compatfd.c: Replaced a malloc call with g_malloc. libqtest: refuse QTEST_QEMU_BINARY=qemu-kvm docs/devel/qgraph: add troubleshooting information libqos/qgraph: fix "UNAVAILBLE" typo gitlab-ci: Replace YAML anchors by extends (native_test_job) gitlab-ci: Replace YAML anchors by extends (native_build_job) gitlab-ci: Replace YAML anchors by extends (container_job) tests/docker/dockerfiles: Add ccache to containers where it was missing Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
9b1e81d1c2
@ -67,7 +67,7 @@ windows_msys2_task:
|
|||||||
CIRRUS_SHELL: powershell
|
CIRRUS_SHELL: powershell
|
||||||
MSYS: winsymlinks:nativestrict
|
MSYS: winsymlinks:nativestrict
|
||||||
MSYSTEM: MINGW64
|
MSYSTEM: MINGW64
|
||||||
MSYS2_URL: https://github.com/msys2/msys2-installer/releases/download/2021-01-05/msys2-base-x86_64-20210105.sfx.exe
|
MSYS2_URL: https://github.com/msys2/msys2-installer/releases/download/2021-04-19/msys2-base-x86_64-20210419.sfx.exe
|
||||||
MSYS2_FINGERPRINT: 0
|
MSYS2_FINGERPRINT: 0
|
||||||
MSYS2_PACKAGES: "
|
MSYS2_PACKAGES: "
|
||||||
diffutils git grep make pkg-config sed
|
diffutils git grep make pkg-config sed
|
||||||
@ -130,7 +130,7 @@ windows_msys2_task:
|
|||||||
taskkill /F /FI "MODULES eq msys-2.0.dll"
|
taskkill /F /FI "MODULES eq msys-2.0.dll"
|
||||||
tasklist
|
tasklist
|
||||||
C:\tools\msys64\usr\bin\bash.exe -lc "mv -f /etc/pacman.conf.pacnew /etc/pacman.conf || true"
|
C:\tools\msys64\usr\bin\bash.exe -lc "mv -f /etc/pacman.conf.pacnew /etc/pacman.conf || true"
|
||||||
C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Suu --overwrite=*"
|
C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Syuu --overwrite=*"
|
||||||
Write-Output "Core install time taken: $((Get-Date).Subtract($start_time))"
|
Write-Output "Core install time taken: $((Get-Date).Subtract($start_time))"
|
||||||
$start_time = Get-Date
|
$start_time = Get-Date
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
.container_job_template: &container_job_definition
|
.container_job_template:
|
||||||
image: docker:stable
|
image: docker:stable
|
||||||
stage: containers
|
stage: containers
|
||||||
services:
|
services:
|
||||||
@ -22,230 +22,230 @@
|
|||||||
- docker logout
|
- docker logout
|
||||||
|
|
||||||
amd64-alpine-container:
|
amd64-alpine-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: alpine
|
NAME: alpine
|
||||||
|
|
||||||
amd64-centos7-container:
|
amd64-centos7-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: centos7
|
NAME: centos7
|
||||||
|
|
||||||
amd64-centos8-container:
|
amd64-centos8-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: centos8
|
NAME: centos8
|
||||||
|
|
||||||
amd64-debian10-container:
|
amd64-debian10-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: debian10
|
NAME: debian10
|
||||||
|
|
||||||
amd64-debian11-container:
|
amd64-debian11-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: debian11
|
NAME: debian11
|
||||||
|
|
||||||
alpha-debian-cross-container:
|
alpha-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-alpha-cross
|
NAME: debian-alpha-cross
|
||||||
|
|
||||||
amd64-debian-cross-container:
|
amd64-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-amd64-cross
|
NAME: debian-amd64-cross
|
||||||
|
|
||||||
amd64-debian-user-cross-container:
|
amd64-debian-user-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-all-test-cross
|
NAME: debian-all-test-cross
|
||||||
|
|
||||||
amd64-debian-container:
|
amd64-debian-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-amd64
|
NAME: debian-amd64
|
||||||
|
|
||||||
arm64-debian-cross-container:
|
arm64-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-arm64-cross
|
NAME: debian-arm64-cross
|
||||||
|
|
||||||
arm64-test-debian-cross-container:
|
arm64-test-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian11-container']
|
needs: ['amd64-debian11-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-arm64-test-cross
|
NAME: debian-arm64-test-cross
|
||||||
|
|
||||||
armel-debian-cross-container:
|
armel-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-armel-cross
|
NAME: debian-armel-cross
|
||||||
|
|
||||||
armhf-debian-cross-container:
|
armhf-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-armhf-cross
|
NAME: debian-armhf-cross
|
||||||
|
|
||||||
hppa-debian-cross-container:
|
hppa-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-hppa-cross
|
NAME: debian-hppa-cross
|
||||||
|
|
||||||
m68k-debian-cross-container:
|
m68k-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-m68k-cross
|
NAME: debian-m68k-cross
|
||||||
|
|
||||||
mips64-debian-cross-container:
|
mips64-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-mips64-cross
|
NAME: debian-mips64-cross
|
||||||
|
|
||||||
mips64el-debian-cross-container:
|
mips64el-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-mips64el-cross
|
NAME: debian-mips64el-cross
|
||||||
|
|
||||||
mips-debian-cross-container:
|
mips-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-mips-cross
|
NAME: debian-mips-cross
|
||||||
|
|
||||||
mipsel-debian-cross-container:
|
mipsel-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-mipsel-cross
|
NAME: debian-mipsel-cross
|
||||||
|
|
||||||
powerpc-debian-cross-container:
|
powerpc-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-powerpc-cross
|
NAME: debian-powerpc-cross
|
||||||
|
|
||||||
ppc64-debian-cross-container:
|
ppc64-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-ppc64-cross
|
NAME: debian-ppc64-cross
|
||||||
|
|
||||||
ppc64el-debian-cross-container:
|
ppc64el-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-ppc64el-cross
|
NAME: debian-ppc64el-cross
|
||||||
|
|
||||||
riscv64-debian-cross-container:
|
riscv64-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-riscv64-cross
|
NAME: debian-riscv64-cross
|
||||||
|
|
||||||
s390x-debian-cross-container:
|
s390x-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-s390x-cross
|
NAME: debian-s390x-cross
|
||||||
|
|
||||||
sh4-debian-cross-container:
|
sh4-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-sh4-cross
|
NAME: debian-sh4-cross
|
||||||
|
|
||||||
sparc64-debian-cross-container:
|
sparc64-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-sparc64-cross
|
NAME: debian-sparc64-cross
|
||||||
|
|
||||||
tricore-debian-cross-container:
|
tricore-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
stage: containers-layer2
|
stage: containers-layer2
|
||||||
needs: ['amd64-debian10-container']
|
needs: ['amd64-debian10-container']
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-tricore-cross
|
NAME: debian-tricore-cross
|
||||||
|
|
||||||
xtensa-debian-cross-container:
|
xtensa-debian-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: debian-xtensa-cross
|
NAME: debian-xtensa-cross
|
||||||
|
|
||||||
cris-fedora-cross-container:
|
cris-fedora-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: fedora-cris-cross
|
NAME: fedora-cris-cross
|
||||||
|
|
||||||
amd64-fedora-container:
|
amd64-fedora-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: fedora
|
NAME: fedora
|
||||||
|
|
||||||
i386-fedora-cross-container:
|
i386-fedora-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: fedora-i386-cross
|
NAME: fedora-i386-cross
|
||||||
|
|
||||||
win32-fedora-cross-container:
|
win32-fedora-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: fedora-win32-cross
|
NAME: fedora-win32-cross
|
||||||
|
|
||||||
win64-fedora-cross-container:
|
win64-fedora-cross-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: fedora-win64-cross
|
NAME: fedora-win64-cross
|
||||||
|
|
||||||
amd64-ubuntu1804-container:
|
amd64-ubuntu1804-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: ubuntu1804
|
NAME: ubuntu1804
|
||||||
|
|
||||||
amd64-ubuntu2004-container:
|
amd64-ubuntu2004-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: ubuntu2004
|
NAME: ubuntu2004
|
||||||
|
|
||||||
amd64-ubuntu-container:
|
amd64-ubuntu-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: ubuntu
|
NAME: ubuntu
|
||||||
|
|
||||||
amd64-opensuse-leap-container:
|
amd64-opensuse-leap-container:
|
||||||
<<: *container_job_definition
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: opensuse-leap
|
NAME: opensuse-leap
|
||||||
|
104
.gitlab-ci.yml
104
.gitlab-ci.yml
@ -13,7 +13,7 @@ include:
|
|||||||
- local: '/.gitlab-ci.d/containers.yml'
|
- local: '/.gitlab-ci.d/containers.yml'
|
||||||
- local: '/.gitlab-ci.d/crossbuilds.yml'
|
- local: '/.gitlab-ci.d/crossbuilds.yml'
|
||||||
|
|
||||||
.native_build_job_template: &native_build_job_definition
|
.native_build_job_template:
|
||||||
stage: build
|
stage: build
|
||||||
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
|
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
|
||||||
before_script:
|
before_script:
|
||||||
@ -41,7 +41,7 @@ include:
|
|||||||
make -j"$JOBS" $MAKE_CHECK_ARGS ;
|
make -j"$JOBS" $MAKE_CHECK_ARGS ;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
.native_test_job_template: &native_test_job_definition
|
.native_test_job_template:
|
||||||
stage: test
|
stage: test
|
||||||
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
|
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
|
||||||
script:
|
script:
|
||||||
@ -83,7 +83,7 @@ include:
|
|||||||
- du -chs ${CI_PROJECT_DIR}/avocado-cache
|
- du -chs ${CI_PROJECT_DIR}/avocado-cache
|
||||||
|
|
||||||
build-system-alpine:
|
build-system-alpine:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: amd64-alpine-container
|
- job: amd64-alpine-container
|
||||||
variables:
|
variables:
|
||||||
@ -99,7 +99,7 @@ build-system-alpine:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-system-alpine:
|
check-system-alpine:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-alpine
|
- job: build-system-alpine
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -108,7 +108,7 @@ check-system-alpine:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-system-alpine:
|
acceptance-system-alpine:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-alpine
|
- job: build-system-alpine
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -118,7 +118,7 @@ acceptance-system-alpine:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
build-system-ubuntu:
|
build-system-ubuntu:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-ubuntu2004-container
|
job: amd64-ubuntu2004-container
|
||||||
variables:
|
variables:
|
||||||
@ -133,7 +133,7 @@ build-system-ubuntu:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-system-ubuntu:
|
check-system-ubuntu:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-ubuntu
|
- job: build-system-ubuntu
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -142,7 +142,7 @@ check-system-ubuntu:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-system-ubuntu:
|
acceptance-system-ubuntu:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-ubuntu
|
- job: build-system-ubuntu
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -152,7 +152,7 @@ acceptance-system-ubuntu:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
build-system-debian:
|
build-system-debian:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-container
|
job: amd64-debian-container
|
||||||
variables:
|
variables:
|
||||||
@ -167,7 +167,7 @@ build-system-debian:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-system-debian:
|
check-system-debian:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-debian
|
- job: build-system-debian
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -176,7 +176,7 @@ check-system-debian:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-system-debian:
|
acceptance-system-debian:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-debian
|
- job: build-system-debian
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -186,7 +186,7 @@ acceptance-system-debian:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
build-system-fedora:
|
build-system-fedora:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-fedora-container
|
job: amd64-fedora-container
|
||||||
variables:
|
variables:
|
||||||
@ -202,7 +202,7 @@ build-system-fedora:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-system-fedora:
|
check-system-fedora:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-fedora
|
- job: build-system-fedora
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -211,7 +211,7 @@ check-system-fedora:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-system-fedora:
|
acceptance-system-fedora:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-fedora
|
- job: build-system-fedora
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -221,7 +221,7 @@ acceptance-system-fedora:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
build-system-centos:
|
build-system-centos:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-centos8-container
|
job: amd64-centos8-container
|
||||||
variables:
|
variables:
|
||||||
@ -237,7 +237,7 @@ build-system-centos:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-system-centos:
|
check-system-centos:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-centos
|
- job: build-system-centos
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -246,7 +246,7 @@ check-system-centos:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-system-centos:
|
acceptance-system-centos:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-centos
|
- job: build-system-centos
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -256,7 +256,7 @@ acceptance-system-centos:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
build-system-opensuse:
|
build-system-opensuse:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-opensuse-leap-container
|
job: amd64-opensuse-leap-container
|
||||||
variables:
|
variables:
|
||||||
@ -270,7 +270,7 @@ build-system-opensuse:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-system-opensuse:
|
check-system-opensuse:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-opensuse
|
- job: build-system-opensuse
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -279,7 +279,7 @@ check-system-opensuse:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-system-opensuse:
|
acceptance-system-opensuse:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-system-opensuse
|
- job: build-system-opensuse
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -290,7 +290,7 @@ acceptance-system-opensuse:
|
|||||||
|
|
||||||
|
|
||||||
build-disabled:
|
build-disabled:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-fedora-container
|
job: amd64-fedora-container
|
||||||
variables:
|
variables:
|
||||||
@ -376,7 +376,7 @@ build-disabled:
|
|||||||
# Also use a different coroutine implementation (which is only really of
|
# Also use a different coroutine implementation (which is only really of
|
||||||
# interest to KVM users, i.e. with TCG disabled)
|
# interest to KVM users, i.e. with TCG disabled)
|
||||||
build-tcg-disabled:
|
build-tcg-disabled:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-centos8-container
|
job: amd64-centos8-container
|
||||||
variables:
|
variables:
|
||||||
@ -399,7 +399,7 @@ build-tcg-disabled:
|
|||||||
260 261 262 263 264 270 272 273 277 279
|
260 261 262 263 264 270 272 273 277 279
|
||||||
|
|
||||||
build-user:
|
build-user:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -408,7 +408,7 @@ build-user:
|
|||||||
MAKE_CHECK_ARGS: check-tcg
|
MAKE_CHECK_ARGS: check-tcg
|
||||||
|
|
||||||
build-user-static:
|
build-user-static:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -418,7 +418,7 @@ build-user-static:
|
|||||||
|
|
||||||
# Only build the softmmu targets we have check-tcg tests for
|
# Only build the softmmu targets we have check-tcg tests for
|
||||||
build-some-softmmu:
|
build-some-softmmu:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -431,7 +431,7 @@ build-some-softmmu:
|
|||||||
# we skip sparc64-linux-user until it has been fixed somewhat
|
# we skip sparc64-linux-user until it has been fixed somewhat
|
||||||
# we skip cris-linux-user as it doesn't use the common run loop
|
# we skip cris-linux-user as it doesn't use the common run loop
|
||||||
build-user-plugins:
|
build-user-plugins:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -441,7 +441,7 @@ build-user-plugins:
|
|||||||
timeout: 1h 30m
|
timeout: 1h 30m
|
||||||
|
|
||||||
build-user-centos7:
|
build-user-centos7:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-centos7-container
|
job: amd64-centos7-container
|
||||||
variables:
|
variables:
|
||||||
@ -450,7 +450,7 @@ build-user-centos7:
|
|||||||
MAKE_CHECK_ARGS: check-tcg
|
MAKE_CHECK_ARGS: check-tcg
|
||||||
|
|
||||||
build-some-softmmu-plugins:
|
build-some-softmmu-plugins:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -460,7 +460,7 @@ build-some-softmmu-plugins:
|
|||||||
MAKE_CHECK_ARGS: check-tcg
|
MAKE_CHECK_ARGS: check-tcg
|
||||||
|
|
||||||
clang-system:
|
clang-system:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-fedora-container
|
job: amd64-fedora-container
|
||||||
variables:
|
variables:
|
||||||
@ -472,7 +472,7 @@ clang-system:
|
|||||||
MAKE_CHECK_ARGS: check-qtest check-tcg
|
MAKE_CHECK_ARGS: check-qtest check-tcg
|
||||||
|
|
||||||
clang-user:
|
clang-user:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -494,7 +494,7 @@ clang-user:
|
|||||||
# Split in three sets of build/check/acceptance to limit the execution time of each
|
# Split in three sets of build/check/acceptance to limit the execution time of each
|
||||||
# job
|
# job
|
||||||
build-cfi-aarch64:
|
build-cfi-aarch64:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: amd64-fedora-container
|
- job: amd64-fedora-container
|
||||||
variables:
|
variables:
|
||||||
@ -512,7 +512,7 @@ build-cfi-aarch64:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-cfi-aarch64:
|
check-cfi-aarch64:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-cfi-aarch64
|
- job: build-cfi-aarch64
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -521,7 +521,7 @@ check-cfi-aarch64:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-cfi-aarch64:
|
acceptance-cfi-aarch64:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-cfi-aarch64
|
- job: build-cfi-aarch64
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -531,7 +531,7 @@ acceptance-cfi-aarch64:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
build-cfi-ppc64-s390x:
|
build-cfi-ppc64-s390x:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: amd64-fedora-container
|
- job: amd64-fedora-container
|
||||||
variables:
|
variables:
|
||||||
@ -549,7 +549,7 @@ build-cfi-ppc64-s390x:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-cfi-ppc64-s390x:
|
check-cfi-ppc64-s390x:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-cfi-ppc64-s390x
|
- job: build-cfi-ppc64-s390x
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -558,7 +558,7 @@ check-cfi-ppc64-s390x:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-cfi-ppc64-s390x:
|
acceptance-cfi-ppc64-s390x:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-cfi-ppc64-s390x
|
- job: build-cfi-ppc64-s390x
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -568,7 +568,7 @@ acceptance-cfi-ppc64-s390x:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
build-cfi-x86_64:
|
build-cfi-x86_64:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: amd64-fedora-container
|
- job: amd64-fedora-container
|
||||||
variables:
|
variables:
|
||||||
@ -586,7 +586,7 @@ build-cfi-x86_64:
|
|||||||
- build
|
- build
|
||||||
|
|
||||||
check-cfi-x86_64:
|
check-cfi-x86_64:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-cfi-x86_64
|
- job: build-cfi-x86_64
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -595,7 +595,7 @@ check-cfi-x86_64:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
acceptance-cfi-x86_64:
|
acceptance-cfi-x86_64:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-cfi-x86_64
|
- job: build-cfi-x86_64
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -605,7 +605,7 @@ acceptance-cfi-x86_64:
|
|||||||
<<: *acceptance_definition
|
<<: *acceptance_definition
|
||||||
|
|
||||||
tsan-build:
|
tsan-build:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-ubuntu2004-container
|
job: amd64-ubuntu2004-container
|
||||||
variables:
|
variables:
|
||||||
@ -617,7 +617,7 @@ tsan-build:
|
|||||||
|
|
||||||
# These targets are on the way out
|
# These targets are on the way out
|
||||||
build-deprecated:
|
build-deprecated:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -633,7 +633,7 @@ build-deprecated:
|
|||||||
# We split the check-tcg step as test failures are expected but we still
|
# We split the check-tcg step as test failures are expected but we still
|
||||||
# want to catch the build breaking.
|
# want to catch the build breaking.
|
||||||
check-deprecated:
|
check-deprecated:
|
||||||
<<: *native_test_job_definition
|
extends: .native_test_job_template
|
||||||
needs:
|
needs:
|
||||||
- job: build-deprecated
|
- job: build-deprecated
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@ -644,7 +644,7 @@ check-deprecated:
|
|||||||
|
|
||||||
# gprof/gcov are GCC features
|
# gprof/gcov are GCC features
|
||||||
gprof-gcov:
|
gprof-gcov:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-ubuntu2004-container
|
job: amd64-ubuntu2004-container
|
||||||
variables:
|
variables:
|
||||||
@ -657,7 +657,7 @@ gprof-gcov:
|
|||||||
- ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
|
- ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
|
||||||
|
|
||||||
build-oss-fuzz:
|
build-oss-fuzz:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-fedora-container
|
job: amd64-fedora-container
|
||||||
variables:
|
variables:
|
||||||
@ -677,7 +677,7 @@ build-oss-fuzz:
|
|||||||
- cd build-oss-fuzz && make check-qtest-i386 check-unit
|
- cd build-oss-fuzz && make check-qtest-i386 check-unit
|
||||||
|
|
||||||
build-tci:
|
build-tci:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-user-cross-container
|
job: amd64-debian-user-cross-container
|
||||||
variables:
|
variables:
|
||||||
@ -702,7 +702,7 @@ build-tci:
|
|||||||
# Alternate coroutines implementations are only really of interest to KVM users
|
# Alternate coroutines implementations are only really of interest to KVM users
|
||||||
# However we can't test against KVM on Gitlab-CI so we can only run unit tests
|
# However we can't test against KVM on Gitlab-CI so we can only run unit tests
|
||||||
build-coroutine-sigaltstack:
|
build-coroutine-sigaltstack:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-ubuntu2004-container
|
job: amd64-ubuntu2004-container
|
||||||
variables:
|
variables:
|
||||||
@ -716,7 +716,7 @@ build-coroutine-sigaltstack:
|
|||||||
# These jobs test old gcrypt and nettle from RHEL7
|
# These jobs test old gcrypt and nettle from RHEL7
|
||||||
# which had some API differences.
|
# which had some API differences.
|
||||||
crypto-old-nettle:
|
crypto-old-nettle:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-centos7-container
|
job: amd64-centos7-container
|
||||||
variables:
|
variables:
|
||||||
@ -726,7 +726,7 @@ crypto-old-nettle:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
crypto-old-gcrypt:
|
crypto-old-gcrypt:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-centos7-container
|
job: amd64-centos7-container
|
||||||
variables:
|
variables:
|
||||||
@ -736,7 +736,7 @@ crypto-old-gcrypt:
|
|||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
crypto-only-gnutls:
|
crypto-only-gnutls:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-centos7-container
|
job: amd64-centos7-container
|
||||||
variables:
|
variables:
|
||||||
@ -748,7 +748,7 @@ crypto-only-gnutls:
|
|||||||
|
|
||||||
# Check our reduced build configurations
|
# Check our reduced build configurations
|
||||||
build-without-default-devices:
|
build-without-default-devices:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-centos8-container
|
job: amd64-centos8-container
|
||||||
variables:
|
variables:
|
||||||
@ -756,7 +756,7 @@ build-without-default-devices:
|
|||||||
CONFIGURE_ARGS: --without-default-devices --disable-user
|
CONFIGURE_ARGS: --without-default-devices --disable-user
|
||||||
|
|
||||||
build-without-default-features:
|
build-without-default-features:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-container
|
job: amd64-debian-container
|
||||||
variables:
|
variables:
|
||||||
@ -806,7 +806,7 @@ build-libvhost-user:
|
|||||||
# No targets are built here, just tools, docs, and unit tests. This
|
# No targets are built here, just tools, docs, and unit tests. This
|
||||||
# also feeds into the eventual documentation deployment steps later
|
# also feeds into the eventual documentation deployment steps later
|
||||||
build-tools-and-docs-debian:
|
build-tools-and-docs-debian:
|
||||||
<<: *native_build_job_definition
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-debian-container
|
job: amd64-debian-container
|
||||||
variables:
|
variables:
|
||||||
|
2
Makefile
2
Makefile
@ -213,7 +213,7 @@ qemu-%.tar.bz2:
|
|||||||
|
|
||||||
distclean: clean
|
distclean: clean
|
||||||
-$(quiet-@)test -f build.ninja && $(NINJA) $(NINJAFLAGS) -t clean -g || :
|
-$(quiet-@)test -f build.ninja && $(NINJA) $(NINJAFLAGS) -t clean -g || :
|
||||||
rm -f config-host.mak config-host.h*
|
rm -f config-host.mak config-host.h* config-poison.h
|
||||||
rm -f tests/tcg/config-*.mak
|
rm -f tests/tcg/config-*.mak
|
||||||
rm -f config-all-disas.mak config.status
|
rm -f config-all-disas.mak config.status
|
||||||
rm -f roms/seabios/config.mak roms/vgabios/config.mak
|
rm -f roms/seabios/config.mak roms/vgabios/config.mak
|
||||||
|
7
configure
vendored
7
configure
vendored
@ -6473,6 +6473,13 @@ if test -n "${deprecated_features}"; then
|
|||||||
echo " features: ${deprecated_features}"
|
echo " features: ${deprecated_features}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Create list of config switches that should be poisoned in common code...
|
||||||
|
# but filter out CONFIG_TCG and CONFIG_USER_ONLY which are special.
|
||||||
|
sed -n -e '/CONFIG_TCG/d' -e '/CONFIG_USER_ONLY/d' \
|
||||||
|
-e '/^#define / { s///; s/ .*//; s/^/#pragma GCC poison /p; }' \
|
||||||
|
*-config-devices.h *-config-target.h | \
|
||||||
|
sort -u > config-poison.h
|
||||||
|
|
||||||
# Save the configure command line for later reuse.
|
# Save the configure command line for later reuse.
|
||||||
cat <<EOD >config.status
|
cat <<EOD >config.status
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
@ -92,6 +92,64 @@ The basic framework steps are the following:
|
|||||||
Depending on the QEMU binary used, only some drivers/machines will be
|
Depending on the QEMU binary used, only some drivers/machines will be
|
||||||
available and only test that are reached by them will be executed.
|
available and only test that are reached by them will be executed.
|
||||||
|
|
||||||
|
Troubleshooting unavailable tests
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
If there is no path from an available machine to a test then that test will be
|
||||||
|
unavailable and won't execute. This can happen if a test or driver did not set
|
||||||
|
up its qgraph node correctly. It can also happen if the necessary machine type
|
||||||
|
or device is missing from the QEMU binary because it was compiled out or
|
||||||
|
otherwise.
|
||||||
|
|
||||||
|
It is possible to troubleshoot unavailable tests by running::
|
||||||
|
|
||||||
|
$ QTEST_QEMU_BINARY=build/qemu-system-x86_64 build/tests/qtest/qos-test --verbose
|
||||||
|
# ALL QGRAPH EDGES: {
|
||||||
|
# src='virtio-net'
|
||||||
|
# |-> dest='virtio-net-tests/vhost-user/multiqueue' type=2 (node=0x559142109e30)
|
||||||
|
# |-> dest='virtio-net-tests/vhost-user/migrate' type=2 (node=0x559142109d00)
|
||||||
|
# src='virtio-net-pci'
|
||||||
|
# |-> dest='virtio-net' type=1 (node=0x55914210d740)
|
||||||
|
# src='pci-bus'
|
||||||
|
# |-> dest='virtio-net-pci' type=2 (node=0x55914210d880)
|
||||||
|
# src='pci-bus-pc'
|
||||||
|
# |-> dest='pci-bus' type=1 (node=0x559142103f40)
|
||||||
|
# src='i440FX-pcihost'
|
||||||
|
# |-> dest='pci-bus-pc' type=0 (node=0x55914210ac70)
|
||||||
|
# src='x86_64/pc'
|
||||||
|
# |-> dest='i440FX-pcihost' type=0 (node=0x5591421117f0)
|
||||||
|
# src=''
|
||||||
|
# |-> dest='x86_64/pc' type=0 (node=0x559142111600)
|
||||||
|
# |-> dest='arm/raspi2' type=0 (node=0x559142110740)
|
||||||
|
...
|
||||||
|
# }
|
||||||
|
# ALL QGRAPH NODES: {
|
||||||
|
# name='virtio-net-tests/announce-self' type=3 cmd_line='(null)' [available]
|
||||||
|
# name='arm/raspi2' type=0 cmd_line='-M raspi2 ' [UNAVAILABLE]
|
||||||
|
...
|
||||||
|
# }
|
||||||
|
|
||||||
|
The ``virtio-net-tests/announce-self`` test is listed as "available" in the
|
||||||
|
"ALL QGRAPH NODES" output. This means the test will execute. We can follow the
|
||||||
|
qgraph path in the "ALL QGRAPH EDGES" output as follows: '' -> 'x86_64/pc' ->
|
||||||
|
'i440FX-pcihost' -> 'pci-bus-pc' -> 'pci-bus' -> 'virtio-net-pci' ->
|
||||||
|
'virtio-net'. The root of the qgraph is '' and the depth first search begins
|
||||||
|
there.
|
||||||
|
|
||||||
|
The ``arm/raspi`` machine node is listed as "UNAVAILABLE". Although it is
|
||||||
|
reachable from the root via '' -> 'arm/raspi2' the node is unavailable because
|
||||||
|
the QEMU binary did not list it when queried by the framework. This is expected
|
||||||
|
because we used the ``qemu-system-x86_64`` binary which does not support ARM
|
||||||
|
machine types.
|
||||||
|
|
||||||
|
If a test is unexpectedly listed as "UNAVAILABLE", first check that the "ALL
|
||||||
|
QGRAPH EDGES" output reports edge connectivity from the root ('') to the test.
|
||||||
|
If there is no connectivity then the qgraph nodes were not set up correctly and
|
||||||
|
the driver or test code is incorrect. If there is connectivity, check the
|
||||||
|
availability of each node in the path in the "ALL QGRAPH NODES" output. The
|
||||||
|
first unavailable node in the path is the reason why the test is unavailable.
|
||||||
|
Typically this is because the QEMU binary lacks support for the necessary
|
||||||
|
machine type or device.
|
||||||
|
|
||||||
Creating a new driver and its interface
|
Creating a new driver and its interface
|
||||||
"""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
@ -4,6 +4,8 @@
|
|||||||
#ifndef HW_POISON_H
|
#ifndef HW_POISON_H
|
||||||
#define HW_POISON_H
|
#define HW_POISON_H
|
||||||
|
|
||||||
|
#include "config-poison.h"
|
||||||
|
|
||||||
#pragma GCC poison TARGET_I386
|
#pragma GCC poison TARGET_I386
|
||||||
#pragma GCC poison TARGET_X86_64
|
#pragma GCC poison TARGET_X86_64
|
||||||
#pragma GCC poison TARGET_AARCH64
|
#pragma GCC poison TARGET_AARCH64
|
||||||
@ -83,8 +85,12 @@
|
|||||||
#pragma GCC poison CONFIG_SPARC_DIS
|
#pragma GCC poison CONFIG_SPARC_DIS
|
||||||
#pragma GCC poison CONFIG_XTENSA_DIS
|
#pragma GCC poison CONFIG_XTENSA_DIS
|
||||||
|
|
||||||
|
#pragma GCC poison CONFIG_HAX
|
||||||
|
#pragma GCC poison CONFIG_HVF
|
||||||
#pragma GCC poison CONFIG_LINUX_USER
|
#pragma GCC poison CONFIG_LINUX_USER
|
||||||
#pragma GCC poison CONFIG_KVM
|
#pragma GCC poison CONFIG_KVM
|
||||||
#pragma GCC poison CONFIG_SOFTMMU
|
#pragma GCC poison CONFIG_SOFTMMU
|
||||||
|
#pragma GCC poison CONFIG_WHPX
|
||||||
|
#pragma GCC poison CONFIG_XEN
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -24,6 +24,8 @@
|
|||||||
|
|
||||||
int hax_sync_vcpus(void);
|
int hax_sync_vcpus(void);
|
||||||
|
|
||||||
|
#ifdef NEED_CPU_H
|
||||||
|
|
||||||
#ifdef CONFIG_HAX
|
#ifdef CONFIG_HAX
|
||||||
|
|
||||||
int hax_enabled(void);
|
int hax_enabled(void);
|
||||||
@ -34,4 +36,6 @@ int hax_enabled(void);
|
|||||||
|
|
||||||
#endif /* CONFIG_HAX */
|
#endif /* CONFIG_HAX */
|
||||||
|
|
||||||
|
#endif /* NEED_CPU_H */
|
||||||
|
|
||||||
#endif /* QEMU_HAX_H */
|
#endif /* QEMU_HAX_H */
|
||||||
|
@ -16,6 +16,8 @@
|
|||||||
#include "qemu/accel.h"
|
#include "qemu/accel.h"
|
||||||
#include "qom/object.h"
|
#include "qom/object.h"
|
||||||
|
|
||||||
|
#ifdef NEED_CPU_H
|
||||||
|
|
||||||
#ifdef CONFIG_HVF
|
#ifdef CONFIG_HVF
|
||||||
uint32_t hvf_get_supported_cpuid(uint32_t func, uint32_t idx,
|
uint32_t hvf_get_supported_cpuid(uint32_t func, uint32_t idx,
|
||||||
int reg);
|
int reg);
|
||||||
@ -26,6 +28,8 @@ extern bool hvf_allowed;
|
|||||||
#define hvf_get_supported_cpuid(func, idx, reg) 0
|
#define hvf_get_supported_cpuid(func, idx, reg) 0
|
||||||
#endif /* !CONFIG_HVF */
|
#endif /* !CONFIG_HVF */
|
||||||
|
|
||||||
|
#endif /* NEED_CPU_H */
|
||||||
|
|
||||||
#define TYPE_HVF_ACCEL ACCEL_CLASS_NAME("hvf")
|
#define TYPE_HVF_ACCEL ACCEL_CLASS_NAME("hvf")
|
||||||
|
|
||||||
typedef struct HVFState HVFState;
|
typedef struct HVFState HVFState;
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
#ifndef QEMU_WHPX_H
|
#ifndef QEMU_WHPX_H
|
||||||
#define QEMU_WHPX_H
|
#define QEMU_WHPX_H
|
||||||
|
|
||||||
|
#ifdef NEED_CPU_H
|
||||||
|
|
||||||
#ifdef CONFIG_WHPX
|
#ifdef CONFIG_WHPX
|
||||||
|
|
||||||
int whpx_enabled(void);
|
int whpx_enabled(void);
|
||||||
@ -25,4 +27,6 @@ bool whpx_apic_in_platform(void);
|
|||||||
|
|
||||||
#endif /* CONFIG_WHPX */
|
#endif /* CONFIG_WHPX */
|
||||||
|
|
||||||
|
#endif /* NEED_CPU_H */
|
||||||
|
|
||||||
#endif /* QEMU_WHPX_H */
|
#endif /* QEMU_WHPX_H */
|
||||||
|
@ -31,4 +31,5 @@ softmmu_ss.add(when: ['CONFIG_RDMA', rdma], if_true: files('rdma.c'))
|
|||||||
softmmu_ss.add(when: 'CONFIG_LIVE_BLOCK_MIGRATION', if_true: files('block.c'))
|
softmmu_ss.add(when: 'CONFIG_LIVE_BLOCK_MIGRATION', if_true: files('block.c'))
|
||||||
softmmu_ss.add(when: zstd, if_true: files('multifd-zstd.c'))
|
softmmu_ss.add(when: zstd, if_true: files('multifd-zstd.c'))
|
||||||
|
|
||||||
specific_ss.add(when: 'CONFIG_SOFTMMU', if_true: files('dirtyrate.c', 'ram.c'))
|
specific_ss.add(when: 'CONFIG_SOFTMMU',
|
||||||
|
if_true: files('dirtyrate.c', 'ram.c', 'target.c'))
|
||||||
|
@ -60,10 +60,6 @@
|
|||||||
#include "qemu/yank.h"
|
#include "qemu/yank.h"
|
||||||
#include "sysemu/cpus.h"
|
#include "sysemu/cpus.h"
|
||||||
|
|
||||||
#ifdef CONFIG_VFIO
|
|
||||||
#include "hw/vfio/vfio-common.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define MAX_THROTTLE (128 << 20) /* Migration transfer speed throttling */
|
#define MAX_THROTTLE (128 << 20) /* Migration transfer speed throttling */
|
||||||
|
|
||||||
/* Amount of time to allocate to each "chunk" of bandwidth-throttled
|
/* Amount of time to allocate to each "chunk" of bandwidth-throttled
|
||||||
@ -1064,17 +1060,6 @@ static void populate_disk_info(MigrationInfo *info)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void populate_vfio_info(MigrationInfo *info)
|
|
||||||
{
|
|
||||||
#ifdef CONFIG_VFIO
|
|
||||||
if (vfio_mig_active()) {
|
|
||||||
info->has_vfio = true;
|
|
||||||
info->vfio = g_malloc0(sizeof(*info->vfio));
|
|
||||||
info->vfio->transferred = vfio_mig_bytes_transferred();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
static void fill_source_migration_info(MigrationInfo *info)
|
static void fill_source_migration_info(MigrationInfo *info)
|
||||||
{
|
{
|
||||||
MigrationState *s = migrate_get_current();
|
MigrationState *s = migrate_get_current();
|
||||||
|
@ -377,4 +377,6 @@ void migration_consume_urgent_request(void);
|
|||||||
bool migration_rate_limit(void);
|
bool migration_rate_limit(void);
|
||||||
void migration_cancel(void);
|
void migration_cancel(void);
|
||||||
|
|
||||||
|
void populate_vfio_info(MigrationInfo *info);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
25
migration/target.c
Normal file
25
migration/target.c
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
/*
|
||||||
|
* QEMU live migration - functions that need to be compiled target-specific
|
||||||
|
*
|
||||||
|
* This work is licensed under the terms of the GNU GPL, version 2
|
||||||
|
* or (at your option) any later version.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "qemu/osdep.h"
|
||||||
|
#include "qapi/qapi-types-migration.h"
|
||||||
|
#include "migration.h"
|
||||||
|
|
||||||
|
#ifdef CONFIG_VFIO
|
||||||
|
#include "hw/vfio/vfio-common.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void populate_vfio_info(MigrationInfo *info)
|
||||||
|
{
|
||||||
|
#ifdef CONFIG_VFIO
|
||||||
|
if (vfio_mig_active()) {
|
||||||
|
info->has_vfio = true;
|
||||||
|
info->vfio = g_malloc0(sizeof(*info->vfio));
|
||||||
|
info->vfio->transferred = vfio_mig_bytes_transferred();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
@ -31,7 +31,7 @@ static inline void *u32toptr(uint32_t n)
|
|||||||
|
|
||||||
static inline void yield(void)
|
static inline void yield(void)
|
||||||
{
|
{
|
||||||
asm volatile ("diag 0,0,0x44"
|
asm volatile ("diag %%r0,%%r0,0x44"
|
||||||
: :
|
: :
|
||||||
: "memory", "cc");
|
: "memory", "cc");
|
||||||
}
|
}
|
||||||
|
@ -64,8 +64,8 @@ void jump_to_IPL_code(uint64_t address)
|
|||||||
* We use the load normal reset to keep r15 unchanged. jump_to_IPL_2
|
* We use the load normal reset to keep r15 unchanged. jump_to_IPL_2
|
||||||
* can then use r15 as its stack pointer.
|
* can then use r15 as its stack pointer.
|
||||||
*/
|
*/
|
||||||
asm volatile("lghi 1,1\n\t"
|
asm volatile("lghi %%r1,1\n\t"
|
||||||
"diag 1,1,0x308\n\t"
|
"diag %%r1,%%r1,0x308\n\t"
|
||||||
: : : "1", "memory");
|
: : : "1", "memory");
|
||||||
panic("\n! IPL returns !\n");
|
panic("\n! IPL returns !\n");
|
||||||
}
|
}
|
||||||
|
@ -36,9 +36,9 @@ static inline void enable_clock_int(void)
|
|||||||
uint64_t tmp = 0;
|
uint64_t tmp = 0;
|
||||||
|
|
||||||
asm volatile(
|
asm volatile(
|
||||||
"stctg 0,0,%0\n"
|
"stctg %%c0,%%c0,%0\n"
|
||||||
"oi 6+%0, 0x8\n"
|
"oi 6+%0, 0x8\n"
|
||||||
"lctlg 0,0,%0"
|
"lctlg %%c0,%%c0,%0"
|
||||||
: : "Q" (tmp) : "memory"
|
: : "Q" (tmp) : "memory"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -48,9 +48,9 @@ static inline void disable_clock_int(void)
|
|||||||
uint64_t tmp = 0;
|
uint64_t tmp = 0;
|
||||||
|
|
||||||
asm volatile(
|
asm volatile(
|
||||||
"stctg 0,0,%0\n"
|
"stctg %%c0,%%c0,%0\n"
|
||||||
"ni 6+%0, 0xf7\n"
|
"ni 6+%0, 0xf7\n"
|
||||||
"lctlg 0,0,%0"
|
"lctlg %%c0,%%c0,%0"
|
||||||
: : "Q" (tmp) : "memory"
|
: : "Q" (tmp) : "memory"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -54,7 +54,7 @@ static long kvm_hypercall(unsigned long nr, unsigned long param1,
|
|||||||
register ulong r_param3 asm("4") = param3;
|
register ulong r_param3 asm("4") = param3;
|
||||||
register long retval asm("2");
|
register long retval asm("2");
|
||||||
|
|
||||||
asm volatile ("diag 2,4,0x500"
|
asm volatile ("diag %%r2,%%r4,0x500"
|
||||||
: "=d" (retval)
|
: "=d" (retval)
|
||||||
: "d" (r_nr), "0" (r_param1), "r"(r_param2), "d"(r_param3)
|
: "d" (r_nr), "0" (r_param1), "r"(r_param2), "d"(r_param3)
|
||||||
: "memory", "cc");
|
: "memory", "cc");
|
||||||
|
@ -9,6 +9,7 @@ ENV PACKAGES \
|
|||||||
alsa-lib-dev \
|
alsa-lib-dev \
|
||||||
bash \
|
bash \
|
||||||
binutils \
|
binutils \
|
||||||
|
ccache \
|
||||||
coreutils \
|
coreutils \
|
||||||
curl-dev \
|
curl-dev \
|
||||||
g++ \
|
g++ \
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
FROM fedora:33
|
FROM fedora:33
|
||||||
ENV PACKAGES \
|
ENV PACKAGES \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
|
ccache \
|
||||||
diffutils \
|
diffutils \
|
||||||
findutils \
|
findutils \
|
||||||
gcc \
|
gcc \
|
||||||
|
@ -4,6 +4,7 @@ FROM fedora:33
|
|||||||
ENV PACKAGES \
|
ENV PACKAGES \
|
||||||
bc \
|
bc \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
|
ccache \
|
||||||
diffutils \
|
diffutils \
|
||||||
findutils \
|
findutils \
|
||||||
gcc \
|
gcc \
|
||||||
|
@ -4,6 +4,7 @@ FROM fedora:33
|
|||||||
ENV PACKAGES \
|
ENV PACKAGES \
|
||||||
bc \
|
bc \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
|
ccache \
|
||||||
diffutils \
|
diffutils \
|
||||||
findutils \
|
findutils \
|
||||||
gcc \
|
gcc \
|
||||||
|
@ -5,6 +5,7 @@ ENV PACKAGES \
|
|||||||
bc \
|
bc \
|
||||||
brlapi-devel \
|
brlapi-devel \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
|
ccache \
|
||||||
cyrus-sasl-devel \
|
cyrus-sasl-devel \
|
||||||
gcc \
|
gcc \
|
||||||
gcc-c++ \
|
gcc-c++ \
|
||||||
|
@ -1491,14 +1491,14 @@ static void ahci_test_cdrom(int nsectors, bool dma, uint8_t cmd,
|
|||||||
char *iso;
|
char *iso;
|
||||||
int fd;
|
int fd;
|
||||||
AHCIOpts opts = {
|
AHCIOpts opts = {
|
||||||
.size = (ATAPI_SECTOR_SIZE * nsectors),
|
.size = ((uint64_t)ATAPI_SECTOR_SIZE * nsectors),
|
||||||
.atapi = true,
|
.atapi = true,
|
||||||
.atapi_dma = dma,
|
.atapi_dma = dma,
|
||||||
.post_cb = ahci_cb_cmp_buff,
|
.post_cb = ahci_cb_cmp_buff,
|
||||||
.set_bcl = override_bcl,
|
.set_bcl = override_bcl,
|
||||||
.bcl = bcl,
|
.bcl = bcl,
|
||||||
};
|
};
|
||||||
uint64_t iso_size = ATAPI_SECTOR_SIZE * (nsectors + 1);
|
uint64_t iso_size = (uint64_t)ATAPI_SECTOR_SIZE * (nsectors + 1);
|
||||||
|
|
||||||
/* Prepare ISO and fill 'tx' buffer */
|
/* Prepare ISO and fill 'tx' buffer */
|
||||||
fd = prepare_iso(iso_size, &tx, &iso);
|
fd = prepare_iso(iso_size, &tx, &iso);
|
||||||
|
@ -98,7 +98,8 @@ static void bt_wait_b_busy(void)
|
|||||||
{
|
{
|
||||||
unsigned int count = 1000;
|
unsigned int count = 1000;
|
||||||
while (IPMI_BT_CTLREG_GET_B_BUSY() != 0) {
|
while (IPMI_BT_CTLREG_GET_B_BUSY() != 0) {
|
||||||
g_assert(--count != 0);
|
--count;
|
||||||
|
g_assert(count != 0);
|
||||||
usleep(100);
|
usleep(100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -107,7 +108,8 @@ static void bt_wait_b2h_atn(void)
|
|||||||
{
|
{
|
||||||
unsigned int count = 1000;
|
unsigned int count = 1000;
|
||||||
while (IPMI_BT_CTLREG_GET_B2H_ATN() == 0) {
|
while (IPMI_BT_CTLREG_GET_B2H_ATN() == 0) {
|
||||||
g_assert(--count != 0);
|
--count;
|
||||||
|
g_assert(count != 0);
|
||||||
usleep(100);
|
usleep(100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -73,7 +73,8 @@ static void kcs_wait_ibf(void)
|
|||||||
{
|
{
|
||||||
unsigned int count = 1000;
|
unsigned int count = 1000;
|
||||||
while (IPMI_KCS_CMDREG_GET_IBF() != 0) {
|
while (IPMI_KCS_CMDREG_GET_IBF() != 0) {
|
||||||
g_assert(--count != 0);
|
--count;
|
||||||
|
g_assert(count != 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -844,7 +844,7 @@ void qos_dump_graph(void)
|
|||||||
}
|
}
|
||||||
qos_printf_literal("type=%d cmd_line='%s' [%s]\n",
|
qos_printf_literal("type=%d cmd_line='%s' [%s]\n",
|
||||||
node->type, node->command_line,
|
node->type, node->command_line,
|
||||||
node->available ? "available" : "UNAVAILBLE"
|
node->available ? "available" : "UNAVAILABLE"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
g_list_free(keys);
|
g_list_free(keys);
|
||||||
|
@ -907,7 +907,14 @@ const char *qtest_get_arch(void)
|
|||||||
|
|
||||||
if (!end) {
|
if (!end) {
|
||||||
fprintf(stderr, "Can't determine architecture from binary name.\n");
|
fprintf(stderr, "Can't determine architecture from binary name.\n");
|
||||||
abort();
|
exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!strstr(qemu, "-system-")) {
|
||||||
|
fprintf(stderr, "QTEST_QEMU_BINARY must end with *-system-<arch> "
|
||||||
|
"where 'arch' is the target\narchitecture (x86_64, aarch64, "
|
||||||
|
"etc).\n");
|
||||||
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
return end + 1;
|
return end + 1;
|
||||||
|
@ -201,7 +201,7 @@ static int pwm_module_index(const PWMModule *module)
|
|||||||
{
|
{
|
||||||
ptrdiff_t diff = module - pwm_module_list;
|
ptrdiff_t diff = module - pwm_module_list;
|
||||||
|
|
||||||
g_assert_true(diff >= 0 && diff < ARRAY_SIZE(pwm_module_list));
|
g_assert(diff >= 0 && diff < ARRAY_SIZE(pwm_module_list));
|
||||||
|
|
||||||
return diff;
|
return diff;
|
||||||
}
|
}
|
||||||
@ -211,7 +211,7 @@ static int pwm_index(const PWM *pwm)
|
|||||||
{
|
{
|
||||||
ptrdiff_t diff = pwm - pwm_list;
|
ptrdiff_t diff = pwm - pwm_list;
|
||||||
|
|
||||||
g_assert_true(diff >= 0 && diff < ARRAY_SIZE(pwm_list));
|
g_assert(diff >= 0 && diff < ARRAY_SIZE(pwm_list));
|
||||||
|
|
||||||
return diff;
|
return diff;
|
||||||
}
|
}
|
||||||
|
@ -686,7 +686,7 @@ static void periodic_timer(void)
|
|||||||
|
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
QTestState *s = NULL;
|
QTestState *s;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
g_test_init(&argc, &argv, NULL);
|
g_test_init(&argc, &argv, NULL);
|
||||||
@ -712,9 +712,7 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
ret = g_test_run();
|
ret = g_test_run();
|
||||||
|
|
||||||
if (s) {
|
qtest_quit(s);
|
||||||
qtest_quit(s);
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -289,6 +289,6 @@ void tpm_util_migration_start_qemu(QTestState **src_qemu,
|
|||||||
|
|
||||||
*dst_qemu = qtest_init(dst_qemu_args);
|
*dst_qemu = qtest_init(dst_qemu_args);
|
||||||
|
|
||||||
free(src_qemu_args);
|
g_free(src_qemu_args);
|
||||||
free(dst_qemu_args);
|
g_free(dst_qemu_args);
|
||||||
}
|
}
|
||||||
|
@ -72,14 +72,10 @@ static int qemu_signalfd_compat(const sigset_t *mask)
|
|||||||
QemuThread thread;
|
QemuThread thread;
|
||||||
int fds[2];
|
int fds[2];
|
||||||
|
|
||||||
info = malloc(sizeof(*info));
|
info = g_malloc(sizeof(*info));
|
||||||
if (info == NULL) {
|
|
||||||
errno = ENOMEM;
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pipe(fds) == -1) {
|
if (pipe(fds) == -1) {
|
||||||
free(info);
|
g_free(info);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user