[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/17] [RFC] static instrumentation
From: |
Lluís |
Subject: |
[Qemu-devel] [PATCH 00/17] [RFC] static instrumentation |
Date: |
Fri, 22 Oct 2010 20:32:02 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Here's a set of patches with the current state of static
instrumentation.
Hope that this organization will help understanding the point of
it. Patch 9 describes the taken approach for instrumenting during code
generation, which is the main point of this.
Code can also be reached at:
https://projects.gso.ac.upc.edu/projects/qemu-instrument
https://code.gso.ac.upc.edu/git/qemu-instrument
Lluís Vilanova (17):
backdoor: Declare host-side backdoor helpers
backdoor: [all] Include backdoor helper declarations
backdoor: Declare guest-side interface macros
backdoor: [i386] Decode backdoor instructions
backdoor: [i386] Declare guest-side interface macros
backdoor: Add a simple example
instrument: Handle config-time activation
instrument: Add initial instrumentation example
instrument: Dynamic per-CPU state of static instrumentation points
instrument: Code-generation macros
instrument: [all] Include instrumentation helper declarations
instrument: Add FETCH point
instrument: [i386] Call FETCH point
instrument: Add VMEM point
instrument: [all] Call VMEM point
instrument: Add PLVL point
instrument: [i386] Call PLVL point
.gitignore | 2 +
Makefile.target | 35 +++++-
backdoor/examples/print/README | 13 ++
backdoor/examples/print/guest/Makefile | 7 +
backdoor/examples/print/guest/test.c | 33 +++++
backdoor/examples/print/host/Makefile | 13 ++
backdoor/examples/print/host/printcb.c | 36 +++++
backdoor/guest.h | 60 ++++++++
backdoor/helper.h | 21 +++
configure | 19 +++
cpu-all.h | 74 ++++++----
cpu-defs.h | 24 +++
cpu-exec.c | 8 +-
cpus.c | 8 +
exec-all.h | 7 +-
exec.c | 50 +++++---
instrument/control.c | 74 ++++++++++
instrument/control.h | 44 ++++++
instrument/examples/dynprint/README | 16 ++
instrument/examples/dynprint/guest/Makefile | 7 +
instrument/examples/dynprint/guest/test.c | 62 ++++++++
instrument/examples/dynprint/host/Makefile | 14 ++
instrument/examples/dynprint/host/backdoor.c | 61 ++++++++
instrument/examples/dynprint/host/helpers.c | 86 ++++++++++++
.../dynprint/host/instrument-host-helpers.h | 22 +++
.../examples/dynprint/host/instrument-host.h | 81 +++++++++++
instrument/gen-vmem-wrappers.h | 88 ++++++++++++
instrument/generate.h | 128 +++++++++++++++++
instrument/host-stub.h | 81 +++++++++++
instrument/state.h | 61 ++++++++
instrument/types.h | 44 ++++++
linux-user/main.c | 12 ++
qemu-common.h | 4 +
softmmu_header.h | 15 ++
target-alpha/helper.h | 8 +
target-alpha/translate.c | 4 +
target-arm/helper.h | 8 +
target-arm/translate.c | 4 +
target-cris/helper.h | 8 +
target-cris/translate.c | 4 +
target-i386/cpu.h | 21 ++--
target-i386/helper.h | 8 +
target-i386/translate.c | 147 ++++++++++++++++++++
target-m68k/helper.h | 8 +
target-m68k/translate.c | 4 +
target-microblaze/helper.h | 8 +
target-microblaze/translate.c | 10 ++
target-mips/helper.h | 8 +
target-mips/translate.c | 4 +
target-ppc/helper.h | 8 +
target-ppc/translate.c | 4 +
target-s390x/translate.c | 4 +
target-sh4/helper.h | 8 +
target-sh4/translate.c | 4 +
target-sparc/helper.h | 8 +
target-sparc/translate.c | 4 +
56 files changed, 1543 insertions(+), 61 deletions(-)
create mode 100644 backdoor/examples/print/README
create mode 100644 backdoor/examples/print/guest/Makefile
create mode 100644 backdoor/examples/print/guest/test.c
create mode 100644 backdoor/examples/print/host/Makefile
create mode 100644 backdoor/examples/print/host/printcb.c
create mode 100644 backdoor/guest.h
create mode 100644 backdoor/helper.h
create mode 100644 instrument/control.c
create mode 100644 instrument/control.h
create mode 100644 instrument/examples/dynprint/README
create mode 100644 instrument/examples/dynprint/guest/Makefile
create mode 100644 instrument/examples/dynprint/guest/test.c
create mode 100644 instrument/examples/dynprint/host/Makefile
create mode 100644 instrument/examples/dynprint/host/backdoor.c
create mode 100644 instrument/examples/dynprint/host/helpers.c
create mode 100644 instrument/examples/dynprint/host/instrument-host-helpers.h
create mode 100644 instrument/examples/dynprint/host/instrument-host.h
create mode 100644 instrument/gen-vmem-wrappers.h
create mode 100644 instrument/generate.h
create mode 100644 instrument/host-stub.h
create mode 100644 instrument/state.h
create mode 100644 instrument/types.h
--
"And it's much the same thing with knowledge, for whenever you learn
something new, the whole world becomes that much richer."
-- The Princess of Pure Reason, as told by Norton Juster in The Phantom
Tollbooth
- [Qemu-devel] [PATCH 00/17] [RFC] static instrumentation,
Lluís <=
- [Qemu-devel] [PATCH 00/17] [RFC] static instrumentation, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 01/18] backdoor: Handle config-time activation, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 02/18] backdoor: Declare host-side backdoor helpers, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 13/18] instrument: Add FETCH point, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 14/18] instrument: [i386] Call FETCH point, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 15/18] instrument: Add VMEM point, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 16/18] instrument: [all] Call VMEM point, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 17/18] instrument: Add PLVL point, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 18/18] instrument: [i386] Call PLVL point, Lluís, 2010/10/22
- [Qemu-devel] [PATCH 03/18] backdoor: [all] Include backdoor helper declarations, Lluís, 2010/10/22