[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-trivial] [Qemu-devel] [PATCH v4 01/11] tcg: add ability to dum
From: |
Aurelien Jarno |
Subject: |
Re: [Qemu-trivial] [Qemu-devel] [PATCH v4 01/11] tcg: add ability to dump /tmp/perf-<pid>.map files |
Date: |
Tue, 4 Aug 2015 21:01:46 +0200 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On 2015-08-04 13:55, Alex Bennée wrote:
>
> Aurelien Jarno <address@hidden> writes:
>
> > On 2015-08-04 08:39, Alex Bennée wrote:
> >>
> >> Paolo Bonzini <address@hidden> writes:
> >>
> >> > On 03/08/2015 11:14, Alex Bennée wrote:
> >> >> This allows the perf tool to map samples to each individual translation
> >> >> block. This could be expanded for user space but currently it gives
> >> >> enough information to find any hotblocks by other means.
> >> >>
> >> >> Signed-off-by: Alex Bennée <address@hidden>
> >> >
> >> > What happens if you encounter a tb_flush?
> >>
> >> At the point of a tb_flush all bets are off as we will re-generate all
> >> the blocks at potentially different locations in the translation buffer.
> >> However for most analysis cases you are unlikely to cause the code
> >> buffer to overflow. Most other uses of tb_flush are the result
> >> debugging.
> >>
> >> I could add a printf when --perfmap is enabled to flag when a flush
> >> happens to signal to the user? I guess some more caveats in the flag
> >> description wouldn't hurt.
> >>
> >> We could consider truncating and re-starting the JIT dump at each flush?
> >
> > You also need to take care about TB invalidation. When the last
> > generated TB is invalidated, the code pointer is rolled back to the
> > end of the previous TB. In that case the last entry of the dump might
> > should be replaced by the new value. If the invalidated TB is not the
> > last one, it is just left in the generated code.
>
> Can we only invalidate the previous TB and not any earlier ones?
>
> We could keep the output line until the next TB is generated but then
> you would never have a mapping for the last TB generated.
I have just looked at the cde and it can (at least currently) happen only
when executing with nocache, so only in icount mode.
Aurelin
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
address@hidden http://www.aurel32.net
- [Qemu-trivial] [PATCH v4 04/11] qemu-log: Avoid function call for disabled qemu_log_mask logging, (continued)
Re: [Qemu-trivial] [PATCH v4 01/11] tcg: add ability to dump /tmp/perf-<pid>.map files, Aurelien Jarno, 2015/08/04
[Qemu-trivial] [PATCH v4 05/11] qemu-log: Improve the "exec" TB execution logging, Alex Bennée, 2015/08/03
[Qemu-trivial] [PATCH v4 09/11] target-arm: dfilter support for in_asm, op, opt_op, Alex Bennée, 2015/08/03
[Qemu-trivial] [PATCH v4 07/11] qemu-log: new option -dfilter to limit output, Alex Bennée, 2015/08/03