<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/tools/perf/util, branch v3.4.33</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/tools/perf/util?h=v3.4.33</id>
<link rel='self' href='https://git.amat.us/linux/atom/tools/perf/util?h=v3.4.33'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-05-01T17:13:00Z</updated>
<entry>
<title>perf build-id: Fix filename size calculation</title>
<updated>2012-05-01T17:13:00Z</updated>
<author>
<name>Namhyung Kim</name>
<email>namhyung@gmail.com</email>
</author>
<published>2012-05-01T14:19:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=afda0f94483f46a4caddb529b8f95e0aaf015de6'/>
<id>urn:sha1:afda0f94483f46a4caddb529b8f95e0aaf015de6</id>
<content type='text'>
The filename is a pointer variable so the sizeof(filename) will return
length of a pointer. Fix it by using 'size'.

Signed-off-by: Namhyung Kim &lt;namhyung@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: http://lkml.kernel.org/r/1335881976-3282-1-git-send-email-namhyung@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf symbols: Read plt symbols from proper symtab_type binary</title>
<updated>2012-04-20T16:34:49Z</updated>
<author>
<name>Jiri Olsa</name>
<email>jolsa@redhat.com</email>
</author>
<published>2012-04-18T13:46:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=33ff581eddf744ea91a50d46c2f0961b375a9595'/>
<id>urn:sha1:33ff581eddf744ea91a50d46c2f0961b375a9595</id>
<content type='text'>
When loading symbols from DSO we check multiple paths of DSO binary
until we succeed to load symbols ('.symtab' section). Once symbols are
read we try to load also plt symbols.

During the reading of plt symbols, the dso file is reopened from
location given by dso-&gt;long_name. This could be wrong in case we want
process buildid binaries.

The change is to make the plt symbols being read from the DSO path, that
normal symbols were read from.

Signed-off-by: Jiri Olsa &lt;jolsa@redhat.com&gt;
Cc: Corey Ashford &lt;cjashfor@linux.vnet.ibm.com&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: http://lkml.kernel.org/r/1334756818-6631-1-git-send-email-jolsa@redhat.com
[ committer note: moved dso to be the first parameter of that function ]
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf tools: Add 'G' and 'H' modifiers to event parsing</title>
<updated>2012-04-17T14:20:23Z</updated>
<author>
<name>Gleb Natapov</name>
<email>gleb@redhat.com</email>
</author>
<published>2012-04-17T11:13:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e7c72d888dac2c81003401d663bd8abd68e7c5cd'/>
<id>urn:sha1:e7c72d888dac2c81003401d663bd8abd68e7c5cd</id>
<content type='text'>
They were dropped during conversion of event parser. Add test case to
make sure this will not happen again.

Signed-off-by: Gleb Natapov &lt;gleb@redhat.com&gt;
Acked-by: Jiri Olsa &lt;jolsa@redhat.com&gt;
Cc: Avi Kivity &lt;avi@redhat.com&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Jiri Olsa &lt;jolsa@redhat.com&gt;
Link: http://lkml.kernel.org/r/20120417111345.GK11918@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf session: Skip event correctly for unknown id/machine</title>
<updated>2012-04-12T15:14:50Z</updated>
<author>
<name>Jiri Olsa</name>
<email>jolsa@redhat.com</email>
</author>
<published>2012-04-12T12:21:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6782206b5dfece4c51f587b3ca1540a4027f87dd'/>
<id>urn:sha1:6782206b5dfece4c51f587b3ca1540a4027f87dd</id>
<content type='text'>
In case the perf_session__process_event function fails, we estimate the
next event offset.

This is not necessary for sample event failing on unknown ID or machine.
In such case we know proper size of the event, so we dont need to guess.
Also failure statistics are updated correctly so we don't miss any
information.

Forcing perf_session__process_event to return 0 in case of unknown ID or
machine.

Signed-off-by: Jiri Olsa &lt;jolsa@redhat.com&gt;
Cc: Corey Ashford &lt;cjashfor@linux.vnet.ibm.com&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: http://lkml.kernel.org/r/1334233262-5679-3-git-send-email-jolsa@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf kvm: Finding struct machine fails for PERF_RECORD_MMAP</title>
<updated>2012-04-11T14:45:12Z</updated>
<author>
<name>Nikunj A. Dadhania</name>
<email>nikunj@linux.vnet.ibm.com</email>
</author>
<published>2012-04-09T08:22:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7fb0a5ee8889488f7568ffddffeb66ddeb50917e'/>
<id>urn:sha1:7fb0a5ee8889488f7568ffddffeb66ddeb50917e</id>
<content type='text'>
Running 'perf kvm --host --guest --guestmount /tmp/guestmount record -a -g -- sleep 2'

Was resulting in a segfault. For event type PERF_RECORD_MMAP,
event-&gt;ip.pid is being used in perf_session__find_machine_for_cpumode,
which is not correct.

The event-&gt;ip.pid field happens to be 0 in this case and results in
returning a NULL machine object. Finally, access to self-&gt;pid in
machine__mmap_name, results in a segfault later.

For PERF_RECORD_MMAP type, pass event-&gt;mmap.pid.

Signed-off-by: Nikunj A. Dadhania &lt;nikunj@linux.vnet.ibm.com&gt;
Reviewed-by: David Ahern &lt;dsahern@gmail.com&gt;
Tested-by: David Ahern &lt;dsahern@gmail.com&gt;
Cc: David Ahern &lt;dsahern@gmail.com&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Stephane Eranian &lt;eranian@google.com&gt;
Cc: Nikunj A. Dadhania &lt;nikunj@linux.vnet.ibm.com&gt;
Link: http://lkml.kernel.org/r/20120409081835.10576.22018.stgit@abhimanyu.in.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf annotate: Validate addr in symbol__inc_addr_samples</title>
<updated>2012-04-05T22:51:14Z</updated>
<author>
<name>Arnaldo Carvalho de Melo</name>
<email>acme@redhat.com</email>
</author>
<published>2012-03-27T15:55:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=31d68e7b66f168e623902e194af1e52b8cf75d71'/>
<id>urn:sha1:31d68e7b66f168e623902e194af1e52b8cf75d71</id>
<content type='text'>
This routine was checking only if the provided address was after
sym-&gt;end, not if it was before sym-&gt;start.

Fix that by checking for both and return in both cases -ERANGE, so that
tools can communicate this to the user properly, or if they chose so, to
abort.

This problem was reported previously but the fixes involved either doing
what was being done for the &gt; end case, i.e. silently drop the sample,
returning 0, or aborting at this function, which is in a lib (or better,
is slated to be at some point) and shouldn't abort.

The 'report' tool already checks this value and uses pr_debug to warn
the user.

This patch makes the 'top' tool check it too and warn once per map where
such range problem takes place.

Reported-by: David Miller &lt;davem@davemloft.net&gt;
Reported-by: Sorin Dumitru &lt;dumitru.sorin87@gmail.com&gt;
Reported-by: Stephane Eranian &lt;eranian@google.com&gt;
Cc: David Ahern &lt;dsahern@gmail.com&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Mike Galbraith &lt;efault@gmx.de&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;
Link: http://lkml.kernel.org/n/tip-lw8gs7p9i9nhldilo82tzpne@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf hists browser: Fix NULL deref in hists browsing code</title>
<updated>2012-04-05T21:58:45Z</updated>
<author>
<name>Jiri Olsa</name>
<email>jolsa@redhat.com</email>
</author>
<published>2012-04-04T20:21:31Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8493fe1daf15324eb13a4cc2f94e258716daa568'/>
<id>urn:sha1:8493fe1daf15324eb13a4cc2f94e258716daa568</id>
<content type='text'>
If there's an event with no samples in data file, the perf report
command can segfault after entering the event details menu.

Following steps reproduce the issue:

 # ./perf record -e syscalls:sys_enter_kexec_load,syscalls:sys_enter_mmap ls
 # ./perf report
 # enter '0 syscalls:sys_enter_kexec_load' menu
 # pres ENTER twice

Above steps are valid assuming ls wont run kexec.. ;)

The check for sellection to be NULL is missing. The fix makes sure it's
being check. Above steps now endup with menu being displayed allowing
'Exit' as the only option.

Signed-off-by: Jiri Olsa &lt;jolsa@redhat.com&gt;
Cc: Corey Ashford &lt;cjashfor@linux.vnet.ibm.com&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: http://lkml.kernel.org/r/1333570898-10505-2-git-send-email-jolsa@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf hists: Catch and handle out-of-date hist entry maps.</title>
<updated>2012-04-05T21:53:47Z</updated>
<author>
<name>David Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-03-27T07:14:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=63fa471dd49e9c9ce029d910d1024330d9b1b145'/>
<id>urn:sha1:63fa471dd49e9c9ce029d910d1024330d9b1b145</id>
<content type='text'>
When a process exec()'s, all the maps are retired, but we keep the hist
entries around which hold references to those outdated maps.

If the same library gets mapped in for which we have hist entries, a new
map will be created.  But when we take a perf entry hit within that map,
we'll find the existing hist entry with the older map.

This causes symbol translations to be done incorrectly.  For example,
the perf entry processing will lookup the correct uptodate map entry and
use that to calculate the symbol and DSO relative address.  But later
when we update the histogram we'll translate the address using the
outdated map file instead leading to conditions such as out-of-range
offsets in symbol__inc_addr_samples().

Therefore, update the map of the hist_entry dynamically at lookup/
creation time.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Cc: stable@kernel.org
Link: http://lkml.kernel.org/r/20120327.031418.1220315351537060808.davem@davemloft.net
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>perf annotate: Fix hist decay</title>
<updated>2012-04-05T21:49:18Z</updated>
<author>
<name>Arnaldo Carvalho de Melo</name>
<email>acme@redhat.com</email>
</author>
<published>2012-04-05T19:15:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8b84a568117fde9b77575f2060274eddab424c32'/>
<id>urn:sha1:8b84a568117fde9b77575f2060274eddab424c32</id>
<content type='text'>
We were only decaying the entries for the offsets that were associated
with an objdump line.

That way, when we accrued the whole instruction addr range, more than
100% was appearing in some cases in the live annotation TUI.

Fix it by not traversing the source code line at all, just iterate thru
the complete addr range decaying each one.

Reported-by: Mike Galbraith &lt;mgalbraith@suse.de&gt;
Cc: David Ahern &lt;dsahern@gmail.com&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Mike Galbraith &lt;efault@gmx.de&gt;
Cc: Namhyung Kim &lt;namhyung@gmail.com&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;
Cc: Stephane Eranian &lt;eranian@google.com&gt;
Link: http://lkml.kernel.org/n/tip-hcae5oxa22syjrnalsxz7s6n@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent</title>
<updated>2012-03-31T07:27:41Z</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@kernel.org</email>
</author>
<published>2012-03-31T07:27:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8ebfdf2babcda5a3b06cc67523bca1f9aed46009'/>
<id>urn:sha1:8ebfdf2babcda5a3b06cc67523bca1f9aed46009</id>
<content type='text'>
</content>
</entry>
</feed>
