[PULL 00/23] plugin updates (hwprofile, CF_NOCACHE, io_recompile)

Alex Bennée posted 23 patches 3 years, 3 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210218094706.23038-1-alex.bennee@linaro.org
Maintainers: "Philippe Mathieu-Daudé" <f4bug@amsat.org>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>, Aurelien Jarno <aurelien@aurel32.net>
docs/devel/tcg-plugins.rst               |  34 ++++
include/exec/exec-all.h                  |   9 +-
include/exec/plugin-gen.h                |   4 +-
include/exec/tb-context.h                |   1 -
include/hw/core/cpu.h                    |   4 +-
include/hw/core/tcg-cpu-ops.h            |  13 +-
include/qemu/plugin.h                    |   4 +
include/qemu/qemu-plugin.h               |   6 +
include/qemu/typedefs.h                  |   1 +
target/arm/internals.h                   |   3 +-
accel/tcg/cpu-exec.c                     |  61 ++-----
accel/tcg/plugin-gen.c                   |  35 ++--
accel/tcg/translate-all.c                | 130 +++++--------
accel/tcg/translator.c                   |   5 +-
contrib/ivshmem-server/main.c            |   2 +-
contrib/plugins/hotblocks.c              |   2 +-
contrib/plugins/hotpages.c               |   2 +-
contrib/plugins/howvec.c                 |  19 +-
contrib/plugins/hwprofile.c              | 305 +++++++++++++++++++++++++++++++
contrib/plugins/lockstep.c               |   6 +-
hw/virtio/virtio-pci.c                   |  22 ++-
plugins/api.c                            |  56 ++++--
target/cris/translate.c                  |   2 +-
target/lm32/translate.c                  |   2 +-
target/mips/cpu.c                        |  18 ++
target/moxie/translate.c                 |   2 +-
target/sh4/cpu.c                         |  18 ++
target/unicore32/translate.c             |   2 +-
tests/plugin/insn.c                      |  12 +-
tests/plugin/mem.c                       |  27 ++-
MAINTAINERS                              |   1 +
contrib/plugins/Makefile                 |   1 +
tests/acceptance/tcg_plugins.py          | 148 +++++++++++++++
tests/tcg/i386/Makefile.softmmu-target   |  10 +
tests/tcg/i386/Makefile.target           |   7 +
tests/tcg/x86_64/Makefile.softmmu-target |  10 +
36 files changed, 769 insertions(+), 215 deletions(-)
create mode 100644 contrib/plugins/hwprofile.c
create mode 100644 tests/acceptance/tcg_plugins.py
[PULL 00/23] plugin updates (hwprofile, CF_NOCACHE, io_recompile)
Posted by Alex Bennée 3 years, 3 months ago
The following changes since commit 1af5629673bb5c1592d993f9fb6119a62845f576:

  Merge remote-tracking branch 'remotes/dgilbert-gitlab/tags/pull-virtiofs-20210216' into staging (2021-02-17 14:44:18 +0000)

are available in the Git repository at:

  https://github.com/stsquad/qemu.git tags/pull-plugin-updates-180221-1

for you to fetch changes up to df55e2a701d02bc01b9425843c667fd0cb4cdfa9:

  tests/acceptance: add a memory callback check (2021-02-18 08:19:23 +0000)

----------------------------------------------------------------
Plugin updates:

  - expose vdev name in PCI memory registration
  - new hwprofile plugin
  - bunch of style cleanups to contrib/plugins
  - fix call signature of inline instrumentation
  - re-factor the io_recompile code to push specialisation into hooks
  - add some acceptance tests for the plugins
  - clean-up and remove CF_NOCACHE handling from TCG
  - fix instrumentation of cpu_io_recompile sections
  - expand tests to check inline and cb count the same

----------------------------------------------------------------
Alex Bennée (14):
      hw/virtio/pci: include vdev name in registered PCI sections
      plugins: add API to return a name for a IO device
      plugins: new hwprofile plugin
      accel/tcg/plugin-gen: fix the call signature for inline callbacks
      tests/plugin: expand insn test to detect duplicate instructions
      tests/acceptance: add a new set of tests to exercise plugins
      accel/tcg: actually cache our partial icount TB
      accel/tcg: cache single instruction TB on pending replay exception
      accel/tcg: re-factor non-RAM execution code
      accel/tcg: remove CF_NOCACHE and special cases
      accel/tcg: allow plugin instrumentation to be disable via cflags
      tests/acceptance: add a new tests to detect counting errors
      tests/plugin: allow memory plugin to do both inline and callbacks
      tests/acceptance: add a memory callback check

Richard Henderson (4):
      exec: Move TranslationBlock typedef to qemu/typedefs.h
      accel/tcg: Create io_recompile_replay_branch hook
      target/mips: Create mips_io_recompile_replay_branch
      target/sh4: Create superh_io_recompile_replay_branch

zhouyang (5):
      contrib: Don't use '#' flag of printf format
      contrib: Fix some code style problems, ERROR: "foo * bar" should be "foo *bar"
      contrib: Add spaces around operator
      contrib: space required after that ','
      contrib: Open brace '{' following struct go on the same line

 docs/devel/tcg-plugins.rst               |  34 ++++
 include/exec/exec-all.h                  |   9 +-
 include/exec/plugin-gen.h                |   4 +-
 include/exec/tb-context.h                |   1 -
 include/hw/core/cpu.h                    |   4 +-
 include/hw/core/tcg-cpu-ops.h            |  13 +-
 include/qemu/plugin.h                    |   4 +
 include/qemu/qemu-plugin.h               |   6 +
 include/qemu/typedefs.h                  |   1 +
 target/arm/internals.h                   |   3 +-
 accel/tcg/cpu-exec.c                     |  61 ++-----
 accel/tcg/plugin-gen.c                   |  35 ++--
 accel/tcg/translate-all.c                | 130 +++++--------
 accel/tcg/translator.c                   |   5 +-
 contrib/ivshmem-server/main.c            |   2 +-
 contrib/plugins/hotblocks.c              |   2 +-
 contrib/plugins/hotpages.c               |   2 +-
 contrib/plugins/howvec.c                 |  19 +-
 contrib/plugins/hwprofile.c              | 305 +++++++++++++++++++++++++++++++
 contrib/plugins/lockstep.c               |   6 +-
 hw/virtio/virtio-pci.c                   |  22 ++-
 plugins/api.c                            |  56 ++++--
 target/cris/translate.c                  |   2 +-
 target/lm32/translate.c                  |   2 +-
 target/mips/cpu.c                        |  18 ++
 target/moxie/translate.c                 |   2 +-
 target/sh4/cpu.c                         |  18 ++
 target/unicore32/translate.c             |   2 +-
 tests/plugin/insn.c                      |  12 +-
 tests/plugin/mem.c                       |  27 ++-
 MAINTAINERS                              |   1 +
 contrib/plugins/Makefile                 |   1 +
 tests/acceptance/tcg_plugins.py          | 148 +++++++++++++++
 tests/tcg/i386/Makefile.softmmu-target   |  10 +
 tests/tcg/i386/Makefile.target           |   7 +
 tests/tcg/x86_64/Makefile.softmmu-target |  10 +
 36 files changed, 769 insertions(+), 215 deletions(-)
 create mode 100644 contrib/plugins/hwprofile.c
 create mode 100644 tests/acceptance/tcg_plugins.py


-- 
2.20.1


Re: [PULL 00/23] plugin updates (hwprofile, CF_NOCACHE, io_recompile)
Posted by Peter Maydell 3 years, 3 months ago
On Thu, 18 Feb 2021 at 09:47, Alex Bennée <alex.bennee@linaro.org> wrote:
>
> The following changes since commit 1af5629673bb5c1592d993f9fb6119a62845f576:
>
>   Merge remote-tracking branch 'remotes/dgilbert-gitlab/tags/pull-virtiofs-20210216' into staging (2021-02-17 14:44:18 +0000)
>
> are available in the Git repository at:
>
>   https://github.com/stsquad/qemu.git tags/pull-plugin-updates-180221-1
>
> for you to fetch changes up to df55e2a701d02bc01b9425843c667fd0cb4cdfa9:
>
>   tests/acceptance: add a memory callback check (2021-02-18 08:19:23 +0000)
>
> ----------------------------------------------------------------
> Plugin updates:
>
>   - expose vdev name in PCI memory registration
>   - new hwprofile plugin
>   - bunch of style cleanups to contrib/plugins
>   - fix call signature of inline instrumentation
>   - re-factor the io_recompile code to push specialisation into hooks
>   - add some acceptance tests for the plugins
>   - clean-up and remove CF_NOCACHE handling from TCG
>   - fix instrumentation of cpu_io_recompile sections
>   - expand tests to check inline and cb count the same
>


Applied, thanks.

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

-- PMM