On 09/12/2015 21:54, Hollis Blanchard wrote: > > #0 trace_memory_region_ops_write (mr=0x185b620, addr=16, absaddr=738205712, > value=136, size=4) > at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/trace/generated-tracers.h:7374 > #1 0x000000000045eb8a in *memory_region_write_with_attrs_accessor* > (mr=0x185b620, addr=16, > value=0x45203338, size=4, shift=0, mask=4294967295, attrs=...) > at /scratch1/hblancha/install/customq/qemu-2.4.0/src/memory.c:513 > #2 0x000000000045ed08 in access_with_adjusted_size (addr=16, > value=0x45203338, size=4, > access_size_min=1, access_size_max=4, access=0x45eb15 > <memory_region_write_with_attrs_accessor>, > mr=0x185b620, attrs=...) at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/memory.c:556 > #3 0x0000000000461ed7 in memory_region_dispatch_write (mr=0x185b620, > addr=16, data=136, size=4, > attrs=...) at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/memory.c:1214 > #4 0x0000000000411bbf in address_space_rw (as=0x11f3440, addr=738205712, > attrs=..., > buf=0x45203490 "\210", len=4, is_write=true) > at /scratch1/hblancha/install/customq/qemu-2.4.0/src/exec.c:2497 > #5 0x0000000000411ea9 in address_space_write (as=0x11f3440, addr=738205712, > attrs=..., > buf=0x45203490 "\210", len=4) at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/exec.c:2579 > #6 0x0000000000410d89 in subpage_write (opaque=0x19148f0, addr=16, > value=136, len=4, attrs=...) > at /scratch1/hblancha/install/customq/qemu-2.4.0/src/exec.c:2139 > #7 0x000000000045ebb2 in *memory_region_write_with_attrs_accessor* > (mr=0x19148f0, addr=16, > value=0x452035a8, size=4, shift=0, mask=4294967295, attrs=...) > at /scratch1/hblancha/install/customq/qemu-2.4.0/src/memory.c:516 > #8 0x000000000045ed08 in access_with_adjusted_size (addr=16, > value=0x452035a8, size=4, > access_size_min=1, access_size_max=8, access=0x45eb15 > <memory_region_write_with_attrs_accessor>, > mr=0x19148f0, attrs=...) at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/memory.c:556 > #9 0x0000000000461ed7 in memory_region_dispatch_write (mr=0x19148f0, > addr=16, data=136, size=4, > attrs=...) at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/memory.c:1214 > #10 0x000000000046c61c in io_writel (env=0x2aabace89268, > iotlbentry=0x2aabace99808, val=136, > addr=18446743523953745936, retaddr=1107508028) > at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/softmmu_template.h:470 > #11 0x000000000046c3cb in helper_le_stl_mmu (env=0x2aabace89268, > addr=18446743523953745936, val=136, > oi=33, retaddr=1107508028) > at > /scratch1/hblancha/install/customq/qemu-2.4.0/src/softmmu_template.h:510 > #12 0x0000000042033b3e in code_gen_buffer () > > > The first tracepoint in each pair is an artifact, and should be omitted. > Any suggestions? We could special case "if (mr->ops->write != > subpage_write) { emit tracepoint }", but that's a bit of a hack... :-)
You can add an argument to the tracepoint for mr->subpage. I would keep the duplicate however. Paolo