On 27/03/13 13:57, Chris Ball wrote:
> Hi,
>
> On Wed, Mar 27 2013, Ulf Hansson wrote:
>> I noticed you merged this. I thought the idea was to use the rootwait
>> or rootdelay?
>
> That's necessary before the patch, but it would be better if we didn't
> have to pass rootwait, all else being equal
On 02/04/13 17:24, Sergey Yanovich wrote:
> On Tue, 2013-04-02 at 16:36 +0300, Adrian Hunter wrote:
>> On my system it is significant:
>>
>> Before the patch:
>>
>> [1.625623] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
>>
>> After
On 04/04/13 13:59, Sergey Yanovich wrote:
> On Thu, 2013-04-04 at 09:35 +0300, Adrian Hunter wrote:
>> No, I am booting from eMMC.
>
> Well, in this case you should be aware, that your system is not
> concurrency-safe without the patch. It may or may not boot each time
> d
n)
../../lib/rbtree.c: In function 'rb_erase':
../../lib/rbtree.c:368:2: error: unknown type name 'bool'
make: *** [util/rbtree.o] Error 1
How about:
From: Adrian Hunter
Date: Fri, 31 Aug 2012 10:49:27 +0300
Subject: [PATCH] perf tools: fix build for another rbtree.c change
Fixes:
On 31/08/12 11:15, Andrew Morton wrote:
> On Fri, 31 Aug 2012 01:07:24 -0700 Michel Lespinasse
> wrote:
>
>> On Fri, Aug 31, 2012 at 1:01 AM, Adrian Hunter
>> wrote:
>>> This breaks tools/perf build in linux-next:
>>>
>>> ../../lib/rbtree
e_type changes
Removed perf_evlist__sample_type()
Added __perf_evlist__combined_sample_type()
Added perf_evlist__combined_sample_type()
Added perf_evlist__make_sample_types_compatible()
Added ack's to patches acked by Jiri Olsa
Enable parsing of samples with sample format bit
PERF_SAMPLE_IDENTFIER. In addition, if the kernel supports
it, prefer it to selecting PERF_SAMPLE_ID thereby avoiding
the need to force compatible sample types.
Signed-off-by: Adrian Hunter
---
tools/perf/tests/mmap-basic.c | 2 +-
tools/perf
struct ip_event assumes fixed positions for ip, pid
and tid. That is no longer true with the addition of
PERF_SAMPLE_IDENTIFIER. The information is anyway in
struct sample, so use that instead.
Signed-off-by: Adrian Hunter
Acked-by: Namhyung Kim
---
tools/perf/builtin-inject.c | 4
Expand perf_event__synthesize_sample() to handle all
sample format bits.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-inject.c | 4 +-
tools/perf/util/event.h | 1 +
tools/perf/util/evsel.c | 95 -
3 files changed, 97 insertions(+), 3
perf_evlist. It is
not used by the Python API.
Signed-off-by: Adrian Hunter
Acked-by: Namhyung Kim
---
tools/perf/Makefile | 1 +
tools/perf/util/evlist.c | 24
tools/perf/util/record.c | 27 +++
3 files changed, 28 insertions(+), 24 deletions
And store the parsed value there. Note that the 'abi' is
0 (no registers), 1 (32-bit registers) or 2 (64-bit registers),
but the registers are anyway copied one-by-one as 64-bit
values onto the event i.e. see 'perf_output_sample_regs()'
Signed-off-by: Adrian Hunter
must be read first
before it is possible to parse samples found later in the perf.data file.
Signed-off-by: Adrian Hunter
Acked-by: Peter Zijlstra
Tested-by: Stephane Eranian
---
include/uapi/linux/perf_event.h | 27 ---
kernel/events/core.c| 11 ++-
2
The size of data retrieved from a sample event must be
validated to ensure it does not go past the end of the
event. That was being done sporadically and without
considering integer overflows.
Signed-off-by: Adrian Hunter
Acked-by: Jiri Olsa
---
tools/perf/util/evsel.c | 112
Add a test that checks that sample parsing is correctly
implemented.
Signed-off-by: Adrian Hunter
---
tools/perf/Makefile | 1 +
tools/perf/tests/builtin-test.c | 4 +
tools/perf/tests/sample-parsing.c | 316 ++
tools/perf/tests/tests.h
Now that the sample parsing correctly checks data sizes
there is no reason for it to be done again for callchains.
Signed-off-by: Adrian Hunter
Acked-by: Namhyung Kim
---
tools/perf/util/callchain.c | 8
tools/perf/util/callchain.h | 5 -
tools/perf/util/session.c | 20
Add perf_event__sample_event_size() which can be used when
synthesizing sample events to determine how big the resulting
event will be, and therefore how much memory to allocate.
Signed-off-by: Adrian Hunter
---
tools/perf/util/event.h | 2 ++
tools/perf/util/evsel.c | 92
le on that basis.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-report.c | 2 +-
tools/perf/util/event.h | 14 +
tools/perf/util/evlist.c| 136 +---
tools/perf/util/evlist.h| 7 ++-
tools/perf/util/evsel.c
ndnew_thread(machine, pid, pid)
whereas the usage to find the specific thread is:
machine__findnew_thread(machine, pid, tid)
Signed-off-by: Adrian Hunter
Acked-by: David Ahern
---
tools/perf/builtin-inject.c | 2 +-
tools/perf/builtin-kmem.c | 3 ++-
tools/perf/builtin-kvm.c
Record pid on struct thread. The member is named 'pid_'
to avoid confusion with the 'tid' member which was previously
named 'pid'.
Signed-off-by: Adrian Hunter
Acked-by: David Ahern
---
tools/perf/util/machine.c | 16 +++-
tools/perf/util/threa
On 13/08/13 05:33, Namhyung Kim wrote:
> On Wed, 7 Aug 2013 16:30:31 +0300, Adrian Hunter wrote:
>> Add a test for the newly added PERF_COUNT_SW_DUMMY event.
>> The test checks that tracking events continue when an
>> event is disabled but a dummy software event is not
&g
On 07/08/13 16:30, Adrian Hunter wrote:
> When an event is disabled the "tracking" events
> selected by the 'mmap', 'comm' and 'task' bits of
> struct perf_event_attr, are also disabled. However,
> the information those events provide is neces
ndnew_thread(machine, pid, pid)
whereas the usage to find the specific thread is:
machine__findnew_thread(machine, pid, tid)
Signed-off-by: Adrian Hunter
Acked-by: David Ahern
---
tools/perf/builtin-inject.c | 2 +-
tools/perf/builtin-kmem.c | 3 ++-
tools/perf/builtin-kvm.c
pos calculation
id_pos/is_pos updated whenever sample_type changes
Removed perf_evlist__sample_type()
Added __perf_evlist__combined_sample_type()
Added perf_evlist__combined_sample_type()
Added perf_evlist__make_sample_types_compatible()
Expand perf_event__synthesize_sample() to handle all
sample format bits.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-inject.c | 4 +-
tools/perf/util/event.h | 1 +
tools/perf/util/evsel.c | 95 -
3 files changed, 97 insertions(+), 3
perf_evlist. It is
not used by the Python API.
Signed-off-by: Adrian Hunter
Acked-by: Namhyung Kim
---
tools/perf/Makefile | 1 +
tools/perf/util/evlist.c | 22 --
tools/perf/util/record.c | 25 +
3 files changed, 26 insertions(+), 22 deletions
Enable parsing of samples with sample format bit
PERF_SAMPLE_IDENTFIER. In addition, if the kernel supports
it, prefer it to selecting PERF_SAMPLE_ID thereby allowing
non-matching sample types.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-report.c | 2 +-
tools/perf/tests/mmap
Now that the sample parsing correctly checks data sizes
there is no reason for it to be done again for callchains.
Signed-off-by: Adrian Hunter
Acked-by: Namhyung Kim
---
tools/perf/util/callchain.c | 8
tools/perf/util/callchain.h | 5 -
tools/perf/util/session.c | 20
.
'perf_evlist__config()' forces sample types to be
compatible on that basis.
Signed-off-by: Adrian Hunter
---
tools/perf/util/event.h | 16
tools/perf/util/evlist.c | 25 +
tools/perf/util/evlist.h | 1 +
tools/perf/util/record.c | 5 -
4 files c
Add a test that checks that sample parsing is correctly
implemented.
Signed-off-by: Adrian Hunter
---
tools/perf/Makefile | 1 +
tools/perf/tests/builtin-test.c | 4 +
tools/perf/tests/sample-parsing.c | 316 ++
tools/perf/tests/tests.h
Add perf_event__sample_event_size() which can be used when
synthesizing sample events to determine how big the resulting
event will be, and therefore how much memory to allocate.
Signed-off-by: Adrian Hunter
---
tools/perf/util/event.h | 2 ++
tools/perf/util/evsel.c | 92
And store the parsed value there. Note that the 'abi' is
0 (no registers), 1 (32-bit registers) or 2 (64-bit registers),
but the registers are anyway copied one-by-one as 64-bit
values onto the event i.e. see 'perf_output_sample_regs()'
Signed-off-by: Adrian Hunter
must be read first
before it is possible to parse samples found later in the perf.data file.
Signed-off-by: Adrian Hunter
Acked-by: Peter Zijlstra
Tested-by: Stephane Eranian
---
include/uapi/linux/perf_event.h | 27 ---
kernel/events/core.c| 11 ++-
2
struct ip_event assumes fixed positions for ip, pid
and tid. That is no longer true with the addition of
PERF_SAMPLE_IDENTIFIER. The information is anyway in
struct sample, so use that instead.
Signed-off-by: Adrian Hunter
Acked-by: Namhyung Kim
---
tools/perf/builtin-inject.c | 4
The size of data retrieved from a sample event must be
validated to ensure it does not go past the end of the
event. That was being done sporadically and without
considering integer overflows.
Signed-off-by: Adrian Hunter
Acked-by: Jiri Olsa
---
tools/perf/util/evsel.c | 112
Hi
It does not seem possible to use set-output between
task contexts of different types (e.g. a software event
to a hardware event)
If you look at perf_event_set_output():
/*
* If its not a per-cpu rb, it must be the same task.
*/
if (output_event->cpu
On 02/10/13 16:23, Jiri Olsa wrote:
> hi,
> got a segfault in the tsc test on latest acme's tree.
>
> I'm dealing with some other issues right now, so just reporting ;-)
The capability bits have changed positions. You need to have:
commit fa7315871046b9a4c48627905691dbde57e51033
Author: Peter Z
On 03/10/13 11:17, Jiri Olsa wrote:
> On Wed, Oct 02, 2013 at 04:46:59PM +0300, Adrian Hunter wrote:
>> On 02/10/13 16:23, Jiri Olsa wrote:
>>> hi,
>>> got a segfault in the tsc test on latest acme's tree.
>>>
>>> I'm dealing with some
On 03/10/13 11:58, Peter Zijlstra wrote:
> On Thu, Oct 03, 2013 at 10:56:25AM +0200, Peter Zijlstra wrote:
>>> No the ABI is broken in that case - better to crash.
>>
>> No; neither case should crash.
>
> OK; previously we would report cap_usr_time = 1 even though we might not
> have written stuff
On 03/10/13 11:56, Peter Zijlstra wrote:
> On Thu, Oct 03, 2013 at 11:42:46AM +0300, Adrian Hunter wrote:
>> On 03/10/13 11:17, Jiri Olsa wrote:
>>> On Wed, Oct 02, 2013 at 04:46:59PM +0300, Adrian Hunter wrote:
>>>> On 02/10/13 16:23, Jiri Olsa wrote:
>>>
On 03/10/13 14:02, Peter Zijlstra wrote:
> On Thu, Oct 03, 2013 at 01:13:45PM +0300, Adrian Hunter wrote:
>>> Anyway; looking at this, why does time_zero have these different checks
>>> from the other time bits?
>>>
>>> @@ -1897,6 +1898,11 @
On 4/10/2013 8:31 p.m., tip-bot for Peter Zijlstra wrote:
Commit-ID: d8b11a0cbd1c66ce283eb9dabe0498dfa6483f32
Gitweb: http://git.kernel.org/tip/d8b11a0cbd1c66ce283eb9dabe0498dfa6483f32
Author: Peter Zijlstra
AuthorDate: Thu, 3 Oct 2013 16:00:14 +0200
Committer: Ingo Molnar
CommitDate:
machine__create_modules()
Use 'modules' pointer
Adrian Hunter (9):
perf tools: make a separate function to parse /proc/modules
perf tools: validate kcore module addresses
perf tools: workaround objdump difficulties with kcore
perf
When no vmlinux is found, tools will use kallsyms and,
if possible, kcore. Add the ability to find kcore in
the build-id cache.
Signed-off-by: Adrian Hunter
---
tools/perf/util/symbol.c | 147 +--
1 file changed, 103 insertions(+), 44 deletions
When following a call, annotate_browser__callq()
uses the current symbol's map to look up the
target ip. That will not work if the target ip
is on a map with a different mapping (i.e.
start - pgoff is different).
Signed-off-by: Adrian Hunter
---
tools/perf/ui/browsers/annotate.c
determined.
The tool will not make additional copies of kcore if there
is already one with the same modules at the same addresses.
Currently, perf tools will not look for kcore in the cache.
That is addressed in another patch.
Signed-off-by: Adrian Hunter
---
tools/perf/Documentation/perf-buildid
Add a function to copy a file specifying the
permissions to use for the created file.
Signed-off-by: Adrian Hunter
---
tools/perf/util/util.c | 18 +-
tools/perf/util/util.h | 1 +
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/tools/perf/util/util.c b/tools
Use the new map__find_other_map_symbol() to
find kcore symbols on other maps.
Signed-off-by: Adrian Hunter
---
tools/perf/util/annotate.c | 15 +--
1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
index 46746b8
object code.
Signed-off-by: Adrian Hunter
---
tools/perf/util/symbol.c | 194 ++-
1 file changed, 173 insertions(+), 21 deletions(-)
diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index ffdf2e7..668dbc3 100644
--- a/tools/perf/util
: Adrian Hunter
---
tools/perf/util/annotate.c | 21
tools/perf/util/symbol-elf.c | 221 +++
tools/perf/util/symbol-minimal.c | 9 ++
tools/perf/util/symbol.h | 14 +++
4 files changed, 265 insertions(+)
diff --git a/tools/perf/util
Make a separate function to parse /proc/modules
so that it can be reused.
Signed-off-by: Adrian Hunter
---
tools/perf/util/machine.c | 67 +--
tools/perf/util/symbol.c | 58
tools/perf/util/symbol.h | 3
Add a function to find a symbol using an ip that
might be on a different map.
Signed-off-by: Adrian Hunter
---
tools/perf/util/map.c | 27 +++
tools/perf/util/map.h | 2 ++
2 files changed, 29 insertions(+)
diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c
On 07/10/13 10:21, Jiri Olsa wrote:
> On Mon, Oct 07, 2013 at 11:47:13AM +0530, Ramkumar Ramachandra wrote:
>> Hi,
>>
>> `perf test` doesn't give me a clean run; it seems to be out-of-date. I
>> spent many hours on tracing "parse events tests" with gdb, but
>> preprocessor macros and other complexi
struct ip_event assumes fixeed positions for ip, pid
and tid. That is no longer true with the addition of
PERF_SAMPLE_IDENTIFIER. The information is anyway in
struct sample, so use that instead.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-inject.c | 4 ++--
tools/perf/builtin
Enable parsing of samples with sample format bit
PERF_SAMPLE_IDENTFIER. In addition, if the kernel supports
it, prefer it to selecting PERF_SAMPLE_ID thereby avoiding
the need to force compatible sample types.
Signed-off-by: Adrian Hunter
---
tools/perf/tests/mmap-basic.c | 2 +-
tools/perf
Record pid on struct thread. The member is named 'pid_'
to avoid confusion with the 'tid' member which was previously
named 'pid'.
Signed-off-by: Adrian Hunter
---
tools/perf/util/machine.c | 16 +++-
tools/perf/util/thread.c | 3 ++-
tools/perf/ut
d perf_evlist__combined_sample_type()
Added perf_evlist__make_sample_types_compatible()
Added ack's to patches acked by Jiri Olsa
Adrian Hunter (12):
perf tools: add debug prints
perf tools: allow non-matching sample types
perf tools: add pid t
It is useful to see the arguments to perf_event_open
and whether the perf events ring buffer was mmapped
per-cpu or per-thread. That information will now be
displayed when verbose is 2 i.e option -vv
Signed-off-by: Adrian Hunter
Acked-by: Jiri Olsa
---
tools/perf/util/evlist.c | 3 +++
tools
Expand perf_event__synthesize_sample() to handle all
sample format bits.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-inject.c | 3 +-
tools/perf/util/event.h | 1 +
tools/perf/util/evsel.c | 70 -
3 files changed, 72 insertions(+), 2
The size of data retrieved from a sample event must be
validated to ensure it does not go past the end of the
event. That was being done sporadically and without
considering integer overflows.
Signed-off-by: Adrian Hunter
---
tools/perf/util/evsel.c | 101
struct ip_event assumes fixed positions for ip, pid
and tid. That is no longer true with the addition of
PERF_SAMPLE_IDENTIFIER.
struct ip_event is no longer used except by hists_link.c.
Move it there.
Signed-off-by: Adrian Hunter
---
tools/perf/tests/hists_link.c | 23
, that is the first position
immediately after the header. For non-sample events, that is the last
position.
Signed-off-by: Adrian Hunter
---
include/uapi/linux/perf_event.h | 3 ++-
kernel/events/core.c| 11 ++-
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a
Add a test that checks that sample parsing is correctly
implemented.
Signed-off-by: Adrian Hunter
---
tools/perf/Makefile | 1 +
tools/perf/tests/builtin-test.c | 4 +
tools/perf/tests/sample-parsing.c | 231 ++
tools/perf/tests/tests.h
Add a new parameter for 'pid' to machine__findnew_thread().
Change callers to pass 'pid' when it is known.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-inject.c | 2 +-
tools/perf/builtin-kmem.c | 3 ++-
tools/perf/builtin-kvm.c | 3 ++-
tools/perf/bui
Now that the sample parsing correctly checks data sizes
there is no reason for it to be done again for callchains.
Signed-off-by: Adrian Hunter
---
tools/perf/util/callchain.c | 8
tools/perf/util/callchain.h | 5 -
tools/perf/util/session.c | 20
3 files
le on that basis.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-report.c | 2 +-
tools/perf/util/event.h | 14 +
tools/perf/util/evlist.c| 135 ++--
tools/perf/util/evlist.h| 8 ++-
tools/perf/util/evsel.c
On 05/07/13 16:24, Namhyung Kim wrote:
> Hi Adrian,
>
> On Thu, Jul 4, 2013 at 10:20 PM, Adrian Hunter
> wrote:
>> The event stream is not always parsable because the format of a sample
>> is dependent on the sample_type of the selected event. When there
>> is mo
On 11/07/13 18:43, David Ahern wrote:
> On 7/11/13 7:12 AM, Adrian Hunter wrote:
>> The event stream is not always parsable because the format of a sample
>> is dependent on the sample_type of the selected event. When there
>> is more than one selected event and the sam
On 12/07/13 12:56, Peter Zijlstra wrote:
> On Thu, Jul 11, 2013 at 04:12:18PM +0300, Adrian Hunter wrote:
>> The event stream is not always parsable because the format of a sample
>> is dependent on the sample_type of the selected event. When there
>> is more than one s
handling of kallsyms with kcore
which has been sent earlier.
Adrian Hunter (11):
perf tools: fix buildid cache handling of kallsyms with kcore
perf tools: fix path unpopulated in machine__create_modules()
perf tools: make a separate function to parse /proc/modules
perf
object code.
Signed-off-by: Adrian Hunter
---
tools/perf/util/symbol.c | 194 ++-
1 file changed, 173 insertions(+), 21 deletions(-)
diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index 1926292..eb9bd45 100644
--- a/tools/perf/util
: Adrian Hunter
---
tools/perf/util/annotate.c | 21
tools/perf/util/symbol-elf.c | 221 +++
tools/perf/util/symbol-minimal.c | 9 ++
tools/perf/util/symbol.h | 14 +++
4 files changed, 265 insertions(+)
diff --git a/tools/perf/util
In machine__create_modules() the 'path' char array
was used in a call to symbol__restricted_filename()
without always being populated.
Signed-off-by: Adrian Hunter
---
tools/perf/util/machine.c | 11 ---
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/tools
When no vmlinux is found, tools will use kallsyms and,
if possible, kcore. Add the ability to find kcore in
the build-id cache.
Signed-off-by: Adrian Hunter
---
tools/perf/util/symbol.c | 138 ---
1 file changed, 94 insertions(+), 44 deletions
determined.
The tool will not make additional copies of kcore if there
is already one with the same modules at the same addresses.
Currently, perf tools will not look for kcore in the cache.
That is addressed in another patch.
Signed-off-by: Adrian Hunter
---
tools/perf/Documentation/perf-buildid
When following a call, annotate_browser__callq()
uses the current symbol's map to look up the
target ip. That will not work if the target ip
is on a map with a different mapping (i.e.
start - pgoff is different).
Signed-off-by: Adrian Hunter
---
tools/perf/ui/browsers/annotate.c
Use the new map__find_other_map_symbol() to
find kcore symbols on other maps.
Signed-off-by: Adrian Hunter
---
tools/perf/util/annotate.c | 15 +--
1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
index 69cf8ae
Make a separate function to parse /proc/modules
so that it can be reused.
Signed-off-by: Adrian Hunter
---
tools/perf/util/machine.c | 67 +--
tools/perf/util/symbol.c | 58
tools/perf/util/symbol.h | 3
Add a function to copy a file specifying the
permissions to use for the created file.
Signed-off-by: Adrian Hunter
---
tools/perf/util/util.c | 18 +-
tools/perf/util/util.h | 1 +
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/tools/perf/util/util.c b/tools
Add a function to find a symbol using an ip that
might be on a different map.
Signed-off-by: Adrian Hunter
---
tools/perf/util/map.c | 27 +++
tools/perf/util/map.h | 2 ++
2 files changed, 29 insertions(+)
diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c
When kallsyms is used with kcore the dso long_name becomes
the kcore file name. That prevents the buildid cache from
caching kallsyms. (There is no support at present for
caching kcore). Fix by changing it so that the kallsyms
name is used in that case instead.
Signed-off-by: Adrian Hunter
cap_usr_fixed to identify kernels that have the capabilities bits fixed
2. Swap the positions of cap_usr_time and cap_usr_rdpmc so that
cap_usr_rdpmc remains in bit 0
>
> Vince
>
>
>
>
> On Tue, 23 Jul 2013, tip-bot for Adrian Hunter wrote:
>
>> Commit-I
On 19/09/13 13:40, Ingo Molnar wrote:
>
> * Peter Zijlstra wrote:
>
>> On Thu, Sep 19, 2013 at 12:28:18PM +0200, Ingo Molnar wrote:
>>
>> You really don't like version fields do you ;-)
>
> Indeed they are a horrible concept.
>
>> Would it make sense to do something like s/cap_usr/cap_user/ an
: Adrian Hunter
---
tools/perf/util/evlist.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
index b8727ae..7101283 100644
--- a/tools/perf/util/evlist.c
+++ b/tools/perf/util/evlist.c
@@ -446,20 +446,25 @@ static int
Add a test for parsing a non-sample event when there is
more than one selected event but no sample_id_all bit set.
The test fails because of a bug in the evlist logic. That
is fixed in a separate patch.
Signed-off-by: Adrian Hunter
---
tools/perf/Makefile | 3 +-
tools
Hi
Here is a fix, with a test to illustrate the issue.
Adrian Hunter (2):
perf tools: add test for parsing with no sample_id_all bit
perf tools: fix parsing with no sample_id_all bit set
tools/perf/Makefile | 3 +-
tools/perf/tests/builtin-test.c
Manipulating the sample_type of an evsel requires
the use of:
perf_evsel__set_sample_bit()
and perf_evsel__reset_sample_bit()
Manipulating the sample type of an evlist requires
the id position to be recalculated.
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-kvm.c | 20
Hi
Here is the sample identifier fix (version 2).
Changes in V2:
perf tools: fix id pos in perf_evlist__open()
New patch
perf kvm: fix sample_type manipulation
Remove setting of id_pos
Adrian Hunter (2):
perf tools: fix id pos in
Ensure the id_pos is correct when perf_evlist__open()
is used.
Signed-off-by: Adrian Hunter
---
tools/perf/util/evlist.c | 12
1 file changed, 12 insertions(+)
diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
index b8727ae..005c0eb 100644
--- a/tools/perf/util
Manipulating the sample_type of an evsel requires
the use of:
perf_evsel__set_sample_bit()
and perf_evsel__reset_sample_bit()
Signed-off-by: Adrian Hunter
---
tools/perf/builtin-kvm.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/tools/perf
On 09/09/13 14:17, Peter Zijlstra wrote:
> On Sun, Sep 01, 2013 at 12:36:11PM +0200, Jiri Olsa wrote:
>> hi,
>> sending the support for multiple file storage. Initial
>> RFC is here:
>> http://marc.info/?l=linux-kernel&m=137408381902423&w=2
>>
>> v2 changes:
>> - reworked perf mmap size setup to
ASM_CLAC
ret
retq
Signed-off-by: Adrian Hunter
---
tools/perf/util/annotate.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
index bfc5a27..7eae548 100644
-
When kallsyms is used with kcore the dso long_name becomes
the kcore file name. That prevents the buildid cache from
caching kallsyms. (There is no support at present for
caching kcore). Fix by changing it so that the kallsyms
name is used in that case instead.
Signed-off-by: Adrian Hunter
Add a feature check for get_phdrnum() and implement
a replacement if it is not present.
Signed-off-by: Adrian Hunter
---
tools/perf/config/Makefile | 3 +++
tools/perf/config/feature-tests.mak | 9 +
tools/perf/util/symbol-elf.c| 16
3 files changed
On 08/10/13 10:41, Namhyung Kim wrote:
> On Mon, 7 Oct 2013 09:50:17 +0300, Adrian Hunter wrote:
>> kcore can be used to view the running kernel object code.
>> However, kcore changes as modules are loaded and unloaded,
>> and when the kernel decides to modify its own code.
Make a separate function to parse /proc/modules
so that it can be reused.
Signed-off-by: Adrian Hunter
---
tools/perf/util/machine.c | 67 +--
tools/perf/util/symbol.c | 58
tools/perf/util/symbol.h | 3
ols: fix buildid cache handling of kallsyms with kcore
Dropped because it has been applied
perf tools: fix path unpopulated in machine__create_modules()
Use 'modules' pointer
Adrian Hunter (9):
perf tools: make a separate function to parse
When no vmlinux is found, tools will use kallsyms and,
if possible, kcore. Add the ability to find kcore in
the build-id cache.
Signed-off-by: Adrian Hunter
---
tools/perf/util/symbol.c | 147 +--
1 file changed, 103 insertions(+), 44 deletions
: Adrian Hunter
---
tools/perf/util/annotate.c | 21
tools/perf/util/symbol-elf.c | 221 +++
tools/perf/util/symbol-minimal.c | 9 ++
tools/perf/util/symbol.h | 14 +++
4 files changed, 265 insertions(+)
diff --git a/tools/perf/util
When following a call, annotate_browser__callq()
uses the current symbol's map to look up the
target ip. That will not work if the target ip
is on a map with a different mapping (i.e.
start - pgoff is different).
Signed-off-by: Adrian Hunter
---
tools/perf/ui/browsers/annotate.c
Add a function to copy a file specifying the
permissions to use for the created file.
Signed-off-by: Adrian Hunter
---
tools/perf/util/util.c | 18 +-
tools/perf/util/util.h | 1 +
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/tools/perf/util/util.c b/tools
1 - 100 of 4251 matches
Mail list logo