.travis.yml | 15 + Makefile | 16 +- Makefile.target | 2 + accel/stubs/tcg-stub.c | 1 - accel/tcg/Makefile.objs | 1 + accel/tcg/atomic_common.inc.c | 54 ++ accel/tcg/atomic_template.h | 94 ++- accel/tcg/cpu-exec.c | 8 +- accel/tcg/cputlb.c | 60 +- accel/tcg/plugin-gen.c | 932 ++++++++++++++++++++++ accel/tcg/plugin-helpers.h | 5 + accel/tcg/translate-all.c | 15 +- accel/tcg/translator.c | 20 + accel/tcg/user-exec.c | 3 + bsd-user/syscall.c | 24 +- configure | 89 +++ cpus-common.c | 4 + cpus.c | 10 + disas.c | 110 +++ docs/devel/index.rst | 1 + docs/devel/plugins.rst | 112 +++ exec.c | 2 + hw/core/cpu.c | 2 + include/disas/disas.h | 2 + include/exec/cpu-defs.h | 1 + include/exec/cpu_ldst.h | 11 + include/exec/cpu_ldst_template.h | 37 +- include/exec/cpu_ldst_useronly_template.h | 32 +- include/exec/exec-all.h | 64 +- include/exec/helper-gen.h | 1 + include/exec/helper-proto.h | 1 + include/exec/helper-tcg.h | 1 + include/exec/plugin-gen.h | 71 ++ include/exec/translator.h | 62 +- include/hw/core/cpu.h | 19 + include/qemu/log.h | 1 + include/qemu/plugin-memory.h | 40 + include/qemu/plugin.h | 255 ++++++ include/qemu/qemu-plugin.h | 393 +++++++++ include/qemu/queue.h | 10 + include/user/syscall-trace.h | 40 + linux-user/exit.c | 1 + linux-user/main.c | 18 + linux-user/syscall.c | 7 +- plugins/.gitignore | 2 + plugins/Makefile.objs | 21 + plugins/api.c | 341 ++++++++ plugins/core.c | 502 ++++++++++++ plugins/loader.c | 377 +++++++++ plugins/plugin.h | 97 +++ plugins/qemu-plugins.symbols | 40 + qemu-options.hx | 17 + scripts/checkpatch.pl | 2 +- scripts/tracetool/transform.py | 1 + target/alpha/translate.c | 2 +- target/arm/arm_ldst.h | 15 +- target/hppa/translate.c | 2 +- target/i386/translate.c | 10 +- target/m68k/translate.c | 2 +- target/openrisc/translate.c | 2 +- target/ppc/translate.c | 8 +- target/riscv/translate.c | 2 +- target/sh4/translate.c | 4 +- target/sparc/translate.c | 2 +- target/xtensa/translate.c | 4 +- tcg/tcg-op.c | 40 +- tcg/tcg-op.h | 16 + tcg/tcg-opc.h | 3 + tcg/tcg.c | 22 + tcg/tcg.h | 21 + tests/Makefile.include | 11 +- tests/plugin/Makefile | 31 + tests/plugin/bb.c | 64 ++ tests/plugin/empty.c | 30 + tests/plugin/hotblocks.c | 143 ++++ tests/plugin/hotpages.c | 191 +++++ tests/plugin/howvec.c | 352 ++++++++ tests/plugin/insn.c | 61 ++ tests/plugin/mem.c | 97 +++ tests/tcg/Makefile.target | 43 +- tests/tcg/aarch64/Makefile.softmmu-target | 2 +- tests/tcg/aarch64/Makefile.target | 6 + tests/tcg/arm/Makefile.softmmu-target | 1 + tests/tcg/arm/Makefile.target | 6 + tests/tcg/cris/Makefile.target | 2 +- tests/tcg/i386/Makefile.target | 11 +- trace-events | 8 +- trace/mem-internal.h | 39 +- trace/mem.h | 7 +- util/log.c | 3 + vl.c | 11 + 91 files changed, 5159 insertions(+), 162 deletions(-) create mode 100644 accel/tcg/atomic_common.inc.c create mode 100644 accel/tcg/plugin-gen.c create mode 100644 accel/tcg/plugin-helpers.h create mode 100644 docs/devel/plugins.rst create mode 100644 include/exec/plugin-gen.h create mode 100644 include/qemu/plugin-memory.h create mode 100644 include/qemu/plugin.h create mode 100644 include/qemu/qemu-plugin.h create mode 100644 include/user/syscall-trace.h create mode 100644 plugins/.gitignore create mode 100644 plugins/Makefile.objs create mode 100644 plugins/api.c create mode 100644 plugins/core.c create mode 100644 plugins/loader.c create mode 100644 plugins/plugin.h create mode 100644 plugins/qemu-plugins.symbols create mode 100644 tests/plugin/Makefile create mode 100644 tests/plugin/bb.c create mode 100644 tests/plugin/empty.c create mode 100644 tests/plugin/hotblocks.c create mode 100644 tests/plugin/hotpages.c create mode 100644 tests/plugin/howvec.c create mode 100644 tests/plugin/insn.c create mode 100644 tests/plugin/mem.c
Hi, This is the latest iteration of the TCG plugins series. From the documentation: QEMU TCG plugins provide a way for users to run experiments taking advantage of the total system control emulation can have over a guest. It provides a mechanism for plugins to subscribe to events during translation and execution and optionally callback into the plugin during these events. TCG plugins are unable to change the system state only monitor it passively. However they can do this down to an individual instruction granularity including potentially subscribing to all load and store operations. This is mostly a adding signoffs and some patch re-organisation and splitting. For reference the longer notes about what API tweaks didn't make it into this iteration can be found in the previous series: Subject: [PATCH for 4.2 v5 00/55] Support for TCG plugins Date: Mon, 14 Oct 2019 11:48:53 +0100 Message-Id: <20191014104948.4291-1-alex.bennee@linaro.org> Changes of note: - now use gmodule to load symbols instead of dlsym - re-jigged translator_ld to avoid creating more alias functions - moved configure change to final place - moved additional API bits to before examples - merged api changes to examples into final single commit versions - tweaked hwaddr API to talk of device_offset Most of the checkpatch formatting complaints I think are overly picky given the attempt to make table look nice or not wrap for the sake of going one character over. I've included a checkpatch patch to stop bothering me about (foo, /* empty */) comments. As ever there are more details bellow the --- Only a few more un-reviewed patches before I can send the PR: 02 - trace add mmu_index to mem_info 37 - plugin expand the plugin_init function to include 39 - plugin add qemu_plugin_outs helper 54 - scripts chec.pl don t complain about foo em Alex Bennée (20): trace: add mmu_index to mem_info docs/devel: add plugins.rst design document plugin: add implementation of the api plugins: implement helpers for resolving hwaddr configure: add --enable-plugins plugin: expand the plugin_init function to include an info block plugin: add qemu_plugin_insn_disas helper plugin: add qemu_plugin_outs helper tests/tcg/Makefile.target: fix path to config-host.mak tests/tcg: set QEMU_OPTS for all cris runs tests/tcg: move "virtual" tests to EXTRA_TESTS tests/tcg: drop test-i386-fprem from TESTS when not SLOW tests/tcg: enable plugin testing tests/plugin: add a hotblocks plugin tests/plugin: add instruction execution breakdown tests/plugin: add hotpages to analyse memory access patterns accel/stubs: reduce headers from tcg-stub include/exec: wrap cpu_ldst.h in CONFIG_TCG .travis.yml: add --enable-plugins tests scripts/checkpatch.pl: don't complain about (foo, /* empty */) Emilio G. Cota (32): trace: expand mem_info:size_shift to 4 bits cpu: introduce cpu_in_exclusive_context() translate-all: use cpu_in_exclusive_work_context() in tb_flush plugin: add user-facing API plugin: add core code queue: add QTAILQ_REMOVE_SEVERAL cputlb: document get_page_addr_code cputlb: introduce get_page_addr_code_hostp tcg: add tcg_gen_st_ptr plugin-gen: add module for TCG-related code atomic_template: add inline trace/plugin helpers tcg: let plugins instrument virtual memory accesses translate-all: notify plugin code of tb_flush *-user: notify plugin of exit *-user: plugin syscalls cpu: hook plugin vcpu events plugin-gen: add plugin_insn_append translator: add translator_ld{ub,sw,uw,l,q} target/arm: fetch code with translator_ld target/ppc: fetch code with translator_ld target/sh4: fetch code with translator_ld target/i386: fetch code with translator_ld target/hppa: fetch code with translator_ld target/m68k: fetch code with translator_ld target/alpha: fetch code with translator_ld target/riscv: fetch code with translator_ld target/sparc: fetch code with translator_ld target/xtensa: fetch code with translator_ld target/openrisc: fetch code with translator_ld translator: inject instrumentation from plugins plugin: add API symbols to qemu-plugins.symbols tests/plugin: add sample plugins Lluís Vilanova (2): vl: support -plugin option linux-user: support -plugin option .travis.yml | 15 + Makefile | 16 +- Makefile.target | 2 + accel/stubs/tcg-stub.c | 1 - accel/tcg/Makefile.objs | 1 + accel/tcg/atomic_common.inc.c | 54 ++ accel/tcg/atomic_template.h | 94 ++- accel/tcg/cpu-exec.c | 8 +- accel/tcg/cputlb.c | 60 +- accel/tcg/plugin-gen.c | 932 ++++++++++++++++++++++ accel/tcg/plugin-helpers.h | 5 + accel/tcg/translate-all.c | 15 +- accel/tcg/translator.c | 20 + accel/tcg/user-exec.c | 3 + bsd-user/syscall.c | 24 +- configure | 89 +++ cpus-common.c | 4 + cpus.c | 10 + disas.c | 110 +++ docs/devel/index.rst | 1 + docs/devel/plugins.rst | 112 +++ exec.c | 2 + hw/core/cpu.c | 2 + include/disas/disas.h | 2 + include/exec/cpu-defs.h | 1 + include/exec/cpu_ldst.h | 11 + include/exec/cpu_ldst_template.h | 37 +- include/exec/cpu_ldst_useronly_template.h | 32 +- include/exec/exec-all.h | 64 +- include/exec/helper-gen.h | 1 + include/exec/helper-proto.h | 1 + include/exec/helper-tcg.h | 1 + include/exec/plugin-gen.h | 71 ++ include/exec/translator.h | 62 +- include/hw/core/cpu.h | 19 + include/qemu/log.h | 1 + include/qemu/plugin-memory.h | 40 + include/qemu/plugin.h | 255 ++++++ include/qemu/qemu-plugin.h | 393 +++++++++ include/qemu/queue.h | 10 + include/user/syscall-trace.h | 40 + linux-user/exit.c | 1 + linux-user/main.c | 18 + linux-user/syscall.c | 7 +- plugins/.gitignore | 2 + plugins/Makefile.objs | 21 + plugins/api.c | 341 ++++++++ plugins/core.c | 502 ++++++++++++ plugins/loader.c | 377 +++++++++ plugins/plugin.h | 97 +++ plugins/qemu-plugins.symbols | 40 + qemu-options.hx | 17 + scripts/checkpatch.pl | 2 +- scripts/tracetool/transform.py | 1 + target/alpha/translate.c | 2 +- target/arm/arm_ldst.h | 15 +- target/hppa/translate.c | 2 +- target/i386/translate.c | 10 +- target/m68k/translate.c | 2 +- target/openrisc/translate.c | 2 +- target/ppc/translate.c | 8 +- target/riscv/translate.c | 2 +- target/sh4/translate.c | 4 +- target/sparc/translate.c | 2 +- target/xtensa/translate.c | 4 +- tcg/tcg-op.c | 40 +- tcg/tcg-op.h | 16 + tcg/tcg-opc.h | 3 + tcg/tcg.c | 22 + tcg/tcg.h | 21 + tests/Makefile.include | 11 +- tests/plugin/Makefile | 31 + tests/plugin/bb.c | 64 ++ tests/plugin/empty.c | 30 + tests/plugin/hotblocks.c | 143 ++++ tests/plugin/hotpages.c | 191 +++++ tests/plugin/howvec.c | 352 ++++++++ tests/plugin/insn.c | 61 ++ tests/plugin/mem.c | 97 +++ tests/tcg/Makefile.target | 43 +- tests/tcg/aarch64/Makefile.softmmu-target | 2 +- tests/tcg/aarch64/Makefile.target | 6 + tests/tcg/arm/Makefile.softmmu-target | 1 + tests/tcg/arm/Makefile.target | 6 + tests/tcg/cris/Makefile.target | 2 +- tests/tcg/i386/Makefile.target | 11 +- trace-events | 8 +- trace/mem-internal.h | 39 +- trace/mem.h | 7 +- util/log.c | 3 + vl.c | 11 + 91 files changed, 5159 insertions(+), 162 deletions(-) create mode 100644 accel/tcg/atomic_common.inc.c create mode 100644 accel/tcg/plugin-gen.c create mode 100644 accel/tcg/plugin-helpers.h create mode 100644 docs/devel/plugins.rst create mode 100644 include/exec/plugin-gen.h create mode 100644 include/qemu/plugin-memory.h create mode 100644 include/qemu/plugin.h create mode 100644 include/qemu/qemu-plugin.h create mode 100644 include/user/syscall-trace.h create mode 100644 plugins/.gitignore create mode 100644 plugins/Makefile.objs create mode 100644 plugins/api.c create mode 100644 plugins/core.c create mode 100644 plugins/loader.c create mode 100644 plugins/plugin.h create mode 100644 plugins/qemu-plugins.symbols create mode 100644 tests/plugin/Makefile create mode 100644 tests/plugin/bb.c create mode 100644 tests/plugin/empty.c create mode 100644 tests/plugin/hotblocks.c create mode 100644 tests/plugin/hotpages.c create mode 100644 tests/plugin/howvec.c create mode 100644 tests/plugin/insn.c create mode 100644 tests/plugin/mem.c -- 2.20.1
Patchew URL: https://patchew.org/QEMU/20191017131615.19660-1-alex.bennee@linaro.org/ Hi, This series seems to have some coding style problems. See output below for more information: Subject: [PATCH for 4.2 v6 00/54] Support for TCG plugins Type: series Message-id: 20191017131615.19660-1-alex.bennee@linaro.org === TEST SCRIPT BEGIN === #!/bin/bash git rev-parse base > /dev/null || exit 0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram ./scripts/checkpatch.pl --mailback base.. === TEST SCRIPT END === Switched to a new branch 'test' d836eae scripts/checkpatch.pl: don't complain about (foo, /* empty */) 6a6189b .travis.yml: add --enable-plugins tests b648611 include/exec: wrap cpu_ldst.h in CONFIG_TCG 52b9c19 accel/stubs: reduce headers from tcg-stub 4d74b4e tests/plugin: add hotpages to analyse memory access patterns 8ef1ff4 tests/plugin: add instruction execution breakdown abb472d tests/plugin: add a hotblocks plugin 20457aa tests/tcg: enable plugin testing 7b1a7a4 tests/tcg: drop test-i386-fprem from TESTS when not SLOW 4cb0cf5 tests/tcg: move "virtual" tests to EXTRA_TESTS 81c8812 tests/tcg: set QEMU_OPTS for all cris runs 0a8a37a tests/tcg/Makefile.target: fix path to config-host.mak 18cb7f9 tests/plugin: add sample plugins bc1a966 linux-user: support -plugin option 089f2f2 vl: support -plugin option bf99ebb plugin: add qemu_plugin_outs helper ee2763a plugin: add qemu_plugin_insn_disas helper 9f3330f plugin: expand the plugin_init function to include an info block f0f4fc1 plugin: add API symbols to qemu-plugins.symbols 1ec6198 configure: add --enable-plugins 1e03ebf translator: inject instrumentation from plugins 82417cf target/openrisc: fetch code with translator_ld 00499c8 target/xtensa: fetch code with translator_ld f876786 target/sparc: fetch code with translator_ld a85500f target/riscv: fetch code with translator_ld ff9b482 target/alpha: fetch code with translator_ld cd5e198 target/m68k: fetch code with translator_ld 0dd9382 target/hppa: fetch code with translator_ld abddb18 target/i386: fetch code with translator_ld cf525e9 target/sh4: fetch code with translator_ld 21f7317 target/ppc: fetch code with translator_ld e57f15c target/arm: fetch code with translator_ld 7268524 translator: add translator_ld{ub,sw,uw,l,q} bb715ab plugin-gen: add plugin_insn_append a99cb36 cpu: hook plugin vcpu events 87f6ee8 *-user: plugin syscalls d1149f5 *-user: notify plugin of exit d04ce7b translate-all: notify plugin code of tb_flush 80caa08 plugins: implement helpers for resolving hwaddr 9639665 tcg: let plugins instrument virtual memory accesses 3a440fd atomic_template: add inline trace/plugin helpers 3075615 plugin-gen: add module for TCG-related code d12bc8c tcg: add tcg_gen_st_ptr 0acadc3 cputlb: introduce get_page_addr_code_hostp a1d7d7f cputlb: document get_page_addr_code ae7c047 queue: add QTAILQ_REMOVE_SEVERAL d7b743f plugin: add implementation of the api fdcaec1 plugin: add core code 9aa3f8b plugin: add user-facing API 274e91a docs/devel: add plugins.rst design document dcbc372 translate-all: use cpu_in_exclusive_work_context() in tb_flush 9ef9697 cpu: introduce cpu_in_exclusive_context() 5f2168d trace: add mmu_index to mem_info ec66990 trace: expand mem_info:size_shift to 4 bits === OUTPUT BEGIN === 1/54 Checking commit ec6699058f0d (trace: expand mem_info:size_shift to 4 bits) 2/54 Checking commit 5f2168d69198 (trace: add mmu_index to mem_info) 3/54 Checking commit 9ef9697395c6 (cpu: introduce cpu_in_exclusive_context()) 4/54 Checking commit dcbc37211913 (translate-all: use cpu_in_exclusive_work_context() in tb_flush) 5/54 Checking commit 274e91ac8058 (docs/devel: add plugins.rst design document) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #24: new file mode 100644 total: 0 errors, 1 warnings, 116 lines checked Patch 5/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 6/54 Checking commit 9aa3f8bc190f (plugin: add user-facing API) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #15: new file mode 100644 WARNING: architecture specific defines should be avoided #41: FILE: include/qemu/qemu-plugin.h:22: +#if defined _WIN32 || defined __CYGWIN__ WARNING: architecture specific defines should be avoided #49: FILE: include/qemu/qemu-plugin.h:30: + #if __GNUC__ >= 4 total: 0 errors, 3 warnings, 351 lines checked Patch 6/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 7/54 Checking commit fdcaec175fc9 (plugin: add core code) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #99: new file mode 100644 ERROR: externs should be avoided in .c files #947: FILE: plugins/loader.c:63: +extern struct qemu_plugin_state plugin; total: 1 errors, 1 warnings, 1284 lines checked Patch 7/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 8/54 Checking commit d7b743fa06bc (plugin: add implementation of the api) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #36: new file mode 100644 ERROR: "foo * bar" should be "foo *bar" #295: FILE: plugins/api.c:255: +static MachineState * get_ms(void) total: 1 errors, 1 warnings, 290 lines checked Patch 8/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 9/54 Checking commit ae7c047d61b8 (queue: add QTAILQ_REMOVE_SEVERAL) WARNING: Block comments use a leading /* on a separate line #32: FILE: include/qemu/queue.h:431: + } while (/*CONSTCOND*/0) total: 0 errors, 1 warnings, 16 lines checked Patch 9/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 10/54 Checking commit a1d7d7f7a0e1 (cputlb: document get_page_addr_code) 11/54 Checking commit 0acadc319972 (cputlb: introduce get_page_addr_code_hostp) 12/54 Checking commit d12bc8c3e2dd (tcg: add tcg_gen_st_ptr) 13/54 Checking commit 307561543fb6 (plugin-gen: add module for TCG-related code) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #48: new file mode 100644 total: 0 errors, 1 warnings, 1123 lines checked Patch 13/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 14/54 Checking commit 3a440fd23537 (atomic_template: add inline trace/plugin helpers) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #15: new file mode 100644 total: 0 errors, 1 warnings, 299 lines checked Patch 14/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 15/54 Checking commit 9639665cd1db (tcg: let plugins instrument virtual memory accesses) WARNING: line over 80 characters #111: FILE: include/exec/cpu_ldst_template.h:91: + uint16_t meminfo = trace_mem_build_info(SHIFT, false, MO_TE, false, mmu_idx); total: 0 errors, 1 warnings, 325 lines checked Patch 15/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 16/54 Checking commit 80caa08b83b6 (plugins: implement helpers for resolving hwaddr) ERROR: line over 90 characters #61: FILE: accel/tcg/cputlb.c:1279: + data->v.io.section = iotlb_to_section(cpu, iotlbentry->addr, iotlbentry->attrs); WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #78: new file mode 100644 WARNING: line over 80 characters #137: FILE: include/qemu/qemu-plugin.h:294: +uint64_t qemu_plugin_hwaddr_device_offset(const struct qemu_plugin_hwaddr *haddr); WARNING: line over 80 characters #193: FILE: plugins/api.c:279: +uint64_t qemu_plugin_hwaddr_device_offset(const struct qemu_plugin_hwaddr *haddr) WARNING: line over 80 characters #198: FILE: plugins/api.c:284: + ram_addr_t ram_addr = qemu_ram_addr_from_host((void *) haddr->v.ram.hostaddr); WARNING: line over 80 characters #200: FILE: plugins/api.c:286: + error_report("Bad ram pointer %"PRIx64"", haddr->v.ram.hostaddr); total: 1 errors, 5 warnings, 174 lines checked Patch 16/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 17/54 Checking commit d04ce7b13bb6 (translate-all: notify plugin code of tb_flush) 18/54 Checking commit d1149f5a33f4 (*-user: notify plugin of exit) 19/54 Checking commit 87f6ee8a1d85 (*-user: plugin syscalls) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #93: new file mode 100644 total: 0 errors, 1 warnings, 127 lines checked Patch 19/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 20/54 Checking commit a99cb36d7222 (cpu: hook plugin vcpu events) 21/54 Checking commit bb715ab2fc98 (plugin-gen: add plugin_insn_append) 22/54 Checking commit 7268524a6762 (translator: add translator_ld{ub,sw,uw,l,q}) ERROR: space prohibited before that close parenthesis ')' #118: FILE: include/exec/translator.h:198: +GEN_TRANSLATOR_LD(translator_ldub, ldb, ldub, uint8_t, 0, /* no swap */ ) total: 1 errors, 0 warnings, 95 lines checked Patch 22/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 23/54 Checking commit e57f15caee2c (target/arm: fetch code with translator_ld) 24/54 Checking commit 21f731780d7b (target/ppc: fetch code with translator_ld) 25/54 Checking commit cf525e9be4d8 (target/sh4: fetch code with translator_ld) 26/54 Checking commit abddb18720b0 (target/i386: fetch code with translator_ld) 27/54 Checking commit 0dd938267652 (target/hppa: fetch code with translator_ld) 28/54 Checking commit cd5e198a31a3 (target/m68k: fetch code with translator_ld) 29/54 Checking commit ff9b48215642 (target/alpha: fetch code with translator_ld) 30/54 Checking commit a85500f99f2d (target/riscv: fetch code with translator_ld) 31/54 Checking commit f876786c16ea (target/sparc: fetch code with translator_ld) 32/54 Checking commit 00499c8b0294 (target/xtensa: fetch code with translator_ld) 33/54 Checking commit 82417cf6c045 (target/openrisc: fetch code with translator_ld) 34/54 Checking commit 1e03ebf398a6 (translator: inject instrumentation from plugins) 35/54 Checking commit 1ec6198f7f3e (configure: add --enable-plugins) 36/54 Checking commit f0f4fc1fdc51 (plugin: add API symbols to qemu-plugins.symbols) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #136: new file mode 100644 total: 0 errors, 1 warnings, 166 lines checked Patch 36/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 37/54 Checking commit 9f3330fdf451 (plugin: expand the plugin_init function to include an info block) ERROR: line over 90 characters #84: FILE: plugins/loader.c:65: +typedef int (*qemu_plugin_install_func_t)(qemu_plugin_id_t, const qemu_info_t *, int, char **); total: 1 errors, 0 warnings, 100 lines checked Patch 37/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 38/54 Checking commit ee2763ab0cda (plugin: add qemu_plugin_insn_disas helper) 39/54 Checking commit bf99ebbeef7d (plugin: add qemu_plugin_outs helper) 40/54 Checking commit 089f2f2dd71d (vl: support -plugin option) 41/54 Checking commit bc1a966d26f6 (linux-user: support -plugin option) 42/54 Checking commit 18cb7f912d0d (tests/plugin: add sample plugins) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 total: 0 errors, 1 warnings, 287 lines checked Patch 42/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 43/54 Checking commit 0a8a37a897c6 (tests/tcg/Makefile.target: fix path to config-host.mak) 44/54 Checking commit 81c8812c0f34 (tests/tcg: set QEMU_OPTS for all cris runs) 45/54 Checking commit 4cb0cf55517d (tests/tcg: move "virtual" tests to EXTRA_TESTS) 46/54 Checking commit 7b1a7a48e5b5 (tests/tcg: drop test-i386-fprem from TESTS when not SLOW) 47/54 Checking commit 20457aac4f30 (tests/tcg: enable plugin testing) 48/54 Checking commit abb472dc5c7d (tests/plugin: add a hotblocks plugin) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #33: new file mode 100644 WARNING: line over 80 characters #101: FILE: tests/plugin/hotblocks.c:64: + g_string_append_printf(report, "%#016"PRIx64", %d, %ld, %"PRId64"\n", total: 0 errors, 2 warnings, 150 lines checked Patch 48/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 49/54 Checking commit 8ef1ff47fded (tests/plugin: add instruction execution breakdown) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 ERROR: space required after that ',' (ctx:VxV) #100: FILE: tests/plugin/howvec.c:69: + { " Add/Sub (imm,tags)","asit", 0x1f800000, 0x11800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #123: FILE: tests/plugin/howvec.c:92: + { " AdvSimd ldstmult++","advlsmp",0xbfb00000, 0x0c800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #123: FILE: tests/plugin/howvec.c:92: + { " AdvSimd ldstmult++","advlsmp",0xbfb00000, 0x0c800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #125: FILE: tests/plugin/howvec.c:94: + { " AdvSimd ldst++", "advlssp",0xbf800000, 0x0d800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #129: FILE: tests/plugin/howvec.c:98: + { " ldst noalloc pair", "ldstnap",0x3b800000, 0x28000000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #133: FILE: tests/plugin/howvec.c:102: + { " ldst reg (reg off)","ldstro", 0x3b200b00, 0x38200800, COUNT_CLASS}, ^ WARNING: line over 80 characters #154: FILE: tests/plugin/howvec.c:123: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, WARNING: line over 80 characters #163: FILE: tests/plugin/howvec.c:132: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, WARNING: line over 80 characters #168: FILE: tests/plugin/howvec.c:137: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, ERROR: that open brace { should be on the previous line #178: FILE: tests/plugin/howvec.c:147: +static ClassSelector class_tables[] = +{ WARNING: line over 80 characters #213: FILE: tests/plugin/howvec.c:182: + g_string_append_printf(report, "Class: %-24s\tcounted individually\n", ERROR: space required after that ',' (ctx:VxV) #229: FILE: tests/plugin/howvec.c:198: + g_string_append_printf(report,"Individual Instructions:\n"); ^ WARNING: line over 80 characters #235: FILE: tests/plugin/howvec.c:204: + g_string_append_printf(report, "Instr: %-24s\t(%ld hits)\t(op=%#08x/%s)\n", ERROR: "foo * bar" should be "foo *bar" #259: FILE: tests/plugin/howvec.c:228: +static uint64_t * find_counter(struct qemu_plugin_insn *insn) WARNING: line over 80 characters #295: FILE: tests/plugin/howvec.c:264: + GUINT_TO_POINTER(opcode)); total: 9 errors, 7 warnings, 359 lines checked Patch 49/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 50/54 Checking commit 4d74b4e6c3af (tests/plugin: add hotpages to analyse memory access patterns) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 WARNING: line over 80 characters #107: FILE: tests/plugin/hotpages.c:76: + g_autoptr(GString) report = g_string_new("Addr, RCPUs, Reads, WCPUs, Writes\n"); total: 0 errors, 2 warnings, 198 lines checked Patch 50/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 51/54 Checking commit 52b9c194674d (accel/stubs: reduce headers from tcg-stub) 52/54 Checking commit b64861116da7 (include/exec: wrap cpu_ldst.h in CONFIG_TCG) 53/54 Checking commit 6a6189babbbe (.travis.yml: add --enable-plugins tests) 54/54 Checking commit d836eaec1f37 (scripts/checkpatch.pl: don't complain about (foo, /* empty */)) === OUTPUT END === Test command exited with code: 1 The full log is available at http://patchew.org/logs/20191017131615.19660-1-alex.bennee@linaro.org/testing.checkpatch/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
Alex Bennée <alex.bennee@linaro.org> writes: > Hi, > > This is the latest iteration of the TCG plugins series. From the documentation: > > QEMU TCG plugins provide a way for users to run experiments taking > advantage of the total system control emulation can have over a guest. > It provides a mechanism for plugins to subscribe to events during > translation and execution and optionally callback into the plugin > during these events. TCG plugins are unable to change the system state > only monitor it passively. However they can do this down to an > individual instruction granularity including potentially subscribing > to all load and store operations. > > This is mostly a adding signoffs and some patch re-organisation and > splitting. For reference the longer notes about what API tweaks didn't > make it into this iteration can be found in the previous series: > > Subject: [PATCH for 4.2 v5 00/55] Support for TCG plugins > Date: Mon, 14 Oct 2019 11:48:53 +0100 > Message-Id: <20191014104948.4291-1-alex.bennee@linaro.org> > > Changes of note: > > - now use gmodule to load symbols instead of dlsym > - re-jigged translator_ld to avoid creating more alias functions > - moved configure change to final place > - moved additional API bits to before examples > - merged api changes to examples into final single commit versions > - tweaked hwaddr API to talk of device_offset > > Most of the checkpatch formatting complaints I think are overly picky > given the attempt to make table look nice or not wrap for the sake of > going one character over. I've included a checkpatch patch to stop > bothering me about (foo, /* empty */) comments. As ever there are more > details bellow the --- > > Only a few more un-reviewed patches before I can send the PR: > > 02 - trace add mmu_index to mem_info > 37 - plugin expand the plugin_init function to include > 39 - plugin add qemu_plugin_outs helper > 54 - scripts chec.pl don t complain about foo em Ping? I've made two minor changes which you can currently see in: https://github.com/stsquad/qemu/tree/plugins/plugins-v7 I've made a tweak to translator_ld which takes advantage of the cputlb cleanup: Subject: [PATCH v2] cputlb: ensure _cmmu helper functions follow the naming standard Date: Mon, 21 Oct 2019 16:09:10 +0100 Message-Id: <20191021150910.23216-1-alex.bennee@linaro.org> and I've added a MAINTAINERS entry. I didn't think it was worth spamming the list before I sent my PR. Let me know if you want a final v7 posting to the list. -- Alex Bennée
Patchew URL: https://patchew.org/QEMU/20191017131615.19660-1-alex.bennee@linaro.org/ Hi, This series seems to have some coding style problems. See output below for more information: Subject: [PATCH for 4.2 v6 00/54] Support for TCG plugins Type: series Message-id: 20191017131615.19660-1-alex.bennee@linaro.org === TEST SCRIPT BEGIN === #!/bin/bash git rev-parse base > /dev/null || exit 0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram ./scripts/checkpatch.pl --mailback base.. === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu * [new tag] patchew/20191017185110.539-1-richard.henderson@linaro.org -> patchew/20191017185110.539-1-richard.henderson@linaro.org Switched to a new branch 'test' 424fada scripts/checkpatch.pl: don't complain about (foo, /* empty */) e435145 .travis.yml: add --enable-plugins tests 800ea86 include/exec: wrap cpu_ldst.h in CONFIG_TCG cace239 accel/stubs: reduce headers from tcg-stub 17ea011 tests/plugin: add hotpages to analyse memory access patterns d1e0501 tests/plugin: add instruction execution breakdown 5e851ac tests/plugin: add a hotblocks plugin 031417f tests/tcg: enable plugin testing cd80d32 tests/tcg: drop test-i386-fprem from TESTS when not SLOW 836d35e tests/tcg: move "virtual" tests to EXTRA_TESTS e58c3d7 tests/tcg: set QEMU_OPTS for all cris runs afdfac7 tests/tcg/Makefile.target: fix path to config-host.mak efa9ea6 tests/plugin: add sample plugins c996ea3 linux-user: support -plugin option 78836ba vl: support -plugin option a1403cc plugin: add qemu_plugin_outs helper 55a654e plugin: add qemu_plugin_insn_disas helper 1aece9d plugin: expand the plugin_init function to include an info block 247bda5 plugin: add API symbols to qemu-plugins.symbols d6b63ea configure: add --enable-plugins 3aee2bc translator: inject instrumentation from plugins c521ff1 target/openrisc: fetch code with translator_ld afb1f51 target/xtensa: fetch code with translator_ld d5c9d50 target/sparc: fetch code with translator_ld 9d57fb8 target/riscv: fetch code with translator_ld 7aa7c68 target/alpha: fetch code with translator_ld 8d6a86c target/m68k: fetch code with translator_ld 6568577 target/hppa: fetch code with translator_ld 50cf013 target/i386: fetch code with translator_ld 01c5eeb target/sh4: fetch code with translator_ld 907646f target/ppc: fetch code with translator_ld 9526a0d target/arm: fetch code with translator_ld 3fe9ad0 translator: add translator_ld{ub,sw,uw,l,q} 81c8125 plugin-gen: add plugin_insn_append bd1b9b0 cpu: hook plugin vcpu events 7fa995f *-user: plugin syscalls c2af9e4 *-user: notify plugin of exit 3d94758 translate-all: notify plugin code of tb_flush d9a108b plugins: implement helpers for resolving hwaddr 81e3a25 tcg: let plugins instrument virtual memory accesses fe8a752 atomic_template: add inline trace/plugin helpers 87cdf09 plugin-gen: add module for TCG-related code 85a2f31 tcg: add tcg_gen_st_ptr 0f2859a cputlb: introduce get_page_addr_code_hostp 3f80bfe cputlb: document get_page_addr_code f922c60 queue: add QTAILQ_REMOVE_SEVERAL 2b99a40 plugin: add implementation of the api 7530e15 plugin: add core code 5a3bcca plugin: add user-facing API 2edfb61 docs/devel: add plugins.rst design document 047e572 translate-all: use cpu_in_exclusive_work_context() in tb_flush 115a3d6 cpu: introduce cpu_in_exclusive_context() 31eb5a5 trace: add mmu_index to mem_info 02b2b09 trace: expand mem_info:size_shift to 4 bits === OUTPUT BEGIN === 1/54 Checking commit 02b2b09bb33a (trace: expand mem_info:size_shift to 4 bits) 2/54 Checking commit 31eb5a5236bf (trace: add mmu_index to mem_info) 3/54 Checking commit 115a3d682ea4 (cpu: introduce cpu_in_exclusive_context()) 4/54 Checking commit 047e57223d83 (translate-all: use cpu_in_exclusive_work_context() in tb_flush) 5/54 Checking commit 2edfb615818c (docs/devel: add plugins.rst design document) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #24: new file mode 100644 total: 0 errors, 1 warnings, 116 lines checked Patch 5/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 6/54 Checking commit 5a3bcca9a3f2 (plugin: add user-facing API) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #15: new file mode 100644 WARNING: architecture specific defines should be avoided #41: FILE: include/qemu/qemu-plugin.h:22: +#if defined _WIN32 || defined __CYGWIN__ WARNING: architecture specific defines should be avoided #49: FILE: include/qemu/qemu-plugin.h:30: + #if __GNUC__ >= 4 total: 0 errors, 3 warnings, 351 lines checked Patch 6/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 7/54 Checking commit 7530e151b9fd (plugin: add core code) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #99: new file mode 100644 ERROR: externs should be avoided in .c files #947: FILE: plugins/loader.c:63: +extern struct qemu_plugin_state plugin; total: 1 errors, 1 warnings, 1284 lines checked Patch 7/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 8/54 Checking commit 2b99a4056e5e (plugin: add implementation of the api) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #36: new file mode 100644 ERROR: "foo * bar" should be "foo *bar" #295: FILE: plugins/api.c:255: +static MachineState * get_ms(void) total: 1 errors, 1 warnings, 290 lines checked Patch 8/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 9/54 Checking commit f922c60682c5 (queue: add QTAILQ_REMOVE_SEVERAL) WARNING: Block comments use a leading /* on a separate line #32: FILE: include/qemu/queue.h:431: + } while (/*CONSTCOND*/0) total: 0 errors, 1 warnings, 16 lines checked Patch 9/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 10/54 Checking commit 3f80bfe2f96d (cputlb: document get_page_addr_code) 11/54 Checking commit 0f2859a5487c (cputlb: introduce get_page_addr_code_hostp) 12/54 Checking commit 85a2f31fc0d0 (tcg: add tcg_gen_st_ptr) 13/54 Checking commit 87cdf0983ce9 (plugin-gen: add module for TCG-related code) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #48: new file mode 100644 total: 0 errors, 1 warnings, 1123 lines checked Patch 13/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 14/54 Checking commit fe8a752ceac1 (atomic_template: add inline trace/plugin helpers) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #15: new file mode 100644 total: 0 errors, 1 warnings, 299 lines checked Patch 14/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 15/54 Checking commit 81e3a259f840 (tcg: let plugins instrument virtual memory accesses) WARNING: line over 80 characters #111: FILE: include/exec/cpu_ldst_template.h:91: + uint16_t meminfo = trace_mem_build_info(SHIFT, false, MO_TE, false, mmu_idx); total: 0 errors, 1 warnings, 325 lines checked Patch 15/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 16/54 Checking commit d9a108ba74c8 (plugins: implement helpers for resolving hwaddr) ERROR: line over 90 characters #61: FILE: accel/tcg/cputlb.c:1279: + data->v.io.section = iotlb_to_section(cpu, iotlbentry->addr, iotlbentry->attrs); WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #78: new file mode 100644 WARNING: line over 80 characters #137: FILE: include/qemu/qemu-plugin.h:294: +uint64_t qemu_plugin_hwaddr_device_offset(const struct qemu_plugin_hwaddr *haddr); WARNING: line over 80 characters #193: FILE: plugins/api.c:279: +uint64_t qemu_plugin_hwaddr_device_offset(const struct qemu_plugin_hwaddr *haddr) WARNING: line over 80 characters #198: FILE: plugins/api.c:284: + ram_addr_t ram_addr = qemu_ram_addr_from_host((void *) haddr->v.ram.hostaddr); WARNING: line over 80 characters #200: FILE: plugins/api.c:286: + error_report("Bad ram pointer %"PRIx64"", haddr->v.ram.hostaddr); total: 1 errors, 5 warnings, 174 lines checked Patch 16/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 17/54 Checking commit 3d94758e07c4 (translate-all: notify plugin code of tb_flush) 18/54 Checking commit c2af9e46b38b (*-user: notify plugin of exit) 19/54 Checking commit 7fa995fbf335 (*-user: plugin syscalls) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #93: new file mode 100644 total: 0 errors, 1 warnings, 127 lines checked Patch 19/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 20/54 Checking commit bd1b9b025e4d (cpu: hook plugin vcpu events) 21/54 Checking commit 81c8125e35cd (plugin-gen: add plugin_insn_append) 22/54 Checking commit 3fe9ad03d7aa (translator: add translator_ld{ub,sw,uw,l,q}) ERROR: space prohibited before that close parenthesis ')' #118: FILE: include/exec/translator.h:198: +GEN_TRANSLATOR_LD(translator_ldub, ldb, ldub, uint8_t, 0, /* no swap */ ) total: 1 errors, 0 warnings, 95 lines checked Patch 22/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 23/54 Checking commit 9526a0da1e1c (target/arm: fetch code with translator_ld) 24/54 Checking commit 907646f9be4b (target/ppc: fetch code with translator_ld) 25/54 Checking commit 01c5eebe48bf (target/sh4: fetch code with translator_ld) 26/54 Checking commit 50cf013b7e17 (target/i386: fetch code with translator_ld) 27/54 Checking commit 656857780e94 (target/hppa: fetch code with translator_ld) 28/54 Checking commit 8d6a86c77096 (target/m68k: fetch code with translator_ld) 29/54 Checking commit 7aa7c680b9f8 (target/alpha: fetch code with translator_ld) 30/54 Checking commit 9d57fb88230d (target/riscv: fetch code with translator_ld) 31/54 Checking commit d5c9d509ef57 (target/sparc: fetch code with translator_ld) 32/54 Checking commit afb1f511a450 (target/xtensa: fetch code with translator_ld) 33/54 Checking commit c521ff16b95d (target/openrisc: fetch code with translator_ld) 34/54 Checking commit 3aee2bc39a59 (translator: inject instrumentation from plugins) 35/54 Checking commit d6b63ea4d0f2 (configure: add --enable-plugins) 36/54 Checking commit 247bda5f4517 (plugin: add API symbols to qemu-plugins.symbols) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #136: new file mode 100644 total: 0 errors, 1 warnings, 166 lines checked Patch 36/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 37/54 Checking commit 1aece9df1a24 (plugin: expand the plugin_init function to include an info block) ERROR: line over 90 characters #84: FILE: plugins/loader.c:65: +typedef int (*qemu_plugin_install_func_t)(qemu_plugin_id_t, const qemu_info_t *, int, char **); total: 1 errors, 0 warnings, 100 lines checked Patch 37/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 38/54 Checking commit 55a654edc5a1 (plugin: add qemu_plugin_insn_disas helper) 39/54 Checking commit a1403cc00e88 (plugin: add qemu_plugin_outs helper) 40/54 Checking commit 78836bac5a5a (vl: support -plugin option) 41/54 Checking commit c996ea306b37 (linux-user: support -plugin option) 42/54 Checking commit efa9ea66c152 (tests/plugin: add sample plugins) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 total: 0 errors, 1 warnings, 287 lines checked Patch 42/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 43/54 Checking commit afdfac7a7739 (tests/tcg/Makefile.target: fix path to config-host.mak) 44/54 Checking commit e58c3d7ecfbe (tests/tcg: set QEMU_OPTS for all cris runs) 45/54 Checking commit 836d35ed6625 (tests/tcg: move "virtual" tests to EXTRA_TESTS) 46/54 Checking commit cd80d326a9ea (tests/tcg: drop test-i386-fprem from TESTS when not SLOW) 47/54 Checking commit 031417f8a076 (tests/tcg: enable plugin testing) 48/54 Checking commit 5e851ac30abd (tests/plugin: add a hotblocks plugin) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #33: new file mode 100644 WARNING: line over 80 characters #101: FILE: tests/plugin/hotblocks.c:64: + g_string_append_printf(report, "%#016"PRIx64", %d, %ld, %"PRId64"\n", total: 0 errors, 2 warnings, 150 lines checked Patch 48/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 49/54 Checking commit d1e0501fbbde (tests/plugin: add instruction execution breakdown) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 ERROR: space required after that ',' (ctx:VxV) #100: FILE: tests/plugin/howvec.c:69: + { " Add/Sub (imm,tags)","asit", 0x1f800000, 0x11800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #123: FILE: tests/plugin/howvec.c:92: + { " AdvSimd ldstmult++","advlsmp",0xbfb00000, 0x0c800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #123: FILE: tests/plugin/howvec.c:92: + { " AdvSimd ldstmult++","advlsmp",0xbfb00000, 0x0c800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #125: FILE: tests/plugin/howvec.c:94: + { " AdvSimd ldst++", "advlssp",0xbf800000, 0x0d800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #129: FILE: tests/plugin/howvec.c:98: + { " ldst noalloc pair", "ldstnap",0x3b800000, 0x28000000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #133: FILE: tests/plugin/howvec.c:102: + { " ldst reg (reg off)","ldstro", 0x3b200b00, 0x38200800, COUNT_CLASS}, ^ WARNING: line over 80 characters #154: FILE: tests/plugin/howvec.c:123: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, WARNING: line over 80 characters #163: FILE: tests/plugin/howvec.c:132: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, WARNING: line over 80 characters #168: FILE: tests/plugin/howvec.c:137: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, ERROR: that open brace { should be on the previous line #178: FILE: tests/plugin/howvec.c:147: +static ClassSelector class_tables[] = +{ WARNING: line over 80 characters #213: FILE: tests/plugin/howvec.c:182: + g_string_append_printf(report, "Class: %-24s\tcounted individually\n", ERROR: space required after that ',' (ctx:VxV) #229: FILE: tests/plugin/howvec.c:198: + g_string_append_printf(report,"Individual Instructions:\n"); ^ WARNING: line over 80 characters #235: FILE: tests/plugin/howvec.c:204: + g_string_append_printf(report, "Instr: %-24s\t(%ld hits)\t(op=%#08x/%s)\n", ERROR: "foo * bar" should be "foo *bar" #259: FILE: tests/plugin/howvec.c:228: +static uint64_t * find_counter(struct qemu_plugin_insn *insn) WARNING: line over 80 characters #295: FILE: tests/plugin/howvec.c:264: + GUINT_TO_POINTER(opcode)); total: 9 errors, 7 warnings, 359 lines checked Patch 49/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 50/54 Checking commit 17ea0115341e (tests/plugin: add hotpages to analyse memory access patterns) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 WARNING: line over 80 characters #107: FILE: tests/plugin/hotpages.c:76: + g_autoptr(GString) report = g_string_new("Addr, RCPUs, Reads, WCPUs, Writes\n"); total: 0 errors, 2 warnings, 198 lines checked Patch 50/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 51/54 Checking commit cace23961aa9 (accel/stubs: reduce headers from tcg-stub) 52/54 Checking commit 800ea86d70fb (include/exec: wrap cpu_ldst.h in CONFIG_TCG) 53/54 Checking commit e435145d5f74 (.travis.yml: add --enable-plugins tests) 54/54 Checking commit 424fada85333 (scripts/checkpatch.pl: don't complain about (foo, /* empty */)) === OUTPUT END === Test command exited with code: 1 The full log is available at http://patchew.org/logs/20191017131615.19660-1-alex.bennee@linaro.org/testing.checkpatch/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
Patchew URL: https://patchew.org/QEMU/20191017131615.19660-1-alex.bennee@linaro.org/ Hi, This series seems to have some coding style problems. See output below for more information: Subject: [PATCH for 4.2 v6 00/54] Support for TCG plugins Type: series Message-id: 20191017131615.19660-1-alex.bennee@linaro.org === TEST SCRIPT BEGIN === #!/bin/bash git rev-parse base > /dev/null || exit 0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram ./scripts/checkpatch.pl --mailback base.. === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 Switched to a new branch 'test' 9847f1b scripts/checkpatch.pl: don't complain about (foo, /* empty */) e3fa8e1 .travis.yml: add --enable-plugins tests b4a5f84 include/exec: wrap cpu_ldst.h in CONFIG_TCG 8462b2e accel/stubs: reduce headers from tcg-stub 66d6663 tests/plugin: add hotpages to analyse memory access patterns cf354fc tests/plugin: add instruction execution breakdown 161670c tests/plugin: add a hotblocks plugin 31bb5d8 tests/tcg: enable plugin testing 32fae30 tests/tcg: drop test-i386-fprem from TESTS when not SLOW 9813370 tests/tcg: move "virtual" tests to EXTRA_TESTS f932394 tests/tcg: set QEMU_OPTS for all cris runs 2d34307 tests/tcg/Makefile.target: fix path to config-host.mak 96c806e tests/plugin: add sample plugins 8d459e7 linux-user: support -plugin option 557e7e9 vl: support -plugin option 3547a90 plugin: add qemu_plugin_outs helper fa5672e plugin: add qemu_plugin_insn_disas helper cc752d2 plugin: expand the plugin_init function to include an info block 13aaf71 plugin: add API symbols to qemu-plugins.symbols c7db739 configure: add --enable-plugins 09d36aa translator: inject instrumentation from plugins 7faedce target/openrisc: fetch code with translator_ld 734b011 target/xtensa: fetch code with translator_ld b95a23d target/sparc: fetch code with translator_ld 83ca1d2 target/riscv: fetch code with translator_ld 97da0dd target/alpha: fetch code with translator_ld 3e3734e target/m68k: fetch code with translator_ld f040316 target/hppa: fetch code with translator_ld 0af56b7 target/i386: fetch code with translator_ld 2227803 target/sh4: fetch code with translator_ld 59646df target/ppc: fetch code with translator_ld 271b6d3 target/arm: fetch code with translator_ld 7f001d1 translator: add translator_ld{ub,sw,uw,l,q} 233c92e plugin-gen: add plugin_insn_append 1b9cb4f cpu: hook plugin vcpu events 55bc125 *-user: plugin syscalls b2b9b3e *-user: notify plugin of exit ede8e39 translate-all: notify plugin code of tb_flush 6730862 plugins: implement helpers for resolving hwaddr d925699 tcg: let plugins instrument virtual memory accesses 602641a atomic_template: add inline trace/plugin helpers 2bcb790 plugin-gen: add module for TCG-related code ef984a5 tcg: add tcg_gen_st_ptr 3ed6ebb cputlb: introduce get_page_addr_code_hostp f845fd4 cputlb: document get_page_addr_code 0994f5f queue: add QTAILQ_REMOVE_SEVERAL c47e85c plugin: add implementation of the api 5591d65 plugin: add core code 8bba1274 plugin: add user-facing API 4197e2a docs/devel: add plugins.rst design document 2266562 translate-all: use cpu_in_exclusive_work_context() in tb_flush 51bbfa6 cpu: introduce cpu_in_exclusive_context() 0512852 trace: add mmu_index to mem_info 2e4704f trace: expand mem_info:size_shift to 4 bits === OUTPUT BEGIN === 1/54 Checking commit 2e4704f0a0e9 (trace: expand mem_info:size_shift to 4 bits) 2/54 Checking commit 0512852c1418 (trace: add mmu_index to mem_info) 3/54 Checking commit 51bbfa6c73b6 (cpu: introduce cpu_in_exclusive_context()) 4/54 Checking commit 22665627c396 (translate-all: use cpu_in_exclusive_work_context() in tb_flush) 5/54 Checking commit 4197e2a049aa (docs/devel: add plugins.rst design document) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #24: new file mode 100644 total: 0 errors, 1 warnings, 116 lines checked Patch 5/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 6/54 Checking commit 8bba1274c903 (plugin: add user-facing API) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #15: new file mode 100644 WARNING: architecture specific defines should be avoided #41: FILE: include/qemu/qemu-plugin.h:22: +#if defined _WIN32 || defined __CYGWIN__ WARNING: architecture specific defines should be avoided #49: FILE: include/qemu/qemu-plugin.h:30: + #if __GNUC__ >= 4 total: 0 errors, 3 warnings, 351 lines checked Patch 6/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 7/54 Checking commit 5591d65608db (plugin: add core code) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #99: new file mode 100644 ERROR: externs should be avoided in .c files #947: FILE: plugins/loader.c:63: +extern struct qemu_plugin_state plugin; total: 1 errors, 1 warnings, 1284 lines checked Patch 7/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 8/54 Checking commit c47e85c5df67 (plugin: add implementation of the api) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #36: new file mode 100644 ERROR: "foo * bar" should be "foo *bar" #295: FILE: plugins/api.c:255: +static MachineState * get_ms(void) total: 1 errors, 1 warnings, 290 lines checked Patch 8/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 9/54 Checking commit 0994f5f73013 (queue: add QTAILQ_REMOVE_SEVERAL) WARNING: Block comments use a leading /* on a separate line #32: FILE: include/qemu/queue.h:431: + } while (/*CONSTCOND*/0) total: 0 errors, 1 warnings, 16 lines checked Patch 9/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 10/54 Checking commit f845fd41993a (cputlb: document get_page_addr_code) 11/54 Checking commit 3ed6ebbbaecb (cputlb: introduce get_page_addr_code_hostp) 12/54 Checking commit ef984a5e29b7 (tcg: add tcg_gen_st_ptr) 13/54 Checking commit 2bcb790e7f11 (plugin-gen: add module for TCG-related code) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #48: new file mode 100644 total: 0 errors, 1 warnings, 1123 lines checked Patch 13/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 14/54 Checking commit 602641abf4fb (atomic_template: add inline trace/plugin helpers) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #15: new file mode 100644 total: 0 errors, 1 warnings, 299 lines checked Patch 14/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 15/54 Checking commit d925699870d6 (tcg: let plugins instrument virtual memory accesses) WARNING: line over 80 characters #111: FILE: include/exec/cpu_ldst_template.h:91: + uint16_t meminfo = trace_mem_build_info(SHIFT, false, MO_TE, false, mmu_idx); total: 0 errors, 1 warnings, 325 lines checked Patch 15/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 16/54 Checking commit 6730862552c5 (plugins: implement helpers for resolving hwaddr) ERROR: line over 90 characters #61: FILE: accel/tcg/cputlb.c:1279: + data->v.io.section = iotlb_to_section(cpu, iotlbentry->addr, iotlbentry->attrs); WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #78: new file mode 100644 WARNING: line over 80 characters #137: FILE: include/qemu/qemu-plugin.h:294: +uint64_t qemu_plugin_hwaddr_device_offset(const struct qemu_plugin_hwaddr *haddr); WARNING: line over 80 characters #193: FILE: plugins/api.c:279: +uint64_t qemu_plugin_hwaddr_device_offset(const struct qemu_plugin_hwaddr *haddr) WARNING: line over 80 characters #198: FILE: plugins/api.c:284: + ram_addr_t ram_addr = qemu_ram_addr_from_host((void *) haddr->v.ram.hostaddr); WARNING: line over 80 characters #200: FILE: plugins/api.c:286: + error_report("Bad ram pointer %"PRIx64"", haddr->v.ram.hostaddr); total: 1 errors, 5 warnings, 174 lines checked Patch 16/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 17/54 Checking commit ede8e39d51a3 (translate-all: notify plugin code of tb_flush) 18/54 Checking commit b2b9b3e4e24c (*-user: notify plugin of exit) 19/54 Checking commit 55bc125e674e (*-user: plugin syscalls) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #93: new file mode 100644 total: 0 errors, 1 warnings, 127 lines checked Patch 19/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 20/54 Checking commit 1b9cb4fb0263 (cpu: hook plugin vcpu events) 21/54 Checking commit 233c92ef07f9 (plugin-gen: add plugin_insn_append) 22/54 Checking commit 7f001d1e4075 (translator: add translator_ld{ub,sw,uw,l,q}) ERROR: space prohibited before that close parenthesis ')' #118: FILE: include/exec/translator.h:198: +GEN_TRANSLATOR_LD(translator_ldub, ldb, ldub, uint8_t, 0, /* no swap */ ) total: 1 errors, 0 warnings, 95 lines checked Patch 22/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 23/54 Checking commit 271b6d3a545c (target/arm: fetch code with translator_ld) 24/54 Checking commit 59646dfc5ebe (target/ppc: fetch code with translator_ld) 25/54 Checking commit 2227803dcdf4 (target/sh4: fetch code with translator_ld) 26/54 Checking commit 0af56b74d847 (target/i386: fetch code with translator_ld) 27/54 Checking commit f040316a74fb (target/hppa: fetch code with translator_ld) 28/54 Checking commit 3e3734ecf4c9 (target/m68k: fetch code with translator_ld) 29/54 Checking commit 97da0ddcb54b (target/alpha: fetch code with translator_ld) 30/54 Checking commit 83ca1d283609 (target/riscv: fetch code with translator_ld) 31/54 Checking commit b95a23da9d9e (target/sparc: fetch code with translator_ld) 32/54 Checking commit 734b011c095d (target/xtensa: fetch code with translator_ld) 33/54 Checking commit 7faedce22090 (target/openrisc: fetch code with translator_ld) 34/54 Checking commit 09d36aae7994 (translator: inject instrumentation from plugins) 35/54 Checking commit c7db739152f7 (configure: add --enable-plugins) 36/54 Checking commit 13aaf71d1d48 (plugin: add API symbols to qemu-plugins.symbols) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #136: new file mode 100644 total: 0 errors, 1 warnings, 166 lines checked Patch 36/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 37/54 Checking commit cc752d2a4831 (plugin: expand the plugin_init function to include an info block) ERROR: line over 90 characters #84: FILE: plugins/loader.c:65: +typedef int (*qemu_plugin_install_func_t)(qemu_plugin_id_t, const qemu_info_t *, int, char **); total: 1 errors, 0 warnings, 100 lines checked Patch 37/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 38/54 Checking commit fa5672ef3129 (plugin: add qemu_plugin_insn_disas helper) 39/54 Checking commit 3547a9081a3d (plugin: add qemu_plugin_outs helper) 40/54 Checking commit 557e7e9a8eb5 (vl: support -plugin option) 41/54 Checking commit 8d459e73e5ac (linux-user: support -plugin option) 42/54 Checking commit 96c806e269da (tests/plugin: add sample plugins) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 total: 0 errors, 1 warnings, 287 lines checked Patch 42/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 43/54 Checking commit 2d34307f8535 (tests/tcg/Makefile.target: fix path to config-host.mak) 44/54 Checking commit f932394c2aaf (tests/tcg: set QEMU_OPTS for all cris runs) 45/54 Checking commit 98133707f51e (tests/tcg: move "virtual" tests to EXTRA_TESTS) 46/54 Checking commit 32fae30ee9b2 (tests/tcg: drop test-i386-fprem from TESTS when not SLOW) 47/54 Checking commit 31bb5d82b265 (tests/tcg: enable plugin testing) 48/54 Checking commit 161670c31d4e (tests/plugin: add a hotblocks plugin) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #33: new file mode 100644 WARNING: line over 80 characters #101: FILE: tests/plugin/hotblocks.c:64: + g_string_append_printf(report, "%#016"PRIx64", %d, %ld, %"PRId64"\n", total: 0 errors, 2 warnings, 150 lines checked Patch 48/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 49/54 Checking commit cf354fc713ef (tests/plugin: add instruction execution breakdown) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 ERROR: space required after that ',' (ctx:VxV) #100: FILE: tests/plugin/howvec.c:69: + { " Add/Sub (imm,tags)","asit", 0x1f800000, 0x11800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #123: FILE: tests/plugin/howvec.c:92: + { " AdvSimd ldstmult++","advlsmp",0xbfb00000, 0x0c800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #123: FILE: tests/plugin/howvec.c:92: + { " AdvSimd ldstmult++","advlsmp",0xbfb00000, 0x0c800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #125: FILE: tests/plugin/howvec.c:94: + { " AdvSimd ldst++", "advlssp",0xbf800000, 0x0d800000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #129: FILE: tests/plugin/howvec.c:98: + { " ldst noalloc pair", "ldstnap",0x3b800000, 0x28000000, COUNT_CLASS}, ^ ERROR: space required after that ',' (ctx:VxV) #133: FILE: tests/plugin/howvec.c:102: + { " ldst reg (reg off)","ldstro", 0x3b200b00, 0x38200800, COUNT_CLASS}, ^ WARNING: line over 80 characters #154: FILE: tests/plugin/howvec.c:123: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, WARNING: line over 80 characters #163: FILE: tests/plugin/howvec.c:132: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, WARNING: line over 80 characters #168: FILE: tests/plugin/howvec.c:137: + { "Unclassified", "unclas", 0x00000000, 0x00000000, COUNT_INDIVIDUAL}, ERROR: that open brace { should be on the previous line #178: FILE: tests/plugin/howvec.c:147: +static ClassSelector class_tables[] = +{ WARNING: line over 80 characters #213: FILE: tests/plugin/howvec.c:182: + g_string_append_printf(report, "Class: %-24s\tcounted individually\n", ERROR: space required after that ',' (ctx:VxV) #229: FILE: tests/plugin/howvec.c:198: + g_string_append_printf(report,"Individual Instructions:\n"); ^ WARNING: line over 80 characters #235: FILE: tests/plugin/howvec.c:204: + g_string_append_printf(report, "Instr: %-24s\t(%ld hits)\t(op=%#08x/%s)\n", ERROR: "foo * bar" should be "foo *bar" #259: FILE: tests/plugin/howvec.c:228: +static uint64_t * find_counter(struct qemu_plugin_insn *insn) WARNING: line over 80 characters #295: FILE: tests/plugin/howvec.c:264: + GUINT_TO_POINTER(opcode)); total: 9 errors, 7 warnings, 359 lines checked Patch 49/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 50/54 Checking commit 66d6663792b9 (tests/plugin: add hotpages to analyse memory access patterns) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #27: new file mode 100644 WARNING: line over 80 characters #107: FILE: tests/plugin/hotpages.c:76: + g_autoptr(GString) report = g_string_new("Addr, RCPUs, Reads, WCPUs, Writes\n"); total: 0 errors, 2 warnings, 198 lines checked Patch 50/54 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 51/54 Checking commit 8462b2eb9a43 (accel/stubs: reduce headers from tcg-stub) 52/54 Checking commit b4a5f84e57f8 (include/exec: wrap cpu_ldst.h in CONFIG_TCG) 53/54 Checking commit e3fa8e1cc1d2 (.travis.yml: add --enable-plugins tests) 54/54 Checking commit 9847f1b9e9f0 (scripts/checkpatch.pl: don't complain about (foo, /* empty */)) === OUTPUT END === Test command exited with code: 1 The full log is available at http://patchew.org/logs/20191017131615.19660-1-alex.bennee@linaro.org/testing.checkpatch/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
© 2016 - 2024 Red Hat, Inc.