diff options
author | Lluís Vilanova | 2016-06-09 19:31:47 +0200 |
---|---|---|
committer | Stefan Hajnoczi | 2016-06-20 18:21:56 +0200 |
commit | dcdaadb6ea873159487aa2fdbee2c4aa7779e02d (patch) | |
tree | 767536fb99ccab715bbd47af0587c1e356a9621a /trace-events | |
parent | exec: [tcg] Track which vCPU is performing translation and execution (diff) | |
download | qemu-dcdaadb6ea873159487aa2fdbee2c4aa7779e02d.tar.gz qemu-dcdaadb6ea873159487aa2fdbee2c4aa7779e02d.tar.xz qemu-dcdaadb6ea873159487aa2fdbee2c4aa7779e02d.zip |
trace: [all] Add "guest_mem_before" event
The event is described in "trace-events". Note that the "MO_AMASK" flag
is not traced, since it does not seem to affect the visible semantics of
instructions.
[s/inline inline/inline/ to fix clang build.
--Stefan]
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 146549350711.18437.726780393247474362.stgit@fimbulvetr.bsc.es
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'trace-events')
-rw-r--r-- | trace-events | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/trace-events b/trace-events index da0d06025d..90edb982f5 100644 --- a/trace-events +++ b/trace-events @@ -2206,3 +2206,24 @@ gicv3_redist_write(uint32_t cpu, uint64_t offset, uint64_t data, unsigned size, gicv3_redist_badwrite(uint32_t cpu, uint64_t offset, uint64_t data, unsigned size, bool secure) "GICv3 redistributor %x write: offset 0x%" PRIx64 " data 0x%" PRIx64 " size %u secure %d: error" gicv3_redist_set_irq(uint32_t cpu, int irq, int level) "GICv3 redistributor %x interrupt %d level changed to %d" gicv3_redist_send_sgi(uint32_t cpu, int irq) "GICv3 redistributor %x pending SGI %d" + +### Guest events, keep at bottom + +# @vaddr: Access' virtual address. +# @info : Access' information (see below). +# +# Start virtual memory access (before any potential access violation). +# +# Does not include memory accesses performed by devices. +# +# Access information can be parsed as: +# +# struct mem_info { +# uint8_t size_shift : 2; /* interpreted as "1 << size_shift" bytes */ +# bool sign_extend: 1; /* sign-extended */ +# uint8_t endianness : 1; /* 0: little, 1: big */ +# bool store : 1; /* wheter it's a store operation */ +# }; +# +# Targets: TCG(all) +disable vcpu tcg guest_mem_before(TCGv vaddr, uint8_t info) "info=%d", "vaddr=0x%016"PRIx64" info=%d" |