Testing updates:
- fix up xtensa docker container base to current Debian - document breakpoint and watchpoint support - clean up the ansible scripts for Ubuntu 22.04 - add a minimal device profile - drop https on mipsdistros URL - fix Kconfig bug for XLNX_VERSAL -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEZoWumedRZ7yvyN81+9DbCVqeKkQFAmRbspsACgkQ+9DbCVqe KkSBowf+JjcVxZMb2kS8pV8WEdAq+fceBYI7mDBSEu0DFqZF+w0XSM+T+VZHyZ8+ QmPeE+McKBUXvq/V4osPnDVVZfBKmwzFN548M6qIMLUbHjbDp94DtudNkAZ0ejhc +Ack73vzTiTWsGmBaqQxZlcYkZNZiZAhQsTF6cPwna74cDkcRghvd/Zxzy831rVB gVWhbEkk7SBQhJ+PqRIeso60DbWvCaVDMrkPc2WX8kup6QltbUpoayS/eNOtBkfA C557eOBxoM8s0cu33O780K5mCPCyk1IaIynvZtmkty0DXUSd5y9SNpsofhAY7BGy 4QdlolLygDgEC3s4bMULGy04nzaylw== =a+97 -----END PGP SIGNATURE----- Merge tag 'pull-testing-updates-100523-1' of https://gitlab.com/stsquad/qemu into staging Testing updates: - fix up xtensa docker container base to current Debian - document breakpoint and watchpoint support - clean up the ansible scripts for Ubuntu 22.04 - add a minimal device profile - drop https on mipsdistros URL - fix Kconfig bug for XLNX_VERSAL # -----BEGIN PGP SIGNATURE----- # # iQEzBAABCgAdFiEEZoWumedRZ7yvyN81+9DbCVqeKkQFAmRbspsACgkQ+9DbCVqe # KkSBowf+JjcVxZMb2kS8pV8WEdAq+fceBYI7mDBSEu0DFqZF+w0XSM+T+VZHyZ8+ # QmPeE+McKBUXvq/V4osPnDVVZfBKmwzFN548M6qIMLUbHjbDp94DtudNkAZ0ejhc # +Ack73vzTiTWsGmBaqQxZlcYkZNZiZAhQsTF6cPwna74cDkcRghvd/Zxzy831rVB # gVWhbEkk7SBQhJ+PqRIeso60DbWvCaVDMrkPc2WX8kup6QltbUpoayS/eNOtBkfA # C557eOBxoM8s0cu33O780K5mCPCyk1IaIynvZtmkty0DXUSd5y9SNpsofhAY7BGy # 4QdlolLygDgEC3s4bMULGy04nzaylw== # =a+97 # -----END PGP SIGNATURE----- # gpg: Signature made Wed 10 May 2023 04:04:59 PM BST # gpg: using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44 # gpg: Good signature from "Alex Bennée (Master Work Key) <alex.bennee@linaro.org>" [undefined] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 6685 AE99 E751 67BC AFC8 DF35 FBD0 DB09 5A9E 2A44 * tag 'pull-testing-updates-100523-1' of https://gitlab.com/stsquad/qemu: hw/arm: Select XLNX_USB_SUBSYS for xlnx-zcu102 machine tests/avocado: use http for mipsdistros.mips.com gitlab: enable minimal device profile for aarch64 --disable-tcg gitlab: add ubuntu-22.04-aarch64-without-defaults scripts/ci: clean-up the 20.04/22.04 confusion in ansible scripts/ci: add gitlab-runner to kvm group docs: document breakpoint and watchpoint support tests/docker: bump the xtensa base to debian:11-slim Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
commit
d530697ca2
@ -1,6 +1,6 @@
|
|||||||
# All ubuntu-22.04 jobs should run successfully in an environment
|
# All ubuntu-22.04 jobs should run successfully in an environment
|
||||||
# setup by the scripts/ci/setup/qemu/build-environment.yml task
|
# setup by the scripts/ci/setup/qemu/build-environment.yml task
|
||||||
# "Install basic packages to build QEMU on Ubuntu 20.04"
|
# "Install basic packages to build QEMU on Ubuntu 22.04"
|
||||||
|
|
||||||
ubuntu-22.04-aarch32-all:
|
ubuntu-22.04-aarch32-all:
|
||||||
extends: .custom_runner_template
|
extends: .custom_runner_template
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# All ubuntu-20.04 jobs should run successfully in an environment
|
# All ubuntu-22.04 jobs should run successfully in an environment
|
||||||
# setup by the scripts/ci/setup/qemu/build-environment.yml task
|
# setup by the scripts/ci/setup/qemu/build-environment.yml task
|
||||||
# "Install basic packages to build QEMU on Ubuntu 20.04"
|
# "Install basic packages to build QEMU on Ubuntu 22.04"
|
||||||
|
|
||||||
ubuntu-22.04-aarch64-all-linux-static:
|
ubuntu-22.04-aarch64-all-linux-static:
|
||||||
extends: .custom_runner_template
|
extends: .custom_runner_template
|
||||||
@ -45,6 +45,28 @@ ubuntu-22.04-aarch64-all:
|
|||||||
- make --output-sync -j`nproc --ignore=40`
|
- make --output-sync -j`nproc --ignore=40`
|
||||||
- make --output-sync -j`nproc --ignore=40` check
|
- make --output-sync -j`nproc --ignore=40` check
|
||||||
|
|
||||||
|
ubuntu-22.04-aarch64-without-defaults:
|
||||||
|
extends: .custom_runner_template
|
||||||
|
needs: []
|
||||||
|
stage: build
|
||||||
|
tags:
|
||||||
|
- ubuntu_22.04
|
||||||
|
- aarch64
|
||||||
|
rules:
|
||||||
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||||
|
when: manual
|
||||||
|
allow_failure: true
|
||||||
|
- if: "$AARCH64_RUNNER_AVAILABLE"
|
||||||
|
when: manual
|
||||||
|
allow_failure: true
|
||||||
|
script:
|
||||||
|
- mkdir build
|
||||||
|
- cd build
|
||||||
|
- ../configure --disable-user --without-default-devices --without-default-features
|
||||||
|
|| { cat config.log meson-logs/meson-log.txt; exit 1; }
|
||||||
|
- make --output-sync -j`nproc --ignore=40`
|
||||||
|
- make --output-sync -j`nproc --ignore=40` check
|
||||||
|
|
||||||
ubuntu-22.04-aarch64-alldbg:
|
ubuntu-22.04-aarch64-alldbg:
|
||||||
extends: .custom_runner_template
|
extends: .custom_runner_template
|
||||||
needs: []
|
needs: []
|
||||||
@ -123,7 +145,7 @@ ubuntu-22.04-aarch64-notcg:
|
|||||||
script:
|
script:
|
||||||
- mkdir build
|
- mkdir build
|
||||||
- cd build
|
- cd build
|
||||||
- ../configure --disable-tcg
|
- ../configure --disable-tcg --with-devices-aarch64=minimal
|
||||||
|| { cat config.log meson-logs/meson-log.txt; exit 1; }
|
|| { cat config.log meson-logs/meson-log.txt; exit 1; }
|
||||||
- make --output-sync -j`nproc --ignore=40`
|
- make --output-sync -j`nproc --ignore=40`
|
||||||
- make --output-sync -j`nproc --ignore=40` check
|
- make --output-sync -j`nproc --ignore=40` check
|
||||||
|
@ -46,6 +46,28 @@ Here are some useful tips in order to use gdb on system code:
|
|||||||
3. Use ``set architecture i8086`` to dump 16 bit code. Then use
|
3. Use ``set architecture i8086`` to dump 16 bit code. Then use
|
||||||
``x/10i $cs*16+$eip`` to dump the code at the PC position.
|
``x/10i $cs*16+$eip`` to dump the code at the PC position.
|
||||||
|
|
||||||
|
Breakpoint and Watchpoint support
|
||||||
|
=================================
|
||||||
|
|
||||||
|
While GDB can always fall back to inserting breakpoints into memory
|
||||||
|
(if writable) other features are very much dependent on support of the
|
||||||
|
accelerator. For TCG system emulation we advertise an infinite number
|
||||||
|
of hardware assisted breakpoints and watchpoints. For other
|
||||||
|
accelerators it will depend on if support has been added (see
|
||||||
|
supports_guest_debug and related hooks in AccelOpsClass).
|
||||||
|
|
||||||
|
As TCG cannot track all memory accesses in user-mode there is no
|
||||||
|
support for watchpoints.
|
||||||
|
|
||||||
|
Relocating code
|
||||||
|
---------------
|
||||||
|
|
||||||
|
On modern kernels confusion can be caused by code being relocated by
|
||||||
|
features such as address space layout randomisation. To avoid
|
||||||
|
confusion when debugging such things you either need to update gdb's
|
||||||
|
view of where things are in memory or perhaps more trivially disable
|
||||||
|
ASLR when booting the system.
|
||||||
|
|
||||||
Debugging multicore machines
|
Debugging multicore machines
|
||||||
============================
|
============================
|
||||||
|
|
||||||
|
@ -436,6 +436,7 @@ config XLNX_VERSAL
|
|||||||
select OR_IRQ
|
select OR_IRQ
|
||||||
select XLNX_BBRAM
|
select XLNX_BBRAM
|
||||||
select XLNX_EFUSE_VERSAL
|
select XLNX_EFUSE_VERSAL
|
||||||
|
select XLNX_USB_SUBSYS
|
||||||
|
|
||||||
config NPCM7XX
|
config NPCM7XX
|
||||||
bool
|
bool
|
||||||
|
@ -136,5 +136,4 @@ config USB_DWC3
|
|||||||
|
|
||||||
config XLNX_USB_SUBSYS
|
config XLNX_USB_SUBSYS
|
||||||
bool
|
bool
|
||||||
default y if XLNX_VERSAL
|
|
||||||
select USB_DWC3
|
select USB_DWC3
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
when:
|
when:
|
||||||
- ansible_facts['distribution'] == 'Ubuntu'
|
- ansible_facts['distribution'] == 'Ubuntu'
|
||||||
- ansible_facts['architecture'] == 'aarch64'
|
- ansible_facts['architecture'] == 'aarch64'
|
||||||
- ansible_facts['distribution_version'] == '20.04'
|
|
||||||
|
|
||||||
- name: Update apt cache / upgrade packages via apt
|
- name: Update apt cache / upgrade packages via apt
|
||||||
apt:
|
apt:
|
||||||
@ -33,87 +32,131 @@
|
|||||||
when:
|
when:
|
||||||
- ansible_facts['distribution'] == 'Ubuntu'
|
- ansible_facts['distribution'] == 'Ubuntu'
|
||||||
|
|
||||||
- name: Install basic packages to build QEMU on Ubuntu 20.04
|
# lcitool variables -f json ubuntu-2204 qemu | jq -r '.pkgs[]' | xargs -n 1 echo "-"
|
||||||
|
- name: Install basic packages to build QEMU on Ubuntu 22.04
|
||||||
package:
|
package:
|
||||||
name:
|
name:
|
||||||
|
- bash
|
||||||
|
- bc
|
||||||
|
- bison
|
||||||
|
- bsdextrautils
|
||||||
|
- bzip2
|
||||||
|
- ca-certificates
|
||||||
- ccache
|
- ccache
|
||||||
|
- clang
|
||||||
|
- dbus
|
||||||
|
- debianutils
|
||||||
|
- diffutils
|
||||||
|
- exuberant-ctags
|
||||||
|
- findutils
|
||||||
|
- flex
|
||||||
|
- g++
|
||||||
- gcc
|
- gcc
|
||||||
|
- gcovr
|
||||||
|
- genisoimage
|
||||||
- gettext
|
- gettext
|
||||||
- git
|
- git
|
||||||
- glusterfs-common
|
- hostname
|
||||||
- libaio-dev
|
- libaio-dev
|
||||||
|
- libasan5
|
||||||
|
- libasound2-dev
|
||||||
- libattr1-dev
|
- libattr1-dev
|
||||||
|
- libbpf-dev
|
||||||
- libbrlapi-dev
|
- libbrlapi-dev
|
||||||
- libbz2-dev
|
- libbz2-dev
|
||||||
|
- libc6-dev
|
||||||
- libcacard-dev
|
- libcacard-dev
|
||||||
- libcapstone-dev
|
|
||||||
- libcap-ng-dev
|
- libcap-ng-dev
|
||||||
|
- libcapstone-dev
|
||||||
|
- libcmocka-dev
|
||||||
- libcurl4-gnutls-dev
|
- libcurl4-gnutls-dev
|
||||||
|
- libdaxctl-dev
|
||||||
- libdrm-dev
|
- libdrm-dev
|
||||||
- libepoxy-dev
|
- libepoxy-dev
|
||||||
- libfdt-dev
|
- libfdt-dev
|
||||||
|
- libffi-dev
|
||||||
- libgbm-dev
|
- libgbm-dev
|
||||||
|
- libgcrypt20-dev
|
||||||
|
- libglib2.0-dev
|
||||||
|
- libglusterfs-dev
|
||||||
|
- libgnutls28-dev
|
||||||
- libgtk-3-dev
|
- libgtk-3-dev
|
||||||
|
- libibumad-dev
|
||||||
- libibverbs-dev
|
- libibverbs-dev
|
||||||
- libiscsi-dev
|
- libiscsi-dev
|
||||||
- libjemalloc-dev
|
- libjemalloc-dev
|
||||||
- libjpeg-turbo8-dev
|
- libjpeg-turbo8-dev
|
||||||
|
- libjson-c-dev
|
||||||
|
- liblttng-ust-dev
|
||||||
- liblzo2-dev
|
- liblzo2-dev
|
||||||
- libncurses5-dev
|
|
||||||
- libncursesw5-dev
|
- libncursesw5-dev
|
||||||
- libnfs-dev
|
- libnfs-dev
|
||||||
- libnss3-dev
|
|
||||||
- libnuma-dev
|
- libnuma-dev
|
||||||
|
- libpam0g-dev
|
||||||
|
- libpcre2-dev
|
||||||
- libpixman-1-dev
|
- libpixman-1-dev
|
||||||
- librados-dev
|
- libpmem-dev
|
||||||
|
- libpng-dev
|
||||||
|
- libpulse-dev
|
||||||
- librbd-dev
|
- librbd-dev
|
||||||
- librdmacm-dev
|
- librdmacm-dev
|
||||||
- libsasl2-dev
|
- libsasl2-dev
|
||||||
- libsdl2-dev
|
- libsdl2-dev
|
||||||
|
- libsdl2-image-dev
|
||||||
- libseccomp-dev
|
- libseccomp-dev
|
||||||
|
- libslirp-dev
|
||||||
- libsnappy-dev
|
- libsnappy-dev
|
||||||
- libspice-protocol-dev
|
- libspice-protocol-dev
|
||||||
|
- libspice-server-dev
|
||||||
- libssh-dev
|
- libssh-dev
|
||||||
|
- libsystemd-dev
|
||||||
|
- libtasn1-6-dev
|
||||||
|
- libubsan1
|
||||||
|
- libudev-dev
|
||||||
|
- liburing-dev
|
||||||
- libusb-1.0-0-dev
|
- libusb-1.0-0-dev
|
||||||
- libusbredirhost-dev
|
- libusbredirhost-dev
|
||||||
- libvdeplug-dev
|
- libvdeplug-dev
|
||||||
|
- libvirglrenderer-dev
|
||||||
- libvte-2.91-dev
|
- libvte-2.91-dev
|
||||||
|
- libxen-dev
|
||||||
|
- libxml2-dev
|
||||||
- libzstd-dev
|
- libzstd-dev
|
||||||
|
- llvm
|
||||||
|
- locales
|
||||||
- make
|
- make
|
||||||
- python3-yaml
|
- meson
|
||||||
|
- multipath-tools
|
||||||
|
- ncat
|
||||||
|
- nettle-dev
|
||||||
|
- ninja-build
|
||||||
|
- openssh-client
|
||||||
|
- pkgconf
|
||||||
|
- python3
|
||||||
|
- python3-numpy
|
||||||
|
- python3-opencv
|
||||||
|
- python3-pillow
|
||||||
|
- python3-pip
|
||||||
- python3-sphinx
|
- python3-sphinx
|
||||||
- python3-sphinx-rtd-theme
|
- python3-sphinx-rtd-theme
|
||||||
- ninja-build
|
- python3-venv
|
||||||
|
- python3-yaml
|
||||||
|
- rpm2cpio
|
||||||
|
- sed
|
||||||
- sparse
|
- sparse
|
||||||
|
- systemtap-sdt-dev
|
||||||
|
- tar
|
||||||
|
- tesseract-ocr
|
||||||
|
- tesseract-ocr-eng
|
||||||
|
- texinfo
|
||||||
- xfslibs-dev
|
- xfslibs-dev
|
||||||
|
- zlib1g-dev
|
||||||
state: present
|
state: present
|
||||||
when:
|
when:
|
||||||
- ansible_facts['distribution'] == 'Ubuntu'
|
- ansible_facts['distribution'] == 'Ubuntu'
|
||||||
|
- ansible_facts['distribution_version'] == '22.04'
|
||||||
|
|
||||||
- name: Install packages to build QEMU on Ubuntu 20.04 on non-s390x
|
- name: Install armhf cross-compile packages to build QEMU on AArch64 Ubuntu 22.04
|
||||||
package:
|
|
||||||
name:
|
|
||||||
- libspice-server-dev
|
|
||||||
- libxen-dev
|
|
||||||
state: present
|
|
||||||
when:
|
|
||||||
- ansible_facts['distribution'] == 'Ubuntu'
|
|
||||||
- ansible_facts['architecture'] == 'aarch64' or ansible_facts['architecture'] == 'x86_64'
|
|
||||||
|
|
||||||
- name: Install basic packages to build QEMU on Ubuntu 20.04
|
|
||||||
package:
|
|
||||||
name:
|
|
||||||
# Originally from tests/docker/dockerfiles/ubuntu2004.docker
|
|
||||||
- clang-10
|
|
||||||
- genisoimage
|
|
||||||
- liblttng-ust-dev
|
|
||||||
- libslirp-dev
|
|
||||||
- netcat-openbsd
|
|
||||||
when:
|
|
||||||
- ansible_facts['distribution'] == 'Ubuntu'
|
|
||||||
- ansible_facts['distribution_version'] == '20.04'
|
|
||||||
|
|
||||||
- name: Install armhf cross-compile packages to build QEMU on AArch64 Ubuntu 20.04
|
|
||||||
package:
|
package:
|
||||||
name:
|
name:
|
||||||
- binutils-arm-linux-gnueabihf
|
- binutils-arm-linux-gnueabihf
|
||||||
@ -128,7 +171,7 @@
|
|||||||
- zlib1g-dev:armhf
|
- zlib1g-dev:armhf
|
||||||
when:
|
when:
|
||||||
- ansible_facts['distribution'] == 'Ubuntu'
|
- ansible_facts['distribution'] == 'Ubuntu'
|
||||||
- ansible_facts['distribution_version'] == '20.04'
|
- ansible_facts['distribution_version'] == '22.04'
|
||||||
- ansible_facts['architecture'] == 'aarch64'
|
- ansible_facts['architecture'] == 'aarch64'
|
||||||
|
|
||||||
- name: Enable EPEL repo on EL8
|
- name: Enable EPEL repo on EL8
|
||||||
|
@ -26,6 +26,7 @@
|
|||||||
user:
|
user:
|
||||||
user: gitlab-runner
|
user: gitlab-runner
|
||||||
group: gitlab-runner
|
group: gitlab-runner
|
||||||
|
groups: kvm
|
||||||
comment: GitLab Runner
|
comment: GitLab Runner
|
||||||
home: /home/gitlab-runner
|
home: /home/gitlab-runner
|
||||||
shell: /bin/bash
|
shell: /bin/bash
|
||||||
|
@ -493,7 +493,7 @@ class ReplayKernelSlow(ReplayKernelBase):
|
|||||||
:avocado: tags=endian:little
|
:avocado: tags=endian:little
|
||||||
:avocado: tags=cpu:I7200
|
:avocado: tags=cpu:I7200
|
||||||
"""
|
"""
|
||||||
kernel_url = ('https://mipsdistros.mips.com/LinuxDistro/nanomips/'
|
kernel_url = ('http://mipsdistros.mips.com/LinuxDistro/nanomips/'
|
||||||
'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/'
|
'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/'
|
||||||
'generic_nano32r6el_page4k.xz')
|
'generic_nano32r6el_page4k.xz')
|
||||||
kernel_hash = '477456aafd2a0f1ddc9482727f20fe9575565dd6'
|
kernel_hash = '477456aafd2a0f1ddc9482727f20fe9575565dd6'
|
||||||
@ -507,7 +507,7 @@ class ReplayKernelSlow(ReplayKernelBase):
|
|||||||
:avocado: tags=endian:little
|
:avocado: tags=endian:little
|
||||||
:avocado: tags=cpu:I7200
|
:avocado: tags=cpu:I7200
|
||||||
"""
|
"""
|
||||||
kernel_url = ('https://mipsdistros.mips.com/LinuxDistro/nanomips/'
|
kernel_url = ('http://mipsdistros.mips.com/LinuxDistro/nanomips/'
|
||||||
'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/'
|
'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/'
|
||||||
'generic_nano32r6el_page16k_up.xz')
|
'generic_nano32r6el_page16k_up.xz')
|
||||||
kernel_hash = 'e882868f944c71c816e832e2303b7874d044a7bc'
|
kernel_hash = 'e882868f944c71c816e832e2303b7874d044a7bc'
|
||||||
@ -521,7 +521,7 @@ class ReplayKernelSlow(ReplayKernelBase):
|
|||||||
:avocado: tags=endian:little
|
:avocado: tags=endian:little
|
||||||
:avocado: tags=cpu:I7200
|
:avocado: tags=cpu:I7200
|
||||||
"""
|
"""
|
||||||
kernel_url = ('https://mipsdistros.mips.com/LinuxDistro/nanomips/'
|
kernel_url = ('http://mipsdistros.mips.com/LinuxDistro/nanomips/'
|
||||||
'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/'
|
'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/'
|
||||||
'generic_nano32r6el_page64k_dbg.xz')
|
'generic_nano32r6el_page64k_dbg.xz')
|
||||||
kernel_hash = '18d1c68f2e23429e266ca39ba5349ccd0aeb7180'
|
kernel_hash = '18d1c68f2e23429e266ca39ba5349ccd0aeb7180'
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
# using a prebuilt toolchains for Xtensa cores from:
|
# using a prebuilt toolchains for Xtensa cores from:
|
||||||
# https://github.com/foss-xtensa/toolchain/releases
|
# https://github.com/foss-xtensa/toolchain/releases
|
||||||
#
|
#
|
||||||
FROM docker.io/library/debian:stretch-slim
|
FROM docker.io/library/debian:11-slim
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
|
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
|
||||||
|
Loading…
Reference in New Issue
Block a user