From: "Alex Bennée" <alex.bennee@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Daniel P. Berrangé" <berrange@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Leonardo Bras" <leobras@redhat.com>,
"Laurent Vivier" <laurent@vivier.eu>,
"Peter Xu" <peterx@redhat.com>,
"Juan Quintela" <quintela@redhat.com>,
"Beraldo Leal" <bleal@redhat.com>,
"Radoslaw Biernacki" <rad@semihalf.com>,
"Qiuhao Li" <Qiuhao.Li@outlook.com>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Yanan Wang" <wangyanan55@huawei.com>,
"Riku Voipio" <riku.voipio@iki.fi>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Mahmoud Mandour" <ma.mandourr@gmail.com>,
"Alexandre Iooss" <erdnaxe@crans.org>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Thomas Huth" <thuth@redhat.com>,
"Laurent Vivier" <lvivier@redhat.com>,
"Bin Meng" <bmeng.cn@gmail.com>,
"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
"Bandan Das" <bsd@redhat.com>, "Cleber Rosa" <crosa@redhat.com>,
"Richard Henderson" <richard.henderson@linaro.org>,
"Leif Lindholm" <quic_llindhol@quicinc.com>,
"Marcin Juszkiewicz" <marcin.juszkiewicz@linaro.org>,
qemu-arm@nongnu.org, "Darren Kenny" <darren.kenny@oracle.com>,
"Alexander Bulekov" <alxndr@bu.edu>
Subject: [PATCH v4 00/38] maintainer omnibus: testing, fuzz, plugins, documentation, gdbstub (pre-PR)
Date: Fri, 30 Jun 2023 19:03:45 +0100 [thread overview]
Message-ID: <20230630180423.558337-1-alex.bennee@linaro.org> (raw)
As softfreeze is fast approaching I thought it would be work combining
my various trees into an omnibus series to ease the review and
merging.
The testing updates exposed a number of latent leaks that confused the
oss-fuzz jobs (hence the test-fuzz addition to help debug that). This
also includes some minor plugin updates and finally some documentation
updates that clean-up and expose the QOM and QDEV APIs which are so
core to emulating anything in QEMU.
I was intending to roll the PR from the last post but as there is
still un-reviewed stuff and some changes I'd missed from previous
reviews so I though it was worth one last posting. I'll roll on
Monday.
v2
- applied a bunch of review tags
- added missing doc suggestions from Paolo
- tweaked the plugin fix for CI
v3
- few more tags
- checkpatch cleanups
- rolled in gdbstub/next
v4
- added #ifdef CONFIG_TCG to the arm_casq_ptw
- fixed plugin memory instrumentation with new helper for mmu access
- added Thomas' test_arm_bpim2u_gmac tweak
- moved pkgs from riscv64-cross patch to earlier qemu-minimal patch
The following are still missing review:
- gdbstub: lightly refactor connection to avoid snprintf
- tests/docker: convert riscv64-cross to lcitool
- tests/lcitool: introduce qemu-minimal
- tests/lcitool: add an explicit gcc-native package (1 acks, 1 sobs, 0 tbs)
- tests/lcitool: update to latest version (1 acks, 1 sobs, 0 tbs)
- tests/qtests: clean-up and fix leak in generic_fuzz
Alex Bennée (22):
gitlab: reduce testing scope of check-gcov
tests/tcg: add mechanism to handle plugin arguments
qemu-keymap: properly check return from xkb_keymap_mod_get_index
scripts/oss-fuzz: add a suppression for keymap
tests/qtests: clean-up and fix leak in generic_fuzz
tests/docker: add test-fuzz
Makefile: add lcitool-refresh to UNCHECKED_GOALS
tests/lcitool: update to latest version
tests/lcitool: add an explicit gcc-native package
tests/lcitool: introduce qemu-minimal
tests/docker: convert riscv64-cross to lcitool
target/arm: make arm_casq_ptw CONFIG_TCG only
plugins: force slow path when plugins instrument memory ops
plugins: fix memory leak while parsing options
plugins: update lockstep to use g_memdup2
docs/devel: add some front matter to the devel index
include/migration: mark vmstate_register() as a legacy function
include/hw/qdev-core: fixup kerneldoc annotations
docs/devel: split qom-api reference into new file
docs/devel: introduce some key concepts for QOM development
gdbstub: lightly refactor connection to avoid snprintf
gdbstub: clean-up vcont handling to avoid goto
Ani Sinha (1):
docs/devel: remind developers to run CI container pipeline when
updating images
Daniel P. Berrangé (2):
gitlab: explicit set artifacts publishing criteria
gitlab: ensure coverage job also publishes meson log
Erik Skultety (1):
tests/lcitool: Bump fedora container versions
Ilya Leoshkevich (8):
linux-user: Expose do_guest_openat() and do_guest_readlink()
linux-user: Add "safe" parameter to do_guest_openat()
linux-user: Emulate /proc/self/smaps
gdbstub: Expose gdb_get_process() and gdb_get_first_cpu_in_process()
gdbstub: Report the actual qemu-user pid
gdbstub: Add support for info proc mappings
docs: Document security implications of debugging
tests/tcg: Add a test for info proc mappings
Marcin Juszkiewicz (1):
tests/avocado: update firmware to enable sbsa-ref/max
Nicholas Piggin (1):
gdbstub: Permit reverse step/break to provide stop response
Philippe Mathieu-Daudé (1):
docs/devel/qom.rst: Correct code style
Thomas Huth (1):
tests/avocado: Make the test_arm_bpim2u_gmac test more reliable
MAINTAINERS | 1 +
docs/devel/index-api.rst | 2 +
docs/devel/index-process.rst | 2 +
docs/devel/index-tcg.rst | 2 +
docs/devel/index.rst | 24 +-
docs/devel/qdev-api.rst | 7 +
docs/devel/qom-api.rst | 9 +
docs/devel/qom.rst | 65 +++-
docs/devel/tcg.rst | 2 +
docs/devel/testing.rst | 6 +
docs/system/gdb.rst | 15 +
Makefile | 2 +-
gdbstub/internals.h | 7 +
include/exec/cpu-all.h | 2 +-
include/exec/exec-all.h | 23 ++
include/hw/core/cpu.h | 17 +
include/hw/qdev-core.h | 368 ++++++++++++------
include/migration/vmstate.h | 10 +-
linux-user/qemu.h | 3 +
accel/tcg/cputlb.c | 41 +-
accel/tcg/user-exec.c | 8 +-
contrib/plugins/cache.c | 2 +-
contrib/plugins/drcov.c | 2 +-
contrib/plugins/execlog.c | 2 +-
contrib/plugins/hotblocks.c | 2 +-
contrib/plugins/hotpages.c | 2 +-
contrib/plugins/howvec.c | 2 +-
contrib/plugins/hwprofile.c | 2 +-
contrib/plugins/lockstep.c | 4 +-
gdbstub/gdbstub.c | 115 ++++--
gdbstub/softmmu.c | 19 +-
gdbstub/user-target.c | 137 +++++++
linux-user/syscall.c | 128 ++++--
qemu-keymap.c | 24 +-
target/arm/ptw.c | 18 +-
target/arm/tcg/sve_helper.c | 4 -
tests/plugin/bb.c | 2 +-
tests/plugin/insn.c | 2 +-
tests/plugin/mem.c | 2 +-
tests/plugin/syscall.c | 2 +-
tests/qtest/fuzz/generic_fuzz.c | 13 +-
.gitlab-ci.d/buildtest-template.yml | 4 +-
.gitlab-ci.d/buildtest.yml | 7 +-
.gitlab-ci.d/crossbuild-template.yml | 1 +
.gitlab-ci.d/crossbuilds.yml | 2 +
.gitlab-ci.d/opensbi.yml | 1 +
scripts/oss-fuzz/lsan_suppressions.txt | 3 +
tests/avocado/boot_linux_console.py | 4 +-
tests/avocado/machine_aarch64_sbsaref.py | 23 +-
tests/docker/dockerfiles/alpine.docker | 4 +-
.../dockerfiles/debian-amd64-cross.docker | 1 +
.../dockerfiles/debian-arm64-cross.docker | 1 +
.../dockerfiles/debian-armel-cross.docker | 1 +
.../dockerfiles/debian-armhf-cross.docker | 1 +
.../dockerfiles/debian-mips64el-cross.docker | 1 +
.../dockerfiles/debian-mipsel-cross.docker | 1 +
.../dockerfiles/debian-ppc64el-cross.docker | 1 +
.../dockerfiles/debian-riscv64-cross.docker | 119 +++---
.../dockerfiles/debian-s390x-cross.docker | 1 +
.../dockerfiles/fedora-win32-cross.docker | 5 +-
.../dockerfiles/fedora-win64-cross.docker | 5 +-
tests/docker/dockerfiles/fedora.docker | 4 +-
tests/docker/test-fuzz | 28 ++
tests/lcitool/libvirt-ci | 2 +-
tests/lcitool/projects/qemu-minimal.yml | 27 ++
tests/lcitool/projects/qemu.yml | 1 +
tests/lcitool/refresh | 18 +-
tests/tcg/Makefile.target | 8 +-
tests/tcg/aarch64/Makefile.target | 8 +
tests/tcg/multiarch/Makefile.target | 9 +-
.../multiarch/gdbstub/test-proc-mappings.py | 65 ++++
71 files changed, 1125 insertions(+), 331 deletions(-)
create mode 100644 docs/devel/qdev-api.rst
create mode 100644 docs/devel/qom-api.rst
create mode 100755 tests/docker/test-fuzz
create mode 100644 tests/lcitool/projects/qemu-minimal.yml
create mode 100644 tests/tcg/multiarch/gdbstub/test-proc-mappings.py
--
2.39.2
next reply other threads:[~2023-06-30 18:06 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-30 18:03 Alex Bennée [this message]
2023-06-30 18:03 ` [PATCH v4 01/38] gitlab: explicit set artifacts publishing criteria Alex Bennée
2023-06-30 18:03 ` [PATCH v4 02/38] gitlab: ensure coverage job also publishes meson log Alex Bennée
2023-06-30 18:03 ` [PATCH v4 03/38] gitlab: reduce testing scope of check-gcov Alex Bennée
2023-06-30 18:03 ` [PATCH v4 04/38] docs/devel: remind developers to run CI container pipeline when updating images Alex Bennée
2023-06-30 18:03 ` [PATCH v4 05/38] tests/tcg: add mechanism to handle plugin arguments Alex Bennée
2023-06-30 18:03 ` [PATCH v4 06/38] qemu-keymap: properly check return from xkb_keymap_mod_get_index Alex Bennée
2023-06-30 18:03 ` [PATCH v4 07/38] scripts/oss-fuzz: add a suppression for keymap Alex Bennée
2023-06-30 18:03 ` [PATCH v4 08/38] tests/qtests: clean-up and fix leak in generic_fuzz Alex Bennée
2023-07-03 8:00 ` Richard Henderson
2023-06-30 18:03 ` [PATCH v4 09/38] tests/docker: add test-fuzz Alex Bennée
2023-06-30 18:03 ` [PATCH v4 10/38] Makefile: add lcitool-refresh to UNCHECKED_GOALS Alex Bennée
2023-06-30 18:03 ` [PATCH v4 11/38] tests/lcitool: update to latest version Alex Bennée
2023-06-30 18:03 ` [PATCH v4 12/38] tests/lcitool: Bump fedora container versions Alex Bennée
2023-06-30 18:03 ` [PATCH v4 13/38] tests/lcitool: add an explicit gcc-native package Alex Bennée
2023-06-30 18:03 ` [PATCH v4 14/38] tests/lcitool: introduce qemu-minimal Alex Bennée
2023-07-03 7:59 ` Richard Henderson
2023-06-30 18:04 ` [PATCH v4 15/38] tests/docker: convert riscv64-cross to lcitool Alex Bennée
2023-07-03 7:59 ` Richard Henderson
2023-06-30 18:04 ` [PATCH v4 16/38] tests/avocado: update firmware to enable sbsa-ref/max Alex Bennée
2023-06-30 18:04 ` [PATCH v4 17/38] tests/avocado: Make the test_arm_bpim2u_gmac test more reliable Alex Bennée
2023-06-30 18:04 ` [PATCH v4 18/38] target/arm: make arm_casq_ptw CONFIG_TCG only Alex Bennée
2023-06-30 18:04 ` [PATCH v4 19/38] plugins: force slow path when plugins instrument memory ops Alex Bennée
2023-06-30 18:04 ` [PATCH v4 20/38] plugins: fix memory leak while parsing options Alex Bennée
2023-06-30 18:04 ` [PATCH v4 21/38] plugins: update lockstep to use g_memdup2 Alex Bennée
2023-06-30 18:04 ` [PATCH v4 22/38] docs/devel: add some front matter to the devel index Alex Bennée
2023-06-30 18:04 ` [PATCH v4 23/38] include/migration: mark vmstate_register() as a legacy function Alex Bennée
2023-06-30 18:04 ` [PATCH v4 24/38] include/hw/qdev-core: fixup kerneldoc annotations Alex Bennée
2023-06-30 18:04 ` [PATCH v4 25/38] docs/devel/qom.rst: Correct code style Alex Bennée
2023-06-30 18:04 ` [PATCH v4 26/38] docs/devel: split qom-api reference into new file Alex Bennée
2023-06-30 18:04 ` [PATCH v4 27/38] docs/devel: introduce some key concepts for QOM development Alex Bennée
2023-06-30 18:04 ` [PATCH v4 28/38] gdbstub: lightly refactor connection to avoid snprintf Alex Bennée
2023-07-03 7:57 ` Richard Henderson
2023-06-30 18:04 ` [PATCH v4 29/38] gdbstub: Permit reverse step/break to provide stop response Alex Bennée
2023-06-30 18:04 ` [PATCH v4 30/38] gdbstub: clean-up vcont handling to avoid goto Alex Bennée
2023-06-30 18:04 ` [PATCH v4 31/38] linux-user: Expose do_guest_openat() and do_guest_readlink() Alex Bennée
2023-06-30 18:04 ` [PATCH v4 32/38] linux-user: Add "safe" parameter to do_guest_openat() Alex Bennée
2023-06-30 18:04 ` [PATCH v4 33/38] linux-user: Emulate /proc/self/smaps Alex Bennée
2023-06-30 18:04 ` [PATCH v4 34/38] gdbstub: Expose gdb_get_process() and gdb_get_first_cpu_in_process() Alex Bennée
2023-06-30 18:04 ` [PATCH v4 35/38] gdbstub: Report the actual qemu-user pid Alex Bennée
2023-06-30 18:04 ` [PATCH v4 36/38] gdbstub: Add support for info proc mappings Alex Bennée
2023-06-30 18:04 ` [PATCH v4 37/38] docs: Document security implications of debugging Alex Bennée
2023-06-30 18:04 ` [PATCH v4 38/38] tests/tcg: Add a test for info proc mappings Alex Bennée
2023-08-08 22:45 ` Richard Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230630180423.558337-1-alex.bennee@linaro.org \
--to=alex.bennee@linaro.org \
--cc=Qiuhao.Li@outlook.com \
--cc=alxndr@bu.edu \
--cc=berrange@redhat.com \
--cc=bleal@redhat.com \
--cc=bmeng.cn@gmail.com \
--cc=bsd@redhat.com \
--cc=crosa@redhat.com \
--cc=darren.kenny@oracle.com \
--cc=eduardo@habkost.net \
--cc=erdnaxe@crans.org \
--cc=laurent@vivier.eu \
--cc=leobras@redhat.com \
--cc=lvivier@redhat.com \
--cc=ma.mandourr@gmail.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=marcin.juszkiewicz@linaro.org \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=quic_llindhol@quicinc.com \
--cc=quintela@redhat.com \
--cc=rad@semihalf.com \
--cc=richard.henderson@linaro.org \
--cc=riku.voipio@iki.fi \
--cc=stefanha@redhat.com \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.com \
--cc=wangyanan55@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).