* [GIT PULL 0/5] perf/core improvements and fixes
@ 2010-11-26 21:47 Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 1/5] perf record: Add option to disable collecting build-ids Arnaldo Carvalho de Melo
` (4 more replies)
0 siblings, 5 replies; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-26 21:47 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Andreas Schwab,
Arnaldo Carvalho de Melo, Davidlohr Bueso, Frederic Weisbecker,
Ian Munsie, Ingo Molnar, Mike Galbraith, Paul Mackerras,
Peter Zijlstra, Shawn Bohrer, Stephane Eranian, Thomas Gleixner,
Tom Zanussi
From: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Hi Ingo,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 perf/core
Regards,
- Arnaldo
Arnaldo Carvalho de Melo (2):
perf record: Add option to disable collecting build-ids
perf events: Default to using event__process_lost
Davidlohr Bueso (1):
perf tools: Add GCC optimization to memory allocating functions
Ian Munsie (1):
perf symbols: Correct final kernel map guesses
Shawn Bohrer (1):
perf trace: Handle DT_UNKNOWN on filesystems that don't support
d_type
tools/perf/builtin-record.c | 14 ++++++++++--
tools/perf/builtin-trace.c | 33 ++++++++++++++++++++++++-------
tools/perf/util/event.c | 2 +-
tools/perf/util/header.c | 11 ++++++++-
tools/perf/util/header.h | 1 +
tools/perf/util/include/linux/bitops.h | 5 ++++
tools/perf/util/session.c | 2 +-
tools/perf/util/symbol.c | 2 +-
tools/perf/util/util.h | 5 ++-
9 files changed, 57 insertions(+), 18 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH 1/5] perf record: Add option to disable collecting build-ids
2010-11-26 21:47 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
@ 2010-11-26 21:47 ` Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 2/5] perf events: Default to using event__process_lost Arnaldo Carvalho de Melo
` (3 subsequent siblings)
4 siblings, 0 replies; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-26 21:47 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Frederic Weisbecker,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Stephane Eranian,
Thomas Gleixner, Tom Zanussi
From: Arnaldo Carvalho de Melo <acme@redhat.com>
Collecting build-ids for long running sessions may take a long time
because it needs to traverse the whole just collected perf.data stream
of events, marking the DSOs that had hits and then looking for the
.note.gnu.build-id ELF section.
For things like the 'trace' tool that records and right away consumes
the data on systems where its unlikely that the DSOs being monitored
will change while 'trace' runs, it is desirable to remove build id
collection, so add a -B/--no-buildid option to perf record to allow such
use case.
Longer term we'll avoid all this if we, at DSO load time, in the kernel,
take advantage of this slow code path to collect the build-id and stash
it somewhere, so that we can insert it in the PERF_RECORD_MMAP event.
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tom Zanussi <tzanussi@gmail.com>
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/builtin-record.c | 14 +++++++++++---
| 11 +++++++++--
| 1 +
tools/perf/util/include/linux/bitops.h | 5 +++++
4 files changed, 26 insertions(+), 5 deletions(-)
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index 3d2cb48..024e144 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -61,6 +61,7 @@ static bool inherit_stat = false;
static bool no_samples = false;
static bool sample_address = false;
static bool no_buildid = false;
+static bool no_buildid_cache = false;
static long samples = 0;
static u64 bytes_written = 0;
@@ -437,7 +438,8 @@ static void atexit_header(void)
if (!pipe_output) {
session->header.data_size += bytes_written;
- process_buildids();
+ if (!no_buildid)
+ process_buildids();
perf_header__write(&session->header, output, true);
perf_session__delete(session);
symbol__exit();
@@ -557,6 +559,9 @@ static int __cmd_record(int argc, const char **argv)
return -1;
}
+ if (!no_buildid)
+ perf_header__set_feat(&session->header, HEADER_BUILD_ID);
+
if (!file_new) {
err = perf_header__read(session, output);
if (err < 0)
@@ -831,8 +836,10 @@ const struct option record_options[] = {
"Sample addresses"),
OPT_BOOLEAN('n', "no-samples", &no_samples,
"don't sample"),
- OPT_BOOLEAN('N', "no-buildid-cache", &no_buildid,
+ OPT_BOOLEAN('N', "no-buildid-cache", &no_buildid_cache,
"do not update the buildid cache"),
+ OPT_BOOLEAN('B', "no-buildid", &no_buildid,
+ "do not collect buildids in perf.data"),
OPT_END()
};
@@ -857,7 +864,8 @@ int cmd_record(int argc, const char **argv, const char *prefix __used)
}
symbol__init();
- if (no_buildid)
+
+ if (no_buildid_cache || no_buildid)
disable_buildid_cache();
if (!nr_counters) {
--git a/tools/perf/util/header.c b/tools/perf/util/header.c
index d7e67b1..f65d7dc 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -152,6 +152,11 @@ void perf_header__set_feat(struct perf_header *self, int feat)
set_bit(feat, self->adds_features);
}
+void perf_header__clear_feat(struct perf_header *self, int feat)
+{
+ clear_bit(feat, self->adds_features);
+}
+
bool perf_header__has_feat(const struct perf_header *self, int feat)
{
return test_bit(feat, self->adds_features);
@@ -431,8 +436,10 @@ static int perf_header__adds_write(struct perf_header *self, int fd)
int idx = 0, err;
session = container_of(self, struct perf_session, header);
- if (perf_session__read_build_ids(session, true))
- perf_header__set_feat(self, HEADER_BUILD_ID);
+
+ if (perf_header__has_feat(self, HEADER_BUILD_ID &&
+ !perf_session__read_build_ids(session, true)))
+ perf_header__clear_feat(self, HEADER_BUILD_ID);
nr_sections = bitmap_weight(self->adds_features, HEADER_FEAT_BITS);
if (!nr_sections)
--git a/tools/perf/util/header.h b/tools/perf/util/header.h
index 402ac24..ed550bf 100644
--- a/tools/perf/util/header.h
+++ b/tools/perf/util/header.h
@@ -84,6 +84,7 @@ u64 perf_header__sample_type(struct perf_header *header);
struct perf_event_attr *
perf_header__find_attr(u64 id, struct perf_header *header);
void perf_header__set_feat(struct perf_header *self, int feat);
+void perf_header__clear_feat(struct perf_header *self, int feat);
bool perf_header__has_feat(const struct perf_header *self, int feat);
int perf_header__process_sections(struct perf_header *self, int fd,
diff --git a/tools/perf/util/include/linux/bitops.h b/tools/perf/util/include/linux/bitops.h
index bb4ac2e..8be0b96 100644
--- a/tools/perf/util/include/linux/bitops.h
+++ b/tools/perf/util/include/linux/bitops.h
@@ -13,6 +13,11 @@ static inline void set_bit(int nr, unsigned long *addr)
addr[nr / BITS_PER_LONG] |= 1UL << (nr % BITS_PER_LONG);
}
+static inline void clear_bit(int nr, unsigned long *addr)
+{
+ addr[nr / BITS_PER_LONG] &= ~(1UL << (nr % BITS_PER_LONG));
+}
+
static __always_inline int test_bit(unsigned int nr, const unsigned long *addr)
{
return ((1UL << (nr % BITS_PER_LONG)) &
--
1.6.2.5
^ permalink raw reply related [flat|nested] 39+ messages in thread
* [PATCH 2/5] perf events: Default to using event__process_lost
2010-11-26 21:47 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 1/5] perf record: Add option to disable collecting build-ids Arnaldo Carvalho de Melo
@ 2010-11-26 21:47 ` Arnaldo Carvalho de Melo
2010-11-26 23:55 ` Thomas Gleixner
2010-11-26 21:47 ` [PATCH 3/5] perf tools: Add GCC optimization to memory allocating functions Arnaldo Carvalho de Melo
` (2 subsequent siblings)
4 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-26 21:47 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Frederic Weisbecker,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Stephane Eranian,
Thomas Gleixner, Tom Zanussi
From: Arnaldo Carvalho de Melo <acme@redhat.com>
Tool developers have to fill in a 'perf_event_ops' method table to
specify how to handle each event, so far the ones that were not
explicitely especified would get a stub that would just discard the
event.
Change that so that tool developers can get the lost event details and
the total number of such events at the end of 'perf report -D' output.
Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
CC: Thomas Gleixner <tglx@linutronix.de>
Cc: Tom Zanussi <tzanussi@gmail.com>
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/session.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index fa9d652..3d56047 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -262,7 +262,7 @@ static void perf_event_ops__fill_defaults(struct perf_event_ops *handler)
if (handler->exit == NULL)
handler->exit = process_event_stub;
if (handler->lost == NULL)
- handler->lost = process_event_stub;
+ handler->lost = event__process_lost;
if (handler->read == NULL)
handler->read = process_event_stub;
if (handler->throttle == NULL)
--
1.6.2.5
^ permalink raw reply related [flat|nested] 39+ messages in thread
* Re: [PATCH 2/5] perf events: Default to using event__process_lost
2010-11-26 21:47 ` [PATCH 2/5] perf events: Default to using event__process_lost Arnaldo Carvalho de Melo
@ 2010-11-26 23:55 ` Thomas Gleixner
2010-11-27 0:18 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 39+ messages in thread
From: Thomas Gleixner @ 2010-11-26 23:55 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Ingo Molnar, linux-kernel, Arnaldo Carvalho de Melo,
Frederic Weisbecker, Mike Galbraith, Paul Mackerras,
Peter Zijlstra, Stephane Eranian, Tom Zanussi
On Fri, 26 Nov 2010, Arnaldo Carvalho de Melo wrote:
> From: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> Tool developers have to fill in a 'perf_event_ops' method table to
> specify how to handle each event, so far the ones that were not
> explicitely especified would get a stub that would just discard the
> event.
>
> Change that so that tool developers can get the lost event details and
> the total number of such events at the end of 'perf report -D' output.
That should be always displayed if the subcommand does not have it's
own lost event handling. I stared long enough into the wrong place,
just because the stupid thing just was silent about it. And with this
patch it's still silent for the normal use case.
We really want to tell the user when something went wrong. Users do
not run perf report -D when the tool shows fancy events, why should
they? Just because they know that the tool is hiding problems? If
that's the case then the trust into perf tools is about 0.
Darn, being silent about a known problem is the most stupid error
handling ever.
That's what I added at the end of perf_session__process_events()
+ if (self->hists.stats.total_lost)
+ fprintf(stderr, "Lost events. Check IO/CPU overload!\n");
It's hacky, but it does the job and tells me clearly that the trace is
only halfways useful.
There are only two files, which implement their own lost handling:
builtin-inject.c and builtin-script.c
So everything else looks at incomplete data and let's the user wonder
about the resulting crap in the output.
Thanks,
tglx
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH 2/5] perf events: Default to using event__process_lost
2010-11-26 23:55 ` Thomas Gleixner
@ 2010-11-27 0:18 ` Arnaldo Carvalho de Melo
0 siblings, 0 replies; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-27 0:18 UTC (permalink / raw)
To: Thomas Gleixner
Cc: Ingo Molnar, linux-kernel, Frederic Weisbecker, Mike Galbraith,
Paul Mackerras, Peter Zijlstra, Stephane Eranian, Tom Zanussi
Em Sat, Nov 27, 2010 at 12:55:24AM +0100, Thomas Gleixner escreveu:
> On Fri, 26 Nov 2010, Arnaldo Carvalho de Melo wrote:
>
> > From: Arnaldo Carvalho de Melo <acme@redhat.com>
> >
> > Tool developers have to fill in a 'perf_event_ops' method table to
> > specify how to handle each event, so far the ones that were not
> > explicitely especified would get a stub that would just discard the
> > event.
> >
> > Change that so that tool developers can get the lost event details and
> > the total number of such events at the end of 'perf report -D' output.
>
> That should be always displayed if the subcommand does not have it's
> own lost event handling. I stared long enough into the wrong place,
> just because the stupid thing just was silent about it. And with this
> patch it's still silent for the normal use case.
Will make it holler if perf_event_ops->lost == event__process_lost and
self->hists.stats.total_lost != 0, as you suggest.
> We really want to tell the user when something went wrong. Users do
> not run perf report -D when the tool shows fancy events, why should
> they? Just because they know that the tool is hiding problems? If
> that's the case then the trust into perf tools is about 0.
>
> Darn, being silent about a known problem is the most stupid error
> handling ever.
>
> That's what I added at the end of perf_session__process_events()
>
> + if (self->hists.stats.total_lost)
> + fprintf(stderr, "Lost events. Check IO/CPU overload!\n");
>
> It's hacky, but it does the job and tells me clearly that the trace is
> only halfways useful.
Ok, will implement it like you suggested, in a followon patch, in both
the --stdio and --tui modes.
- Arnaldo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH 3/5] perf tools: Add GCC optimization to memory allocating functions
2010-11-26 21:47 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 1/5] perf record: Add option to disable collecting build-ids Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 2/5] perf events: Default to using event__process_lost Arnaldo Carvalho de Melo
@ 2010-11-26 21:47 ` Arnaldo Carvalho de Melo
2010-11-27 0:30 ` Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 4/5] perf symbols: Correct final kernel map guesses Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 5/5] perf trace: Handle DT_UNKNOWN on filesystems that don't support d_type Arnaldo Carvalho de Melo
4 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-26 21:47 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Davidlohr Bueso, Ingo Molnar, Paul Mackerras,
Peter Zijlstra, Arnaldo Carvalho de Melo
From: Davidlohr Bueso <dave@gnu.org>
We can benefit from the alloc_size attribute in xrealloc and zalloc.
Quoting from http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html:
"The alloc_size attribute is used to tell the compiler that the function return
value points to memory, where the size is given by one or two of the functions
parameters. GCC uses this information to improve the correctness of
__builtin_object_size."
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1290777864.2373.2.camel@cowboy>
Signed-off-by: Davidlohr Bueso <dave@gnu.org>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/util.h | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/perf/util/util.h b/tools/perf/util/util.h
index 7562707..41a5067 100644
--- a/tools/perf/util/util.h
+++ b/tools/perf/util/util.h
@@ -182,10 +182,11 @@ static inline char *gitstrchrnul(const char *s, int c)
* Wrappers:
*/
extern char *xstrdup(const char *str);
-extern void *xrealloc(void *ptr, size_t size) __attribute__((weak));
+extern void *xrealloc(void *ptr, size_t size) __attribute__((weak, alloc_size(2)));
-static inline void *zalloc(size_t size)
+static inline __attribute__((alloc_size(1)))
+void *zalloc(size_t size)
{
return calloc(1, size);
}
--
1.6.2.5
^ permalink raw reply related [flat|nested] 39+ messages in thread
* Re: [PATCH 3/5] perf tools: Add GCC optimization to memory allocating functions
2010-11-26 21:47 ` [PATCH 3/5] perf tools: Add GCC optimization to memory allocating functions Arnaldo Carvalho de Melo
@ 2010-11-27 0:30 ` Arnaldo Carvalho de Melo
2010-11-29 12:54 ` Davidlohr Bueso
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-27 0:30 UTC (permalink / raw)
To: Ingo Molnar; +Cc: linux-kernel, Davidlohr Bueso, Paul Mackerras, Peter Zijlstra
Em Fri, Nov 26, 2010 at 07:47:19PM -0200, Arnaldo Carvalho de Melo escreveu:
> From: Davidlohr Bueso <dave@gnu.org>
>
> We can benefit from the alloc_size attribute in xrealloc and zalloc.
>
> Quoting from http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html:
>
> "The alloc_size attribute is used to tell the compiler that the function return
> value points to memory, where the size is given by one or two of the functions
> parameters. GCC uses this information to improve the correctness of
> __builtin_object_size."
Ingo, please don't pull this, it breaks the build with older GCCs...
util/util.h:185: warning: ‘alloc_size’ attribute directive ignored
util/util.h:190: warning: ‘alloc_size’ attribute directive ignored
make: *** [/home/acme/git/build/perf/builtin-annotate.o] Error 1
make: Leaving directory `/home/acme/git/linux-2.6-tip/tools/perf'
[acme@mica linux-2.6-tip]$ gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-libgcj-multifile
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada
--enable-java-awt=gtk --disable-dssi --enable-plugin
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre
--with-cpu=generic --host=x86_64-redhat-linux
Thread model: posix
gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)
I'll reorg this using compiler.h tricks probably, for now I'll just
remove it from my perf/core branch.
- Arnaldo
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH 3/5] perf tools: Add GCC optimization to memory allocating functions
2010-11-27 0:30 ` Arnaldo Carvalho de Melo
@ 2010-11-29 12:54 ` Davidlohr Bueso
0 siblings, 0 replies; 39+ messages in thread
From: Davidlohr Bueso @ 2010-11-29 12:54 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Ingo Molnar, linux-kernel, Paul Mackerras, Peter Zijlstra
On Fri, 2010-11-26 at 22:30 -0200, Arnaldo Carvalho de Melo wrote:
> Em Fri, Nov 26, 2010 at 07:47:19PM -0200, Arnaldo Carvalho de Melo escreveu:
> > From: Davidlohr Bueso <dave@gnu.org>
> >
> > We can benefit from the alloc_size attribute in xrealloc and zalloc.
> >
> > Quoting from http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html:
> >
> > "The alloc_size attribute is used to tell the compiler that the function return
> > value points to memory, where the size is given by one or two of the functions
> > parameters. GCC uses this information to improve the correctness of
> > __builtin_object_size."
>
> Ingo, please don't pull this, it breaks the build with older GCCs...
>
Sorry about that. This attribute was added for the 4.2 series in early
2007 (http://gcc.gnu.org/ml/gcc-patches/2007-04/msg01649.html)
> util/util.h:185: warning: ‘alloc_size’ attribute directive ignored
> util/util.h:190: warning: ‘alloc_size’ attribute directive ignored
> make: *** [/home/acme/git/build/perf/builtin-annotate.o] Error 1
> make: Leaving directory `/home/acme/git/linux-2.6-tip/tools/perf'
> [acme@mica linux-2.6-tip]$ gcc -v
> Using built-in specs.
> Target: x86_64-redhat-linux
> Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
> --infodir=/usr/share/info --enable-shared --enable-threads=posix
> --enable-checking=release --with-system-zlib --enable-__cxa_atexit
> --disable-libunwind-exceptions --enable-libgcj-multifile
> --enable-languages=c,c++,objc,obj-c++,java,fortran,ada
> --enable-java-awt=gtk --disable-dssi --enable-plugin
> --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre
> --with-cpu=generic --host=x86_64-redhat-linux
> Thread model: posix
> gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)
>
> I'll reorg this using compiler.h tricks probably, for now I'll just
> remove it from my perf/core branch.
>
> - Arnaldo
>
^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH 4/5] perf symbols: Correct final kernel map guesses
2010-11-26 21:47 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (2 preceding siblings ...)
2010-11-26 21:47 ` [PATCH 3/5] perf tools: Add GCC optimization to memory allocating functions Arnaldo Carvalho de Melo
@ 2010-11-26 21:47 ` Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 5/5] perf trace: Handle DT_UNKNOWN on filesystems that don't support d_type Arnaldo Carvalho de Melo
4 siblings, 0 replies; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-26 21:47 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Ian Munsie, Ingo Molnar, Paul Mackerras,
Peter Zijlstra, Arnaldo Carvalho de Melo
From: Ian Munsie <imunsie@au1.ibm.com>
If a 32bit userspace perf is running on a 64bit kernel, the end of the final
map in the kernel would incorrectly be set to 2^32-1 rather than 2^64-1.
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1290658375-10342-1-git-send-email-imunsie@au1.ibm.com>
Signed-off-by: Ian Munsie <imunsie@au1.ibm.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/event.c | 2 +-
tools/perf/util/symbol.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/perf/util/event.c b/tools/perf/util/event.c
index dab9e75..7260db7 100644
--- a/tools/perf/util/event.c
+++ b/tools/perf/util/event.c
@@ -392,7 +392,7 @@ static void event_set_kernel_mmap_len(struct map **maps, event_t *self)
* a zero sized synthesized MMAP event for the kernel.
*/
if (maps[MAP__FUNCTION]->end == 0)
- maps[MAP__FUNCTION]->end = ~0UL;
+ maps[MAP__FUNCTION]->end = ~0ULL;
}
static int event__process_kernel_mmap(event_t *self,
diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index 0500895..a348906 100644
--- a/tools/perf/util/symbol.c
+++ b/tools/perf/util/symbol.c
@@ -121,7 +121,7 @@ static void __map_groups__fixup_end(struct map_groups *self, enum map_type type)
* We still haven't the actual symbols, so guess the
* last map final address.
*/
- curr->end = ~0UL;
+ curr->end = ~0ULL;
}
static void map_groups__fixup_end(struct map_groups *self)
--
1.6.2.5
^ permalink raw reply related [flat|nested] 39+ messages in thread
* [PATCH 5/5] perf trace: Handle DT_UNKNOWN on filesystems that don't support d_type
2010-11-26 21:47 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (3 preceding siblings ...)
2010-11-26 21:47 ` [PATCH 4/5] perf symbols: Correct final kernel map guesses Arnaldo Carvalho de Melo
@ 2010-11-26 21:47 ` Arnaldo Carvalho de Melo
4 siblings, 0 replies; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-26 21:47 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Shawn Bohrer, Andreas Schwab, Ingo Molnar,
Paul Mackerras, Peter Zijlstra, Arnaldo Carvalho de Melo
From: Shawn Bohrer <sbohrer@rgmadvisors.com>
Some filesystems like xfs and reiserfs will return DT_UNKNOWN for the
d_type. Handle this case by calling stat() to determine the type.
Cc: Andreas Schwab <schwab@linux-m68k.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1290355779-3276-1-git-send-email-sbohrer@rgmadvisors.com>
Signed-off-by: Shawn Bohrer <sbohrer@rgmadvisors.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/builtin-trace.c | 33 +++++++++++++++++++++++++--------
1 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index 86cfe38..4783ed8 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -301,17 +301,34 @@ static int parse_scriptname(const struct option *opt __used,
return 0;
}
-#define for_each_lang(scripts_dir, lang_dirent, lang_next) \
+/* Helper function for filesystems that return a dent->d_type DT_UNKNOWN */
+static int is_directory(const char *base_path, const struct dirent *dent)
+{
+ char path[PATH_MAX];
+ struct stat st;
+
+ sprintf(path, "%s/%s", base_path, dent->d_name);
+ if (stat(path, &st))
+ return 0;
+
+ return S_ISDIR(st.st_mode);
+}
+
+#define for_each_lang(scripts_path, scripts_dir, lang_dirent, lang_next)\
while (!readdir_r(scripts_dir, &lang_dirent, &lang_next) && \
lang_next) \
- if (lang_dirent.d_type == DT_DIR && \
+ if ((lang_dirent.d_type == DT_DIR || \
+ (lang_dirent.d_type == DT_UNKNOWN && \
+ is_directory(scripts_path, &lang_dirent))) && \
(strcmp(lang_dirent.d_name, ".")) && \
(strcmp(lang_dirent.d_name, "..")))
-#define for_each_script(lang_dir, script_dirent, script_next) \
+#define for_each_script(lang_path, lang_dir, script_dirent, script_next)\
while (!readdir_r(lang_dir, &script_dirent, &script_next) && \
script_next) \
- if (script_dirent.d_type != DT_DIR)
+ if (script_dirent.d_type != DT_DIR && \
+ (script_dirent.d_type != DT_UNKNOWN || \
+ !is_directory(lang_path, &script_dirent)))
#define RECORD_SUFFIX "-record"
@@ -466,14 +483,14 @@ static int list_available_scripts(const struct option *opt __used,
if (!scripts_dir)
return -1;
- for_each_lang(scripts_dir, lang_dirent, lang_next) {
+ for_each_lang(scripts_path, scripts_dir, lang_dirent, lang_next) {
snprintf(lang_path, MAXPATHLEN, "%s/%s/bin", scripts_path,
lang_dirent.d_name);
lang_dir = opendir(lang_path);
if (!lang_dir)
continue;
- for_each_script(lang_dir, script_dirent, script_next) {
+ for_each_script(lang_path, lang_dir, script_dirent, script_next) {
script_root = strdup(script_dirent.d_name);
str = ends_with(script_root, REPORT_SUFFIX);
if (str) {
@@ -514,14 +531,14 @@ static char *get_script_path(const char *script_root, const char *suffix)
if (!scripts_dir)
return NULL;
- for_each_lang(scripts_dir, lang_dirent, lang_next) {
+ for_each_lang(scripts_path, scripts_dir, lang_dirent, lang_next) {
snprintf(lang_path, MAXPATHLEN, "%s/%s/bin", scripts_path,
lang_dirent.d_name);
lang_dir = opendir(lang_path);
if (!lang_dir)
continue;
- for_each_script(lang_dir, script_dirent, script_next) {
+ for_each_script(lang_path, lang_dir, script_dirent, script_next) {
__script_root = strdup(script_dirent.d_name);
str = ends_with(__script_root, suffix);
if (str) {
--
1.6.2.5
^ permalink raw reply related [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2018-02-21 1:34 Arnaldo Carvalho de Melo
2018-02-21 7:52 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2018-02-21 1:34 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, linux-perf-users, Arnaldo Carvalho de Melo,
Adrian Hunter, Alexander Shishkin, Changbin Du, David Ahern,
Heiko Carstens, Hendrik Brueckner, Jaroslav Škarvada,
Jiri Olsa, kernel-team, Martin Schwidefsky, Namhyung Kim,
Peter Zijlstra, Thomas Richter, Wang Nan,
Arnaldo Carvalho de Melo
Hi Ingo,
Please consider pulling,
- Arnaldo
Test results at the end of this message, as usual.
The following changes since commit 11737ca9e3b9d84448fa405a80980aa9957bcee8:
Merge tag 'perf-core-for-mingo-4.17-20180216' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core (2018-02-17 11:39:47 +0100)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-4.17-20180220
for you to fetch changes up to 66dfdff03d196e51322c6a85c0d8db8bb2bdd655:
perf tools: Add Python 3 support (2018-02-19 12:28:23 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
- Initial support for linking with python3, by explicitely setting
the PYTHON Makefile variable, python2 remains supported, more work
needed to test the shipped python scripts used with 'perf script'
(Jaroslav Škarvada)
- Make twatch.py, an example python script that sets up evlists and
evsels to then parse events from mmap, to work with both python2 and
python3 (Arnaldo Carvalho de Melo)
- Fix setting 'perf ftrace' function filter when using a non-existent
function, which should result in an error instead of simply not setting
the filter and showing all functions (Changbin Du)
- Fix paranoid check in machine__set_kernel_mmap(), problem introduced
in previous perf/core batch (Namhyung Kim)
- Fix reading cpuid model information in s/390, ditto, also introduced
in the previous perf/core batch (Thomas Richter)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----------------------------------------------------------------
Arnaldo Carvalho de Melo (1):
perf python: Make twatch.py work with both python2 and python3
Changbin Du (1):
perf ftrace: Append an EOL when write tracing files
Jaroslav Škarvada (1):
perf tools: Add Python 3 support
Namhyung Kim (1):
perf machine: Fix paranoid check in machine__set_kernel_mmap()
Thomas Richter (1):
perf s390: Fix reading cpuid model information
tools/perf/Makefile.config | 23 +---
tools/perf/Makefile.perf | 4 +-
tools/perf/arch/s390/util/header.c | 2 +-
tools/perf/builtin-ftrace.c | 18 ++-
tools/perf/python/twatch.py | 8 +-
.../perf/scripts/python/Perf-Trace-Util/Context.c | 34 ++++-
tools/perf/util/machine.c | 2 +-
tools/perf/util/python.c | 95 ++++++++++---
.../util/scripting-engines/trace-event-python.c | 147 +++++++++++++++------
tools/perf/util/setup.py | 6 +-
10 files changed, 243 insertions(+), 96 deletions(-)
Test results:
The first ones are container (docker) based builds of tools/perf with and
without libelf support. Where clang is available, it is also used to build
perf with/without libelf.
The objtool and samples/bpf/ builds are disabled now that I'm switching from
using the sources in a local volume to fetching them from a http server to
build it inside the container, to make it easier to build in a container cluster.
Those will come back later.
Several are cross builds, the ones with -x-ARCH and the android one, and those
may not have all the features built, due to lack of multi-arch devel packages,
available and being used so far on just a few, like
debian:experimental-x-{arm64,mipsel}.
The 'perf test' one will perform a variety of tests exercising
tools/perf/util/, tools/lib/{bpf,traceevent,etc}, as well as run perf commands
with a variety of command line event specifications to then intercept the
sys_perf_event syscall to check that the perf_event_attr fields are set up as
expected, among a variety of other unit tests.
Then there is the 'make -C tools/perf build-test' ones, that build tools/perf/
with a variety of feature sets, exercising the build with an incomplete set of
features as well as with a complete one. It is planned to have it run on each
of the containers mentioned above, using some container orchestration
infrastructure. Get in contact if interested in helping having this in place.
Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz
# dm
1 49.10 alpine:3.4 : Ok gcc (Alpine 5.3.0) 5.3.0
2 51.30 alpine:3.5 : Ok gcc (Alpine 6.2.1) 6.2.1 20160822
3 53.53 alpine:3.6 : Ok gcc (Alpine 6.3.0) 6.3.0
4 54.74 alpine:edge : Ok gcc (Alpine 6.4.0) 6.4.0
5 41.38 amazonlinux:1 : Ok gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11)
6 58.50 amazonlinux:2 : Ok gcc (GCC) 7.2.1 20170915 (Red Hat 7.2.1-2)
7 35.52 android-ndk:r12b-arm : Ok arm-linux-androideabi-gcc (GCC) 4.9.x 20150123 (prerelease)
8 34.34 android-ndk:r15c-arm : Ok arm-linux-androideabi-gcc (GCC) 4.9.x 20150123 (prerelease)
9 31.16 centos:5 : Ok gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-55)
10 40.51 centos:6 : Ok gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
11 50.00 centos:7 : Ok gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16)
12 40.12 debian:7 : Ok gcc (Debian 4.7.2-5) 4.7.2
13 41.64 debian:8 : Ok gcc (Debian 4.9.2-10+deb8u1) 4.9.2
14 69.65 debian:9 : Ok gcc (Debian 6.3.0-18) 6.3.0 20170516
15 91.07 debian:experimental : Ok gcc (Debian 7.2.0-18) 7.2.0
16 48.13 debian:experimental-x-arm64 : Ok aarch64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
17 41.69 debian:experimental-x-mips : Ok mips-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
18 36.72 debian:experimental-x-mips64 : Ok mips64-linux-gnuabi64-gcc (Debian 7.2.0-11) 7.2.0
19 52.76 debian:experimental-x-mipsel : Ok mipsel-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
20 49.01 fedora:20 : Ok gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-7)
21 54.99 fedora:21 : Ok gcc (GCC) 4.9.2 20150212 (Red Hat 4.9.2-6)
22 39.61 fedora:22 : Ok gcc (GCC) 5.3.1 20160406 (Red Hat 5.3.1-6)
23 42.29 fedora:23 : Ok gcc (GCC) 5.3.1 20160406 (Red Hat 5.3.1-6)
24 41.84 fedora:24 : Ok gcc (GCC) 6.3.1 20161221 (Red Hat 6.3.1-1)
25 36.88 fedora:24-x-ARC-uClibc : Ok arc-linux-gcc (ARCompact ISA Linux uClibc toolchain 2017.09-rc2) 7.1.1 20170710
26 78.12 fedora:25 : Ok gcc (GCC) 6.4.1 20170727 (Red Hat 6.4.1-1)
27 80.48 fedora:26 : Ok gcc (GCC) 7.2.1 20170915 (Red Hat 7.2.1-2)
28 81.00 fedora:27 : Ok gcc (GCC) 7.2.1 20170915 (Red Hat 7.2.1-2)
29 115.57 fedora:rawhide : Ok gcc (GCC) 7.2.1 20170915 (Red Hat 7.2.1-4)
30 42.70 gentoo-stage3-amd64:latest : Ok gcc (Gentoo 6.4.0-r1 p1.3) 6.4.0
31 45.48 mageia:5 : Ok gcc (GCC) 4.9.2
32 42.61 mageia:6 : Ok gcc (Mageia 5.4.0-5.mga6) 5.4.0
33 42.05 opensuse:42.1 : Ok gcc (SUSE Linux) 4.8.5
34 43.63 opensuse:42.2 : Ok gcc (SUSE Linux) 4.8.5
35 47.48 opensuse:42.3 : Ok gcc (SUSE Linux) 4.8.5
36 90.12 opensuse:tumbleweed : Ok gcc (SUSE Linux) 7.3.0
37 35.32 oraclelinux:6 : Ok gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
38 41.55 oraclelinux:7 : Ok gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16)
39 33.95 ubuntu:12.04.5 : Ok gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
40 39.13 ubuntu:14.04.4 : Ok gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
41 33.62 ubuntu:14.04.4-x-linaro-arm64 : Ok aarch64-linux-gnu-gcc (Linaro GCC 5.5-2017.10) 5.5.0
42 62.84 ubuntu:16.04 : Ok gcc (Ubuntu 5.4.0-6ubuntu1~16.04.6) 5.4.0 20160609
43 38.41 ubuntu:16.04-x-arm : Ok arm-linux-gnueabihf-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
44 41.31 ubuntu:16.04-x-arm64 : Ok aarch64-linux-gnu-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
45 40.18 ubuntu:16.04-x-powerpc : Ok powerpc-linux-gnu-gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
46 35.83 ubuntu:16.04-x-powerpc64 : Ok powerpc64-linux-gnu-gcc (Ubuntu/IBM 5.4.0-6ubuntu1~16.04.1) 5.4.0 20160609
47 35.91 ubuntu:16.04-x-powerpc64el : Ok powerpc64le-linux-gnu-gcc (Ubuntu/IBM 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
48 32.80 ubuntu:16.04-x-s390 : Ok s390x-linux-gnu-gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
49 65.42 ubuntu:16.10 : Ok gcc (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005
50 67.55 ubuntu:17.04 : Ok gcc (Ubuntu 6.3.0-12ubuntu2) 6.3.0 20170406
51 68.25 ubuntu:17.10 : Ok gcc (Ubuntu 7.2.0-8ubuntu3) 7.2.0
52 72.18 ubuntu:18.04 : Ok gcc (Ubuntu 7.3.0-3ubuntu1) 7.3.0
#
# uname -a
Linux jouet 4.16.0-rc2 #2 SMP Mon Feb 19 14:41:03 -03 2018 x86_64 x86_64 x86_64 GNU/Linux
# perf test
1: vmlinux symtab matches kallsyms : Ok
2: Detect openat syscall event : Ok
3: Detect openat syscall event on all cpus : Ok
4: Read samples using the mmap interface : Ok
5: Test data source output : Ok
6: Parse event definition strings : Ok
7: Simple expression parser : Ok
8: PERF_RECORD_* events & perf_sample fields : Ok
9: Parse perf pmu format : Ok
10: DSO data read : Ok
11: DSO data cache : Ok
12: DSO data reopen : Ok
13: Roundtrip evsel->name : Ok
14: Parse sched tracepoints fields : Ok
15: syscalls:sys_enter_openat event fields : Ok
16: Setup struct perf_event_attr : Ok
17: Match and link multiple hists : Ok
18: 'import perf' in python : Ok
19: Breakpoint overflow signal handler : Ok
20: Breakpoint overflow sampling : Ok
21: Number of exit events of a simple workload : Ok
22: Software clock events period values : Ok
23: Object code reading : Ok
24: Sample parsing : Ok
25: Use a dummy software event to keep tracking : Ok
26: Parse with no sample_id_all bit set : Ok
27: Filter hist entries : Ok
28: Lookup mmap thread : Ok
29: Share thread mg : Ok
30: Sort output of hist entries : Ok
31: Cumulate child hist entries : Ok
32: Track with sched_switch : Ok
33: Filter fds with revents mask in a fdarray : Ok
34: Add fd to a fdarray, making it autogrow : Ok
35: kmod_path__parse : Ok
36: Thread map : Ok
37: LLVM search and compile :
37.1: Basic BPF llvm compile : Ok
37.2: kbuild searching : Ok
37.3: Compile source for BPF prologue generation : Ok
37.4: Compile source for BPF relocation : Ok
38: Session topology : Ok
39: BPF filter :
39.1: Basic BPF filtering : Ok
39.2: BPF pinning : Ok
39.3: BPF prologue generation : Ok
39.4: BPF relocation checker : Ok
40: Synthesize thread map : Ok
41: Remove thread map : Ok
42: Synthesize cpu map : Ok
43: Synthesize stat config : Ok
44: Synthesize stat : Ok
45: Synthesize stat round : Ok
46: Synthesize attr update : Ok
47: Event times : Ok
48: Read backward ring buffer : Ok
49: Print cpu map : Ok
50: Probe SDT events : Ok
51: is_printable_array : Ok
52: Print bitmap : Ok
53: perf hooks : Ok
54: builtin clang support : Skip (not compiled in)
55: unit_number__scnprintf : Ok
56: x86 rdpmc : Ok
57: Convert perf time to TSC : Ok
58: DWARF unwind : Ok
59: x86 instruction decoder - new instructions : Ok
60: Use vfs_getname probe to get syscall args filenames : Ok
61: probe libc's inet_pton & backtrace it with ping : Ok
62: Check open filename arg using perf trace + vfs_getname: Ok
63: Add vfs_getname probe to get syscall args filenames : Ok
#
$ make -C tools/perf build-test
make: Entering directory '/home/acme/git/perf/tools/perf'
- tarpkg: ./tests/perf-targz-src-pkg .
make_install_prefix_slash_O: make install prefix=/tmp/krava/
make_no_libelf_O: make NO_LIBELF=1
make_no_slang_O: make NO_SLANG=1
make_with_babeltrace_O: make LIBBABELTRACE=1
make_install_O: make install
make_no_libbpf_O: make NO_LIBBPF=1
make_pure_O: make
make_no_libdw_dwarf_unwind_O: make NO_LIBDW_DWARF_UNWIND=1
make_no_backtrace_O: make NO_BACKTRACE=1
make_no_demangle_O: make NO_DEMANGLE=1
make_tags_O: make tags
make_no_libperl_O: make NO_LIBPERL=1
make_with_clangllvm_O: make LIBCLANGLLVM=1
make_no_libunwind_O: make NO_LIBUNWIND=1
make_no_libbionic_O: make NO_LIBBIONIC=1
make_no_newt_O: make NO_NEWT=1
make_no_libpython_O: make NO_LIBPYTHON=1
make_clean_all_O: make clean all
make_no_libaudit_O: make NO_LIBAUDIT=1
make_static_O: make LDFLAGS=-static
make_doc_O: make doc
make_no_gtk2_O: make NO_GTK2=1
make_install_prefix_O: make install prefix=/tmp/krava
make_no_auxtrace_O: make NO_AUXTRACE=1
make_util_pmu_bison_o_O: make util/pmu-bison.o
make_help_O: make help
make_no_scripts_O: make NO_LIBPYTHON=1 NO_LIBPERL=1
make_no_ui_O: make NO_NEWT=1 NO_SLANG=1 NO_GTK2=1
make_install_bin_O: make install-bin
make_minimal_O: make NO_LIBPERL=1 NO_LIBPYTHON=1 NO_NEWT=1 NO_GTK2=1 NO_DEMANGLE=1 NO_LIBELF=1 NO_LIBUNWIND=1 NO_BACKTRACE=1 NO_LIBNUMA=1 NO_LIBAUDIT=1 NO_LIBBIONIC=1 NO_LIBDW_DWARF_UNWIND=1 NO_AUXTRACE=1 NO_LIBBPF=1 NO_LIBCRYPTO=1 NO_SDT=1 NO_JVMTI=1
make_util_map_o_O: make util/map.o
make_debug_O: make DEBUG=1
make_no_libnuma_O: make NO_LIBNUMA=1
make_perf_o_O: make perf.o
OK
make: Leaving directory '/home/acme/git/perf/tools/perf'
$
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2018-02-21 1:34 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
@ 2018-02-21 7:52 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2018-02-21 7:52 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: linux-kernel, linux-perf-users, Adrian Hunter,
Alexander Shishkin, Changbin Du, David Ahern, Heiko Carstens,
Hendrik Brueckner, Jaroslav Škarvada, Jiri Olsa,
kernel-team, Martin Schwidefsky, Namhyung Kim, Peter Zijlstra,
Thomas Richter, Wang Nan, Arnaldo Carvalho de Melo
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Hi Ingo,
>
> Please consider pulling,
>
> - Arnaldo
>
> Test results at the end of this message, as usual.
>
> The following changes since commit 11737ca9e3b9d84448fa405a80980aa9957bcee8:
>
> Merge tag 'perf-core-for-mingo-4.17-20180216' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core (2018-02-17 11:39:47 +0100)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-4.17-20180220
>
> for you to fetch changes up to 66dfdff03d196e51322c6a85c0d8db8bb2bdd655:
>
> perf tools: Add Python 3 support (2018-02-19 12:28:23 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> - Initial support for linking with python3, by explicitely setting
> the PYTHON Makefile variable, python2 remains supported, more work
> needed to test the shipped python scripts used with 'perf script'
> (Jaroslav Škarvada)
>
> - Make twatch.py, an example python script that sets up evlists and
> evsels to then parse events from mmap, to work with both python2 and
> python3 (Arnaldo Carvalho de Melo)
>
> - Fix setting 'perf ftrace' function filter when using a non-existent
> function, which should result in an error instead of simply not setting
> the filter and showing all functions (Changbin Du)
>
> - Fix paranoid check in machine__set_kernel_mmap(), problem introduced
> in previous perf/core batch (Namhyung Kim)
>
> - Fix reading cpuid model information in s/390, ditto, also introduced
> in the previous perf/core batch (Thomas Richter)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> Arnaldo Carvalho de Melo (1):
> perf python: Make twatch.py work with both python2 and python3
>
> Changbin Du (1):
> perf ftrace: Append an EOL when write tracing files
>
> Jaroslav Škarvada (1):
> perf tools: Add Python 3 support
>
> Namhyung Kim (1):
> perf machine: Fix paranoid check in machine__set_kernel_mmap()
>
> Thomas Richter (1):
> perf s390: Fix reading cpuid model information
>
> tools/perf/Makefile.config | 23 +---
> tools/perf/Makefile.perf | 4 +-
> tools/perf/arch/s390/util/header.c | 2 +-
> tools/perf/builtin-ftrace.c | 18 ++-
> tools/perf/python/twatch.py | 8 +-
> .../perf/scripts/python/Perf-Trace-Util/Context.c | 34 ++++-
> tools/perf/util/machine.c | 2 +-
> tools/perf/util/python.c | 95 ++++++++++---
> .../util/scripting-engines/trace-event-python.c | 147 +++++++++++++++------
> tools/perf/util/setup.py | 6 +-
> 10 files changed, 243 insertions(+), 96 deletions(-)
Pulled, thanks a lot Arnaldo!
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2015-10-21 21:31 Arnaldo Carvalho de Melo
2015-10-22 7:34 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-10-21 21:31 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter,
Alexei Starovoitov, Andi Kleen, Borislav Petkov, David Ahern,
Frederic Weisbecker, Jiri Olsa, Kan Liang, kvm, Masami Hiramatsu,
Namhyung Kim, Paolo Bonzini, Paul Mackerras, Peter Zijlstra,
Stephane Eranian, Steven Rostedt, Wang Nan, Yunlong Song,
Arnaldo Carvalho de Melo
Hi Ingo,
Please consider pulling,
- Arnaldo
The following changes since commit 43e41adc9e8c36545888d78fed2ef8d102a938dc:
perf record: Add ability to sample call branches (2015-10-20 10:30:55 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
for you to fetch changes up to e3d006ce8180a0c025ce66bdc89bbc125f85be57:
perf annotate: Add debug message for out of bounds sample (2015-10-21 18:12:37 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
User visible:
- Print branch filter state with verbose mode (Andi Kleen)
- Fix core dump caused by per-socket/core system-wide stat (Kan Liang)
- Update libtraceevent KVM plugin (Paolo Bonzini)
Developer stuff:
- Add fixdep to 'tools/build' .gitignore (Yunlong Song)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----------------------------------------------------------------
Andi Kleen (1):
perf evsel: Print branch filter state with -vv
Arnaldo Carvalho de Melo (1):
perf annotate: Add debug message for out of bounds sample
Kan Liang (1):
perf cpu_map: Fix core dump caused by per-socket/core system-wide stat
Paolo Bonzini (1):
tools lib traceevent: update KVM plugin
Yunlong Song (1):
perf build: Add fixdep to .gitignore
tools/build/.gitignore | 1 +
tools/lib/traceevent/plugin_kvm.c | 25 +++++++++++++++++--------
tools/perf/util/annotate.c | 5 ++++-
tools/perf/util/cpumap.c | 2 +-
tools/perf/util/evsel.c | 1 +
5 files changed, 24 insertions(+), 10 deletions(-)
create mode 100644 tools/build/.gitignore
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2015-10-21 21:31 Arnaldo Carvalho de Melo
@ 2015-10-22 7:34 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2015-10-22 7:34 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: linux-kernel, Adrian Hunter, Alexei Starovoitov, Andi Kleen,
Borislav Petkov, David Ahern, Frederic Weisbecker, Jiri Olsa,
Kan Liang, kvm, Masami Hiramatsu, Namhyung Kim, Paolo Bonzini,
Paul Mackerras, Peter Zijlstra, Stephane Eranian, Steven Rostedt,
Wang Nan, Yunlong Song, Arnaldo Carvalho de Melo
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Hi Ingo,
>
> Please consider pulling,
>
> - Arnaldo
>
> The following changes since commit 43e41adc9e8c36545888d78fed2ef8d102a938dc:
>
> perf record: Add ability to sample call branches (2015-10-20 10:30:55 +0200)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
>
> for you to fetch changes up to e3d006ce8180a0c025ce66bdc89bbc125f85be57:
>
> perf annotate: Add debug message for out of bounds sample (2015-10-21 18:12:37 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> User visible:
>
> - Print branch filter state with verbose mode (Andi Kleen)
>
> - Fix core dump caused by per-socket/core system-wide stat (Kan Liang)
>
> - Update libtraceevent KVM plugin (Paolo Bonzini)
>
> Developer stuff:
>
> - Add fixdep to 'tools/build' .gitignore (Yunlong Song)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> Andi Kleen (1):
> perf evsel: Print branch filter state with -vv
>
> Arnaldo Carvalho de Melo (1):
> perf annotate: Add debug message for out of bounds sample
>
> Kan Liang (1):
> perf cpu_map: Fix core dump caused by per-socket/core system-wide stat
>
> Paolo Bonzini (1):
> tools lib traceevent: update KVM plugin
>
> Yunlong Song (1):
> perf build: Add fixdep to .gitignore
>
> tools/build/.gitignore | 1 +
> tools/lib/traceevent/plugin_kvm.c | 25 +++++++++++++++++--------
> tools/perf/util/annotate.c | 5 ++++-
> tools/perf/util/cpumap.c | 2 +-
> tools/perf/util/evsel.c | 1 +
> 5 files changed, 24 insertions(+), 10 deletions(-)
> create mode 100644 tools/build/.gitignore
Pulled, thanks a lot Arnaldo!
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2015-10-07 22:45 Arnaldo Carvalho de Melo
0 siblings, 0 replies; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-10-07 22:45 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter,
Andrzej Hajda, Bartlomiej Zolnierkiewicz, Borislav Petkov,
David Ahern, Frederic Weisbecker, Guy Streeter, Jiri Olsa,
kernel-janitors, Marek Szyprowski, Namhyung Kim, Peter Zijlstra,
Stephane Eranian, Wang Nan, Arnaldo Carvalho de Melo
Hi Ingo,
Please consider pulling,
- Arnaldo
The following changes since commit 712df65ccb63da08a484bf57c40b250dfd4103a7:
perf/x86/intel/uncore: Fix multi-segment problem of perf_event_intel_uncore (2015-10-06 17:31:51 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
for you to fetch changes up to ae938802443732e77d01f8d5b52b900b9327ff30:
perf python: Support the PERF_RECORD_SWITCH event (2015-10-07 19:41:50 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
User visible:
- Adding a field via 'perf report -F' that already is enabled makes
the tool get stuck in a loop, fix it (Jiri Olsa)
Infrastructure:
- Support PERF_RECORD_SWITCH in the python binding (Arnaldo Carvalho de Melo)
- Fix handling read() result using a signed variable, found with Coccinelle
(Andrzej Hajda)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----------------------------------------------------------------
Andrzej Hajda (1):
perf tools: Fix handling read result using a signed variable
Arnaldo Carvalho de Melo (1):
perf python: Support the PERF_RECORD_SWITCH event
Jiri Olsa (3):
perf tools: Get rid of superfluos call to reset_dimensions
perf tools: Introduce hpp_dimension__add_output function
perf tools: Use hpp_dimension__add_output to register hpp columns
tools/perf/python/twatch.py | 23 +++++++++++++++---
tools/perf/ui/hist.c | 16 ++++++------
tools/perf/util/event.c | 3 ++-
tools/perf/util/python.c | 59 ++++++++++++++++++++++++++++++++++++++++++---
tools/perf/util/sort.c | 8 ++++--
tools/perf/util/sort.h | 2 ++
6 files changed, 93 insertions(+), 18 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2015-04-13 22:14 Arnaldo Carvalho de Melo
2015-04-13 22:33 ` Masami Hiramatsu
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-04-13 22:14 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, David Ahern, He Kuang,
Jiri Olsa, Joonsoo Kim, linux-mm, Masami Hiramatsu, Minchan Kim,
Namhyung Kim, Peter Zijlstra, Steven Rostedt, Wang Nan,
Arnaldo Carvalho de Melo
Hi Ingo,
Please consider pulling,
Best regards,
- Arnaldo
The following changes since commit 066450be419fa48007a9f29e19828f2a86198754:
perf/x86/intel/pt: Clean up the control flow in pt_pmu_hw_init() (2015-04-12 11:21:15 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
for you to fetch changes up to be8d5b1c6b468d10bd2928bbd1a5ca3fd2980402:
perf probe: Fix segfault when probe with lazy_line to file (2015-04-13 17:59:41 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
New features:
- Analyze page allocator events also in 'perf kmem' (Namhyung Kim)
User visible fixes:
- Fix retprobe 'perf probe' handling when failing to find needed debuginfo (He Kuang)
- lazy_line probe fixes in 'perf probe' (He Kuang)
Infrastructure:
- Record pfn instead of pointer to struct page in tracepoints (Namhyung Kim)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----------------------------------------------------------------
He Kuang (3):
perf probe: Set retprobe flag when probe in address-based alternative mode
perf probe: Make --source avaiable when probe with lazy_line
perf probe: Fix segfault when probe with lazy_line to file
Namhyung Kim (2):
tracing, mm: Record pfn instead of pointer to struct page
perf kmem: Analyze page allocator events also
include/trace/events/filemap.h | 8 +-
include/trace/events/kmem.h | 42 +--
include/trace/events/vmscan.h | 8 +-
tools/perf/Documentation/perf-kmem.txt | 8 +-
tools/perf/builtin-kmem.c | 500 +++++++++++++++++++++++++++++++--
tools/perf/util/probe-event.c | 3 +-
tools/perf/util/probe-event.h | 2 +
tools/perf/util/probe-finder.c | 20 +-
8 files changed, 540 insertions(+), 51 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2015-04-13 22:14 Arnaldo Carvalho de Melo
@ 2015-04-13 22:33 ` Masami Hiramatsu
2015-04-13 23:09 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 39+ messages in thread
From: Masami Hiramatsu @ 2015-04-13 22:33 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Ingo Molnar, linux-kernel, David Ahern, He Kuang, Jiri Olsa,
Joonsoo Kim, linux-mm, Minchan Kim, Namhyung Kim, Peter Zijlstra,
Steven Rostedt, Wang Nan, Arnaldo Carvalho de Melo
Hi, Arnaldo,
> perf probe: Make --source avaiable when probe with lazy_line
No, could you pull Naohiro's patch?
I'd like to move get_real_path to probe_finder.c
Thank you,
(2015/04/14 7:14), Arnaldo Carvalho de Melo wrote:
> Hi Ingo,
>
> Please consider pulling,
>
> Best regards,
>
> - Arnaldo
>
> The following changes since commit 066450be419fa48007a9f29e19828f2a86198754:
>
> perf/x86/intel/pt: Clean up the control flow in pt_pmu_hw_init() (2015-04-12 11:21:15 +0200)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
>
> for you to fetch changes up to be8d5b1c6b468d10bd2928bbd1a5ca3fd2980402:
>
> perf probe: Fix segfault when probe with lazy_line to file (2015-04-13 17:59:41 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> New features:
>
> - Analyze page allocator events also in 'perf kmem' (Namhyung Kim)
>
> User visible fixes:
>
> - Fix retprobe 'perf probe' handling when failing to find needed debuginfo (He Kuang)
>
> - lazy_line probe fixes in 'perf probe' (He Kuang)
>
> Infrastructure:
>
> - Record pfn instead of pointer to struct page in tracepoints (Namhyung Kim)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> He Kuang (3):
> perf probe: Set retprobe flag when probe in address-based alternative mode
> perf probe: Make --source avaiable when probe with lazy_line
> perf probe: Fix segfault when probe with lazy_line to file
>
> Namhyung Kim (2):
> tracing, mm: Record pfn instead of pointer to struct page
> perf kmem: Analyze page allocator events also
>
> include/trace/events/filemap.h | 8 +-
> include/trace/events/kmem.h | 42 +--
> include/trace/events/vmscan.h | 8 +-
> tools/perf/Documentation/perf-kmem.txt | 8 +-
> tools/perf/builtin-kmem.c | 500 +++++++++++++++++++++++++++++++--
> tools/perf/util/probe-event.c | 3 +-
> tools/perf/util/probe-event.h | 2 +
> tools/perf/util/probe-finder.c | 20 +-
> 8 files changed, 540 insertions(+), 51 deletions(-)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>
--
Masami HIRAMATSU
Linux Technology Research Center, System Productivity Research Dept.
Center for Technology Innovation - Systems Engineering
Hitachi, Ltd., Research & Development Group
E-mail: masami.hiramatsu.pt@hitachi.com
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2015-04-13 22:33 ` Masami Hiramatsu
@ 2015-04-13 23:09 ` Arnaldo Carvalho de Melo
2015-04-13 23:19 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-04-13 23:09 UTC (permalink / raw)
To: Masami Hiramatsu
Cc: Ingo Molnar, linux-kernel, David Ahern, He Kuang, Jiri Olsa,
Joonsoo Kim, linux-mm, Minchan Kim, Namhyung Kim, Peter Zijlstra,
Steven Rostedt, Wang Nan
Em Tue, Apr 14, 2015 at 07:33:07AM +0900, Masami Hiramatsu escreveu:
> Hi, Arnaldo,
>
> > perf probe: Make --source avaiable when probe with lazy_line
>
> No, could you pull Naohiro's patch?
> I'd like to move get_real_path to probe_finder.c
OOps, yeah, you asked for that... Ingo, please ignore this pull request
for now, thanks,
- Arnaldo
> Thank you,
>
> (2015/04/14 7:14), Arnaldo Carvalho de Melo wrote:
> > Hi Ingo,
> >
> > Please consider pulling,
> >
> > Best regards,
> >
> > - Arnaldo
> >
> > The following changes since commit 066450be419fa48007a9f29e19828f2a86198754:
> >
> > perf/x86/intel/pt: Clean up the control flow in pt_pmu_hw_init() (2015-04-12 11:21:15 +0200)
> >
> > are available in the git repository at:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
> >
> > for you to fetch changes up to be8d5b1c6b468d10bd2928bbd1a5ca3fd2980402:
> >
> > perf probe: Fix segfault when probe with lazy_line to file (2015-04-13 17:59:41 -0300)
> >
> > ----------------------------------------------------------------
> > perf/core improvements and fixes:
> >
> > New features:
> >
> > - Analyze page allocator events also in 'perf kmem' (Namhyung Kim)
> >
> > User visible fixes:
> >
> > - Fix retprobe 'perf probe' handling when failing to find needed debuginfo (He Kuang)
> >
> > - lazy_line probe fixes in 'perf probe' (He Kuang)
> >
> > Infrastructure:
> >
> > - Record pfn instead of pointer to struct page in tracepoints (Namhyung Kim)
> >
> > Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
> >
> > ----------------------------------------------------------------
> > He Kuang (3):
> > perf probe: Set retprobe flag when probe in address-based alternative mode
> > perf probe: Make --source avaiable when probe with lazy_line
> > perf probe: Fix segfault when probe with lazy_line to file
> >
> > Namhyung Kim (2):
> > tracing, mm: Record pfn instead of pointer to struct page
> > perf kmem: Analyze page allocator events also
> >
> > include/trace/events/filemap.h | 8 +-
> > include/trace/events/kmem.h | 42 +--
> > include/trace/events/vmscan.h | 8 +-
> > tools/perf/Documentation/perf-kmem.txt | 8 +-
> > tools/perf/builtin-kmem.c | 500 +++++++++++++++++++++++++++++++--
> > tools/perf/util/probe-event.c | 3 +-
> > tools/perf/util/probe-event.h | 2 +
> > tools/perf/util/probe-finder.c | 20 +-
> > 8 files changed, 540 insertions(+), 51 deletions(-)
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
> >
> >
>
>
> --
> Masami HIRAMATSU
> Linux Technology Research Center, System Productivity Research Dept.
> Center for Technology Innovation - Systems Engineering
> Hitachi, Ltd., Research & Development Group
> E-mail: masami.hiramatsu.pt@hitachi.com
>
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2015-04-13 23:09 ` Arnaldo Carvalho de Melo
@ 2015-04-13 23:19 ` Arnaldo Carvalho de Melo
2015-04-14 12:12 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-04-13 23:19 UTC (permalink / raw)
To: Masami Hiramatsu, Ingo Molnar
Cc: linux-kernel, David Ahern, He Kuang, Jiri Olsa, Joonsoo Kim,
linux-mm, Minchan Kim, Namhyung Kim, Peter Zijlstra,
Steven Rostedt, Wang Nan
Em Mon, Apr 13, 2015 at 08:09:23PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Tue, Apr 14, 2015 at 07:33:07AM +0900, Masami Hiramatsu escreveu:
> > Hi, Arnaldo,
> >
> > > perf probe: Make --source avaiable when probe with lazy_line
> >
> > No, could you pull Naohiro's patch?
> > I'd like to move get_real_path to probe_finder.c
>
> OOps, yeah, you asked for that... Ingo, please ignore this pull request
> for now, thanks,
Ok, I did that and created a perf-core-for-mingo-2, Masami, please check
that all is right, ok?
- Arnaldo
The following changes since commit 066450be419fa48007a9f29e19828f2a86198754:
perf/x86/intel/pt: Clean up the control flow in pt_pmu_hw_init() (2015-04-12 11:21:15 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-2
for you to fetch changes up to f19e80c640d58ddfd70f2454ee597f81ba966690:
perf probe: Fix segfault when probe with lazy_line to file (2015-04-13 20:12:21 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
New features:
- Analyze page allocator events also in 'perf kmem' (Namhyung Kim)
User visible fixes:
- Fix retprobe 'perf probe' handling when failing to find needed debuginfo (He Kuang)
- lazy_line probe fixes in 'perf probe' (Naohiro Aota, He Kuang)
Infrastructure:
- Record pfn instead of pointer to struct page in tracepoints (Namhyung Kim)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----------------------------------------------------------------
He Kuang (2):
perf probe: Set retprobe flag when probe in address-based alternative mode
perf probe: Fix segfault when probe with lazy_line to file
Namhyung Kim (2):
tracing, mm: Record pfn instead of pointer to struct page
perf kmem: Analyze page allocator events also
Naohiro Aota (1):
perf probe: Find compilation directory path for lazy matching
include/trace/events/filemap.h | 8 +-
include/trace/events/kmem.h | 42 +--
include/trace/events/vmscan.h | 8 +-
tools/perf/Documentation/perf-kmem.txt | 8 +-
tools/perf/builtin-kmem.c | 500 +++++++++++++++++++++++++++++++--
tools/perf/util/probe-event.c | 60 +---
tools/perf/util/probe-finder.c | 73 ++++-
tools/perf/util/probe-finder.h | 4 +
8 files changed, 596 insertions(+), 107 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2015-04-13 23:19 ` Arnaldo Carvalho de Melo
@ 2015-04-14 12:12 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2015-04-14 12:12 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Masami Hiramatsu, linux-kernel, David Ahern, He Kuang, Jiri Olsa,
Joonsoo Kim, linux-mm, Minchan Kim, Namhyung Kim, Peter Zijlstra,
Steven Rostedt, Wang Nan
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Em Mon, Apr 13, 2015 at 08:09:23PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Tue, Apr 14, 2015 at 07:33:07AM +0900, Masami Hiramatsu escreveu:
> > > Hi, Arnaldo,
> > >
> > > > perf probe: Make --source avaiable when probe with lazy_line
> > >
> > > No, could you pull Naohiro's patch?
> > > I'd like to move get_real_path to probe_finder.c
> >
> > OOps, yeah, you asked for that... Ingo, please ignore this pull request
> > for now, thanks,
>
> Ok, I did that and created a perf-core-for-mingo-2, Masami, please check
> that all is right, ok?
>
> - Arnaldo
>
> The following changes since commit 066450be419fa48007a9f29e19828f2a86198754:
>
> perf/x86/intel/pt: Clean up the control flow in pt_pmu_hw_init() (2015-04-12 11:21:15 +0200)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-2
>
> for you to fetch changes up to f19e80c640d58ddfd70f2454ee597f81ba966690:
>
> perf probe: Fix segfault when probe with lazy_line to file (2015-04-13 20:12:21 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> New features:
>
> - Analyze page allocator events also in 'perf kmem' (Namhyung Kim)
>
> User visible fixes:
>
> - Fix retprobe 'perf probe' handling when failing to find needed debuginfo (He Kuang)
>
> - lazy_line probe fixes in 'perf probe' (Naohiro Aota, He Kuang)
>
> Infrastructure:
>
> - Record pfn instead of pointer to struct page in tracepoints (Namhyung Kim)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> He Kuang (2):
> perf probe: Set retprobe flag when probe in address-based alternative mode
> perf probe: Fix segfault when probe with lazy_line to file
>
> Namhyung Kim (2):
> tracing, mm: Record pfn instead of pointer to struct page
> perf kmem: Analyze page allocator events also
>
> Naohiro Aota (1):
> perf probe: Find compilation directory path for lazy matching
>
> include/trace/events/filemap.h | 8 +-
> include/trace/events/kmem.h | 42 +--
> include/trace/events/vmscan.h | 8 +-
> tools/perf/Documentation/perf-kmem.txt | 8 +-
> tools/perf/builtin-kmem.c | 500 +++++++++++++++++++++++++++++++--
> tools/perf/util/probe-event.c | 60 +---
> tools/perf/util/probe-finder.c | 73 ++++-
> tools/perf/util/probe-finder.h | 4 +
> 8 files changed, 596 insertions(+), 107 deletions(-)
Pulled, thanks a lot Arnaldo!
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2014-10-17 19:49 Arnaldo Carvalho de Melo
2014-10-18 7:04 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2014-10-17 19:49 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter,
Andi Kleen, Borislav Petkov, Corey Ashford, David Ahern,
Don Zickus, Frederic Weisbecker, Jean Pihet, Jen-Cheng Huang,
Jiri Olsa, Mike Galbraith, Namhyung Kim, Paul Mackerras,
Peter Zijlstra, Stephane Eranian, Arnaldo Carvalho de Melo
Hi Ingo,
Please consider pulling,
- Arnaldo
The following changes since commit 691286b5561aab2e1b00119bc328598c01250548:
kprobes/x86: Remove stale ARCH_SUPPORTS_KPROBES_ON_FTRACE define (2014-10-17 07:18:34 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
for you to fetch changes up to e8564b710c6df2c3aeb56c507c22f4bcfa4c0b2d:
perf script: Add period as a default output column (2014-10-17 15:22:19 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
User visible:
o Add period data column and make it default in 'perf script' (Jiri Olsa)
Infrastructure:
* Move exit stuff from perf_evsel__delete to perf_evsel__exit, delete
should be just a front end for exit + free (Arnaldo Carvalho de Melo)
* Add missing 'struct option' forward declaration (Arnaldo Carvalho de Melo)
* No need to drag util/cgroup.h into evsel.h (Arnaldo Carvalho de Melo)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----------------------------------------------------------------
Arnaldo Carvalho de Melo (3):
perf evsel: Move exit stuff from __delete to __exit
perf evlist: Add missing 'struct option' forward declaration
perf evsel: No need to drag util/cgroup.h
Jiri Olsa (2):
perf script: Add period data column
perf script: Add period as a default output column
tools/perf/Documentation/perf-script.txt | 2 +-
tools/perf/builtin-record.c | 1 +
tools/perf/builtin-script.c | 21 +++++++++++++++++----
tools/perf/builtin-stat.c | 1 +
tools/perf/util/evlist.h | 2 ++
tools/perf/util/evsel.c | 11 ++++++-----
tools/perf/util/evsel.h | 3 ++-
7 files changed, 30 insertions(+), 11 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2014-10-17 19:49 Arnaldo Carvalho de Melo
@ 2014-10-18 7:04 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2014-10-18 7:04 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: linux-kernel, Adrian Hunter, Andi Kleen, Borislav Petkov,
Corey Ashford, David Ahern, Don Zickus, Frederic Weisbecker,
Jean Pihet, Jen-Cheng Huang, Jiri Olsa, Mike Galbraith,
Namhyung Kim, Paul Mackerras, Peter Zijlstra, Stephane Eranian,
Arnaldo Carvalho de Melo
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Hi Ingo,
>
> Please consider pulling,
>
> - Arnaldo
>
> The following changes since commit 691286b5561aab2e1b00119bc328598c01250548:
>
> kprobes/x86: Remove stale ARCH_SUPPORTS_KPROBES_ON_FTRACE define (2014-10-17 07:18:34 +0200)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
>
> for you to fetch changes up to e8564b710c6df2c3aeb56c507c22f4bcfa4c0b2d:
>
> perf script: Add period as a default output column (2014-10-17 15:22:19 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> User visible:
>
> o Add period data column and make it default in 'perf script' (Jiri Olsa)
>
> Infrastructure:
>
> * Move exit stuff from perf_evsel__delete to perf_evsel__exit, delete
> should be just a front end for exit + free (Arnaldo Carvalho de Melo)
>
> * Add missing 'struct option' forward declaration (Arnaldo Carvalho de Melo)
>
> * No need to drag util/cgroup.h into evsel.h (Arnaldo Carvalho de Melo)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> Arnaldo Carvalho de Melo (3):
> perf evsel: Move exit stuff from __delete to __exit
> perf evlist: Add missing 'struct option' forward declaration
> perf evsel: No need to drag util/cgroup.h
>
> Jiri Olsa (2):
> perf script: Add period data column
> perf script: Add period as a default output column
>
> tools/perf/Documentation/perf-script.txt | 2 +-
> tools/perf/builtin-record.c | 1 +
> tools/perf/builtin-script.c | 21 +++++++++++++++++----
> tools/perf/builtin-stat.c | 1 +
> tools/perf/util/evlist.h | 2 ++
> tools/perf/util/evsel.c | 11 ++++++-----
> tools/perf/util/evsel.h | 3 ++-
> 7 files changed, 30 insertions(+), 11 deletions(-)
Pulled, thanks a lot Arnaldo!
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2014-06-27 12:20 Jiri Olsa
2014-07-05 9:30 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Jiri Olsa @ 2014-06-27 12:20 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Corey Ashford,
David Ahern, Frederic Weisbecker, Jiri Olsa, Maynard Johnson,
Namhyung Kim, Paul Mackerras, Peter Zijlstra,
Rickard Strandqvist, Sebastian Andrzej Siewior, Steven Rostedt,
Sukadev Bhattiprolu
hi Ingo,
please consider pulling
thanks,
jirka
The following changes since commit 1c92f88542faa3ae4f970c548b4fe8275a45201b:
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf into perf/core (2014-06-25 07:44:19 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git tags/perf-core-for-mingo
for you to fetch changes up to 8ac631cd502d6b31fd29f6d019305305b479fa3e:
perf script: Handle the num array type in python properly (2014-06-27 11:15:02 +0200)
----------------------------------------------------------------
perf/core improvements and fixes:
. Handle the num array type in python properly (Sebastian Andrzej Siewior)
. Fix wrong condition for allocation failure (Jiri Olsa)
. Adjust callchain based on DWARF debug info on powerpc (Sukadev Bhattiprolu)
. Fix a risk for doing free on uninitialized pointer in traceevent lib (Rickard Strandqvist)
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
----------------------------------------------------------------
Jiri Olsa (1):
perf tools: Fix wrong condition for allocation failure
Rickard Strandqvist (1):
tools lib traceevent: Fix a risk for doing free on uninitialized pointer
Sebastian Andrzej Siewior (2):
perf script: Move the number processing into its own function
perf script: Handle the num array type in python properly
Sukadev Bhattiprolu (1):
perf tools powerpc: Adjust callchain based on DWARF debug info
tools/lib/traceevent/event-parse.c | 6 +-
tools/perf/arch/powerpc/Makefile | 1 +
tools/perf/arch/powerpc/util/skip-callchain-idx.c | 266 +++++++++++++++++++++
tools/perf/builtin-stat.c | 2 +-
tools/perf/config/Makefile | 4 +
tools/perf/util/callchain.h | 13 +
tools/perf/util/machine.c | 18 +-
.../util/scripting-engines/trace-event-python.c | 57 +++--
8 files changed, 346 insertions(+), 21 deletions(-)
create mode 100644 tools/perf/arch/powerpc/util/skip-callchain-idx.c
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2014-06-27 12:20 Jiri Olsa
@ 2014-07-05 9:30 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2014-07-05 9:30 UTC (permalink / raw)
To: Jiri Olsa
Cc: linux-kernel, Arnaldo Carvalho de Melo, Corey Ashford,
David Ahern, Frederic Weisbecker, Maynard Johnson, Namhyung Kim,
Paul Mackerras, Peter Zijlstra, Rickard Strandqvist,
Sebastian Andrzej Siewior, Steven Rostedt, Sukadev Bhattiprolu
* Jiri Olsa <jolsa@kernel.org> wrote:
> hi Ingo,
> please consider pulling
>
> thanks,
> jirka
>
> The following changes since commit 1c92f88542faa3ae4f970c548b4fe8275a45201b:
>
> Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf into perf/core (2014-06-25 07:44:19 +0200)
>
> are available in the git repository at:
>
>
> git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git tags/perf-core-for-mingo
>
> for you to fetch changes up to 8ac631cd502d6b31fd29f6d019305305b479fa3e:
>
> perf script: Handle the num array type in python properly (2014-06-27 11:15:02 +0200)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> . Handle the num array type in python properly (Sebastian Andrzej Siewior)
>
> . Fix wrong condition for allocation failure (Jiri Olsa)
>
> . Adjust callchain based on DWARF debug info on powerpc (Sukadev Bhattiprolu)
>
> . Fix a risk for doing free on uninitialized pointer in traceevent lib (Rickard Strandqvist)
>
> Signed-off-by: Jiri Olsa <jolsa@kernel.org>
>
> ----------------------------------------------------------------
> Jiri Olsa (1):
> perf tools: Fix wrong condition for allocation failure
>
> Rickard Strandqvist (1):
> tools lib traceevent: Fix a risk for doing free on uninitialized pointer
>
> Sebastian Andrzej Siewior (2):
> perf script: Move the number processing into its own function
> perf script: Handle the num array type in python properly
>
> Sukadev Bhattiprolu (1):
> perf tools powerpc: Adjust callchain based on DWARF debug info
>
> tools/lib/traceevent/event-parse.c | 6 +-
> tools/perf/arch/powerpc/Makefile | 1 +
> tools/perf/arch/powerpc/util/skip-callchain-idx.c | 266 +++++++++++++++++++++
> tools/perf/builtin-stat.c | 2 +-
> tools/perf/config/Makefile | 4 +
> tools/perf/util/callchain.h | 13 +
> tools/perf/util/machine.c | 18 +-
> .../util/scripting-engines/trace-event-python.c | 57 +++--
> 8 files changed, 346 insertions(+), 21 deletions(-)
> create mode 100644 tools/perf/arch/powerpc/util/skip-callchain-idx.c
Pulled, thanks a lot Jiri!
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2014-04-18 10:31 Jiri Olsa
0 siblings, 0 replies; 39+ messages in thread
From: Jiri Olsa @ 2014-04-18 10:31 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Corey Ashford,
David Ahern, Don Zickus, Frederic Weisbecker, Jiri Olsa,
Li Zefan, Namhyung Kim, Paul Mackerras, Peter Zijlstra
hi Ingo,
please consider pulling
thanks,
jirka
The following changes since commit 37b6cb475a6d74bc047c53bc323d6eb3113e27a4:
Merge branch 'uprobes/core' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc into perf/core (2014-04-18 09:49:14 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git tags/perf-core-for-mingo
for you to fetch changes up to a651d9357f936a19ae811a29d031224cdb8c2f1f:
perf callchain: Add generic report parse callchain callback function (2014-04-18 11:56:59 +0200)
----------------------------------------------------------------
perf/core improvements and fixes:
Developer stuff:
. Making some code (cpu node map and report parse callchain callback) global
to be usable by upcomming changes (Don Zickus)
. Fix pmu object compilation error (Jiri Olsa)
----------------------------------------------------------------
Don Zickus (4):
perf tools: Allow ability to map cpus to nodes easily
perf tools: Use cpu/possible instead of cpu/kernel_max
perf kmem: Utilize the new generic cpunode_map
perf callchain: Add generic report parse callchain callback function
Jiri Olsa (1):
perf tools: Fix pmu object compilation error
tools/perf/builtin-kmem.c | 78 +----------------------
tools/perf/builtin-report.c | 81 +-----------------------
tools/perf/util/callchain.c | 82 ++++++++++++++++++++++++
tools/perf/util/callchain.h | 1 +
tools/perf/util/cpumap.c | 147 ++++++++++++++++++++++++++++++++++++++++++++
tools/perf/util/cpumap.h | 35 +++++++++++
tools/perf/util/pmu.c | 6 +-
7 files changed, 274 insertions(+), 156 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2011-10-14 18:27 Arnaldo Carvalho de Melo
2011-10-15 14:59 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2011-10-14 18:27 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, David Ahern,
Frederic Weisbecker, Mike Galbraith, Paul Mackerras,
Peter Zijlstra, Stephane Eranian, Thomas Jarosch, arnaldo.melo
Hi Ingo,
Please consider pulling from:
git://github.com/acmel/linux.git perf/core
These are in addition to the ones you reported being problematic
with perf top segfaulting sometimes, that problem should be fixed by the
first patch below.
Regards,
- Arnaldo
Arnaldo Carvalho de Melo (4):
perf hists browser: Invalidate ui_browser->top after timer calls
perf annotate browser: Exit when pressing ESC or the left arrow
perf ui browser: Add filter method
perf annotate browser: Allow toggling the visualization of source code lines
Thomas Jarosch (1):
perf buildid: Fix possible unterminated readlink() result buffer
tools/perf/util/header.c | 2 +-
tools/perf/util/ui/browser.c | 52 +++++++++++++++++----
tools/perf/util/ui/browser.h | 1 +
tools/perf/util/ui/browsers/annotate.c | 78 +++++++++++++++++++++++++++++--
tools/perf/util/ui/browsers/hists.c | 15 +++++-
5 files changed, 131 insertions(+), 17 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-14 18:27 Arnaldo Carvalho de Melo
@ 2011-10-15 14:59 ` Ingo Molnar
2011-10-15 17:00 ` David Ahern
0 siblings, 1 reply; 39+ messages in thread
From: Ingo Molnar @ 2011-10-15 14:59 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: linux-kernel, David Ahern, Frederic Weisbecker, Mike Galbraith,
Paul Mackerras, Peter Zijlstra, Stephane Eranian, Thomas Jarosch,
arnaldo.melo
* Arnaldo Carvalho de Melo <acme@infradead.org> wrote:
> Hi Ingo,
>
> Please consider pulling from:
>
> git://github.com/acmel/linux.git perf/core
>
> These are in addition to the ones you reported being problematic
> with perf top segfaulting sometimes, that problem should be fixed by the
> first patch below.
>
> Regards,
>
> - Arnaldo
>
> Arnaldo Carvalho de Melo (4):
> perf hists browser: Invalidate ui_browser->top after timer calls
> perf annotate browser: Exit when pressing ESC or the left arrow
> perf ui browser: Add filter method
> perf annotate browser: Allow toggling the visualization of source code lines
>
> Thomas Jarosch (1):
> perf buildid: Fix possible unterminated readlink() result buffer
>
> tools/perf/util/header.c | 2 +-
> tools/perf/util/ui/browser.c | 52 +++++++++++++++++----
> tools/perf/util/ui/browser.h | 1 +
> tools/perf/util/ui/browsers/annotate.c | 78 +++++++++++++++++++++++++++++--
> tools/perf/util/ui/browsers/hists.c | 15 +++++-
> 5 files changed, 131 insertions(+), 17 deletions(-)
Pulled, thanks a lot Arnaldo!
The 'perf top' segfault is indeed fixed for me too.
Btw., i noticed another weirdness - sometimes after startup i get
this message:
/lib64/libc-2.14.90.so was updated, restart the long running apps that use it!
but it was not updated recently:
earth5:~/tip/tools/perf> ll /lib64/libc-2.14.90.so
-rwxr-xr-x 1 root root 2062920 Sep 28 15:11 /lib64/libc-2.14.90.so
earth5:~/tip/tools/perf> date
Sat Oct 15 16:59:04 CEST 2011
earth5:~/tip/tools/perf> uptime
16:59:08 up 19 days, 21:35, 11 users, load average: 7.77, 7.48, 3.81
Thanks,
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-15 14:59 ` Ingo Molnar
@ 2011-10-15 17:00 ` David Ahern
2011-10-15 17:04 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: David Ahern @ 2011-10-15 17:00 UTC (permalink / raw)
To: Ingo Molnar
Cc: Arnaldo Carvalho de Melo, linux-kernel, Frederic Weisbecker,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Stephane Eranian,
Thomas Jarosch, arnaldo.melo
On 10/15/2011 08:59 AM, Ingo Molnar wrote:
> Btw., i noticed another weirdness - sometimes after startup i get
> this message:
>
> /lib64/libc-2.14.90.so was updated, restart the long running apps that use it!
>
> but it was not updated recently:
>
> earth5:~/tip/tools/perf> ll /lib64/libc-2.14.90.so
> -rwxr-xr-x 1 root root 2062920 Sep 28 15:11 /lib64/libc-2.14.90.so
> earth5:~/tip/tools/perf> date
> Sat Oct 15 16:59:04 CEST 2011
> earth5:~/tip/tools/perf> uptime
> 16:59:08 up 19 days, 21:35, 11 users, load average: 7.77, 7.48, 3.81
I got the impression that comment was relative to when the processes
were started versus prelink touching it. In your case the mod time of
libc is after the uptime of the box.
David
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-15 17:00 ` David Ahern
@ 2011-10-15 17:04 ` Ingo Molnar
2011-10-15 17:46 ` David Ahern
0 siblings, 1 reply; 39+ messages in thread
From: Ingo Molnar @ 2011-10-15 17:04 UTC (permalink / raw)
To: David Ahern
Cc: Arnaldo Carvalho de Melo, linux-kernel, Frederic Weisbecker,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Stephane Eranian,
Thomas Jarosch, arnaldo.melo
* David Ahern <dsahern@gmail.com> wrote:
> On 10/15/2011 08:59 AM, Ingo Molnar wrote:
> > Btw., i noticed another weirdness - sometimes after startup i get
> > this message:
> >
> > /lib64/libc-2.14.90.so was updated, restart the long running apps that use it!
> >
> > but it was not updated recently:
> >
> > earth5:~/tip/tools/perf> ll /lib64/libc-2.14.90.so
> > -rwxr-xr-x 1 root root 2062920 Sep 28 15:11 /lib64/libc-2.14.90.so
> > earth5:~/tip/tools/perf> date
> > Sat Oct 15 16:59:04 CEST 2011
> > earth5:~/tip/tools/perf> uptime
> > 16:59:08 up 19 days, 21:35, 11 users, load average: 7.77, 7.48, 3.81
>
> I got the impression that comment was relative to when the
> processes were started versus prelink touching it. In your case the
> mod time of libc is after the uptime of the box.
Ok, that makes sense. Do we report this in perf report output as
well?
Thanks,
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-15 17:04 ` Ingo Molnar
@ 2011-10-15 17:46 ` David Ahern
2011-10-15 19:06 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 39+ messages in thread
From: David Ahern @ 2011-10-15 17:46 UTC (permalink / raw)
To: Ingo Molnar
Cc: Arnaldo Carvalho de Melo, linux-kernel, Frederic Weisbecker,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Stephane Eranian,
Thomas Jarosch, arnaldo.melo
On 10/15/2011 11:04 AM, Ingo Molnar wrote:
>
> * David Ahern <dsahern@gmail.com> wrote:
>
>> On 10/15/2011 08:59 AM, Ingo Molnar wrote:
>>> Btw., i noticed another weirdness - sometimes after startup i get
>>> this message:
>>>
>>> /lib64/libc-2.14.90.so was updated, restart the long running apps that use it!
>>>
>>> but it was not updated recently:
>>>
>>> earth5:~/tip/tools/perf> ll /lib64/libc-2.14.90.so
>>> -rwxr-xr-x 1 root root 2062920 Sep 28 15:11 /lib64/libc-2.14.90.so
>>> earth5:~/tip/tools/perf> date
>>> Sat Oct 15 16:59:04 CEST 2011
>>> earth5:~/tip/tools/perf> uptime
>>> 16:59:08 up 19 days, 21:35, 11 users, load average: 7.77, 7.48, 3.81
>>
>> I got the impression that comment was relative to when the
>> processes were started versus prelink touching it. In your case the
>> mod time of libc is after the uptime of the box.
>
> Ok, that makes sense. Do we report this in perf report output as
> well?
It should. The message comes from map__load() when it detects a deleted
mapping such as:
7f9e8d5c7000-7f9e8d5c8000 rw-p 0000c000 fd:02 1046947
/lib64/libpam.so.0.82.2.#prelink#.cM3f72 (deleted)
I have removed prelink from most of my systems (managed to find one lone
server with the above).
David
>
> Thanks,
>
> Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-15 17:46 ` David Ahern
@ 2011-10-15 19:06 ` Arnaldo Carvalho de Melo
2011-10-15 19:09 ` David Ahern
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2011-10-15 19:06 UTC (permalink / raw)
To: David Ahern
Cc: Ingo Molnar, linux-kernel, Frederic Weisbecker, Mike Galbraith,
Paul Mackerras, Peter Zijlstra, Stephane Eranian, Thomas Jarosch
Em Sat, Oct 15, 2011 at 11:46:14AM -0600, David Ahern escreveu:
>
>
> On 10/15/2011 11:04 AM, Ingo Molnar wrote:
> >
> > * David Ahern <dsahern@gmail.com> wrote:
> >
> >> On 10/15/2011 08:59 AM, Ingo Molnar wrote:
> >>> Btw., i noticed another weirdness - sometimes after startup i get
> >>> this message:
> >>>
> >>> /lib64/libc-2.14.90.so was updated, restart the long running apps that use it!
> >>>
> >>> but it was not updated recently:
> >>>
> >>> earth5:~/tip/tools/perf> ll /lib64/libc-2.14.90.so
> >>> -rwxr-xr-x 1 root root 2062920 Sep 28 15:11 /lib64/libc-2.14.90.so
> >>> earth5:~/tip/tools/perf> date
> >>> Sat Oct 15 16:59:04 CEST 2011
> >>> earth5:~/tip/tools/perf> uptime
> >>> 16:59:08 up 19 days, 21:35, 11 users, load average: 7.77, 7.48, 3.81
> >>
> >> I got the impression that comment was relative to when the
> >> processes were started versus prelink touching it. In your case the
> >> mod time of libc is after the uptime of the box.
> >
> > Ok, that makes sense. Do we report this in perf report output as
> > well?
>
> It should. The message comes from map__load() when it detects a deleted
> mapping such as:
>
> 7f9e8d5c7000-7f9e8d5c8000 rw-p 0000c000 fd:02 1046947
> /lib64/libpam.so.0.82.2.#prelink#.cM3f72 (deleted)
>
> I have removed prelink from most of my systems (managed to find one lone
> server with the above).
David,
Can you send me a patch that clarifies this situation?
- Arnaldo
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-15 19:06 ` Arnaldo Carvalho de Melo
@ 2011-10-15 19:09 ` David Ahern
2011-10-17 1:15 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 39+ messages in thread
From: David Ahern @ 2011-10-15 19:09 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Ingo Molnar, linux-kernel, Frederic Weisbecker, Mike Galbraith,
Paul Mackerras, Peter Zijlstra, Stephane Eranian, Thomas Jarosch
On 10/15/2011 01:06 PM, Arnaldo Carvalho de Melo wrote:
>>
>> It should. The message comes from map__load() when it detects a deleted
>> mapping such as:
>>
>> 7f9e8d5c7000-7f9e8d5c8000 rw-p 0000c000 fd:02 1046947
>> /lib64/libpam.so.0.82.2.#prelink#.cM3f72 (deleted)
>>
>> I have removed prelink from most of my systems (managed to find one lone
>> server with the above).
>
> David,
>
> Can you send me a patch that clarifies this situation?
>
> - Arnaldo
Clarifies in what way? The code checks for "(deleted)" on the dso and
suggests a restart of the process.
David
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-15 19:09 ` David Ahern
@ 2011-10-17 1:15 ` Arnaldo Carvalho de Melo
2011-10-17 6:48 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2011-10-17 1:15 UTC (permalink / raw)
To: David Ahern
Cc: Ingo Molnar, linux-kernel, Frederic Weisbecker, Mike Galbraith,
Paul Mackerras, Peter Zijlstra, Stephane Eranian, Thomas Jarosch
Em Sat, Oct 15, 2011 at 01:09:32PM -0600, David Ahern escreveu:
> On 10/15/2011 01:06 PM, Arnaldo Carvalho de Melo wrote:
> >>
> >> It should. The message comes from map__load() when it detects a deleted
> >> mapping such as:
> >>
> >> 7f9e8d5c7000-7f9e8d5c8000 rw-p 0000c000 fd:02 1046947
> >> /lib64/libpam.so.0.82.2.#prelink#.cM3f72 (deleted)
> >>
> >> I have removed prelink from most of my systems (managed to find one lone
> >> server with the above).
> >
> > Can you send me a patch that clarifies this situation?
>
> Clarifies in what way? The code checks for "(deleted)" on the dso and
> suggests a restart of the process.
Perhaps telling that prelinking is the reason, so that users that don't
recall updating anything understands the situation.
- Arnaldo
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-10-17 1:15 ` Arnaldo Carvalho de Melo
@ 2011-10-17 6:48 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2011-10-17 6:48 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: David Ahern, linux-kernel, Frederic Weisbecker, Mike Galbraith,
Paul Mackerras, Peter Zijlstra, Stephane Eranian, Thomas Jarosch
* Arnaldo Carvalho de Melo <acme@ghostprotocols.net> wrote:
> Em Sat, Oct 15, 2011 at 01:09:32PM -0600, David Ahern escreveu:
> > On 10/15/2011 01:06 PM, Arnaldo Carvalho de Melo wrote:
> > >>
> > >> It should. The message comes from map__load() when it detects a deleted
> > >> mapping such as:
> > >>
> > >> 7f9e8d5c7000-7f9e8d5c8000 rw-p 0000c000 fd:02 1046947
> > >> /lib64/libpam.so.0.82.2.#prelink#.cM3f72 (deleted)
> > >>
> > >> I have removed prelink from most of my systems (managed to find one lone
> > >> server with the above).
> > >
> > > Can you send me a patch that clarifies this situation?
> >
> > Clarifies in what way? The code checks for "(deleted)" on the dso and
> > suggests a restart of the process.
>
> Perhaps telling that prelinking is the reason, so that users that
> don't recall updating anything understands the situation.
Yeah. I am certainly aware of prelinking yet it did not occur to me
when i saw the message.
Thanks,
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2011-02-17 20:41 Arnaldo Carvalho de Melo
2011-02-18 7:26 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2011-02-17 20:41 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Arun Sharma,
David S . Miller, Frederic Weisbecker, Ingo Molnar,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Robert Richter,
Stephane Eranian, Steven Rostedt, Tom Zanussi,
Arnaldo Carvalho de Melo
Hi Ingo,
Please consider pulling from:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 perf/core
Regards,
- Arnaldo
Arnaldo Carvalho de Melo (4):
perf python: Add cgroup.c to setup.py to get it building again
perf hists: Print number of samples, not the period sum
perf record: Delay setting the header writing atexit call
perf report: Tell the user when a perf.data file has no samples
Stephane Eranian (1):
perf: make perf stat print user provided full event names
tools/perf/builtin-record.c | 10 +++++-----
tools/perf/builtin-report.c | 6 ++++++
tools/perf/util/evsel.c | 1 +
tools/perf/util/evsel.h | 7 +++++++
tools/perf/util/hist.c | 7 +++++--
tools/perf/util/parse-events.c | 10 ++++++++++
tools/perf/util/setup.py | 2 +-
7 files changed, 35 insertions(+), 8 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2011-02-17 20:41 Arnaldo Carvalho de Melo
@ 2011-02-18 7:26 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2011-02-18 7:26 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: linux-kernel, Arun Sharma, David S . Miller, Frederic Weisbecker,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Robert Richter,
Stephane Eranian, Steven Rostedt, Tom Zanussi,
Arnaldo Carvalho de Melo
* Arnaldo Carvalho de Melo <acme@infradead.org> wrote:
> Hi Ingo,
>
> Please consider pulling from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 perf/core
>
> Regards,
>
> - Arnaldo
>
> Arnaldo Carvalho de Melo (4):
> perf python: Add cgroup.c to setup.py to get it building again
> perf hists: Print number of samples, not the period sum
> perf record: Delay setting the header writing atexit call
> perf report: Tell the user when a perf.data file has no samples
>
> Stephane Eranian (1):
> perf: make perf stat print user provided full event names
>
> tools/perf/builtin-record.c | 10 +++++-----
> tools/perf/builtin-report.c | 6 ++++++
> tools/perf/util/evsel.c | 1 +
> tools/perf/util/evsel.h | 7 +++++++
> tools/perf/util/hist.c | 7 +++++--
> tools/perf/util/parse-events.c | 10 ++++++++++
> tools/perf/util/setup.py | 2 +-
> 7 files changed, 35 insertions(+), 8 deletions(-)
Pulled, thanks a lot Arnaldo!
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2010-12-06 20:28 Arnaldo Carvalho de Melo
0 siblings, 0 replies; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-12-06 20:28 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Akihiro Nagai,
Chris Samuel, David S . Miller, Frederic Weisbecker, Ian Munsie,
Ingo Molnar, Masami Hiramatsu, Mike Galbraith, Paul Mackerras,
Peter Zijlstra, Robert Richter, Stephane Eranian,
Stephane Eranian, Thomas Gleixner, Arnaldo Carvalho de Melo
Hi Ingo,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 perf/core
This is in addition to the previous pull request.
Regards,
- Arnaldo
Akihiro Nagai (1):
perf options: add OPT_CALLBACK_DEFAULT_NOOPT
Chris Samuel (1):
perf tools: Catch a few uncheck calloc/malloc's
Ian Munsie (1):
perf hist: Better displaying of unresolved DSOs and symbols
Stephane Eranian (1):
perf script: Fix compiler warning in builtin_script.c:is_top_script()
Thomas Gleixner (1):
perf session: Sort all events if ordered_samples=true
tools/perf/builtin-kmem.c | 3 +
tools/perf/builtin-lock.c | 3 +
tools/perf/builtin-sched.c | 3 +
tools/perf/builtin-script.c | 10 ++--
tools/perf/builtin-timechart.c | 3 +
tools/perf/util/header.c | 3 +
tools/perf/util/parse-options.h | 4 +
tools/perf/util/session.c | 125 ++++++++++++++++++++++----------------
tools/perf/util/sort.c | 6 +-
9 files changed, 99 insertions(+), 61 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT PULL 0/5] perf/core improvements and fixes
@ 2010-10-23 20:28 Arnaldo Carvalho de Melo
2010-10-24 9:39 ` Ingo Molnar
0 siblings, 1 reply; 39+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-10-23 20:28 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Arnaldo Carvalho de Melo, Ben Hutchings,
Frederic Weisbecker, Ingo Molnar, Masami Hiramatsu,
Mike Galbraith, Paul Mackerras, Peter Zijlstra, Robert Richter,
Sonny Rao, Stephane Eranian
Hi Ingo,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 perf/core
Regards,
- Arnaldo
Arnaldo Carvalho de Melo (2):
perf tools: Remove direct slang.h include
perf probe: Fix format specified for Dwarf_Off parameter
Ben Hutchings (2):
perf trace: Use $PERF_EXEC_PATH in canned report scripts
perf trace: Fix detection of script extension
Sonny Rao (1):
perf tools: Document event modifiers
tools/perf/Documentation/perf-list.txt | 17 +++++++++++++++++
tools/perf/builtin-trace.c | 8 ++++----
tools/perf/scripts/perl/bin/failed-syscalls-report | 2 +-
tools/perf/scripts/perl/bin/rw-by-file-report | 2 +-
tools/perf/scripts/perl/bin/rw-by-pid-report | 2 +-
tools/perf/scripts/perl/bin/rwtop-report | 2 +-
tools/perf/scripts/perl/bin/wakeup-latency-report | 2 +-
tools/perf/scripts/perl/bin/workqueue-stats-report | 2 +-
.../python/bin/failed-syscalls-by-pid-report | 2 +-
tools/perf/scripts/python/bin/netdev-times-report | 2 +-
.../perf/scripts/python/bin/sched-migration-report | 2 +-
tools/perf/scripts/python/bin/sctop-report | 2 +-
.../python/bin/syscall-counts-by-pid-report | 2 +-
.../perf/scripts/python/bin/syscall-counts-report | 2 +-
tools/perf/util/probe-finder.c | 3 ++-
tools/perf/util/ui/browser.c | 1 -
16 files changed, 35 insertions(+), 18 deletions(-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT PULL 0/5] perf/core improvements and fixes
2010-10-23 20:28 Arnaldo Carvalho de Melo
@ 2010-10-24 9:39 ` Ingo Molnar
0 siblings, 0 replies; 39+ messages in thread
From: Ingo Molnar @ 2010-10-24 9:39 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: linux-kernel, Ben Hutchings, Frederic Weisbecker,
Masami Hiramatsu, Mike Galbraith, Paul Mackerras, Peter Zijlstra,
Robert Richter, Sonny Rao, Stephane Eranian
* Arnaldo Carvalho de Melo <acme@infradead.org> wrote:
> Hi Ingo,
>
> Please pull from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 perf/core
>
> Regards,
>
> - Arnaldo
>
> Arnaldo Carvalho de Melo (2):
> perf tools: Remove direct slang.h include
> perf probe: Fix format specified for Dwarf_Off parameter
>
> Ben Hutchings (2):
> perf trace: Use $PERF_EXEC_PATH in canned report scripts
> perf trace: Fix detection of script extension
>
> Sonny Rao (1):
> perf tools: Document event modifiers
>
> tools/perf/Documentation/perf-list.txt | 17 +++++++++++++++++
> tools/perf/builtin-trace.c | 8 ++++----
> tools/perf/scripts/perl/bin/failed-syscalls-report | 2 +-
> tools/perf/scripts/perl/bin/rw-by-file-report | 2 +-
> tools/perf/scripts/perl/bin/rw-by-pid-report | 2 +-
> tools/perf/scripts/perl/bin/rwtop-report | 2 +-
> tools/perf/scripts/perl/bin/wakeup-latency-report | 2 +-
> tools/perf/scripts/perl/bin/workqueue-stats-report | 2 +-
> .../python/bin/failed-syscalls-by-pid-report | 2 +-
> tools/perf/scripts/python/bin/netdev-times-report | 2 +-
> .../perf/scripts/python/bin/sched-migration-report | 2 +-
> tools/perf/scripts/python/bin/sctop-report | 2 +-
> .../python/bin/syscall-counts-by-pid-report | 2 +-
> .../perf/scripts/python/bin/syscall-counts-report | 2 +-
> tools/perf/util/probe-finder.c | 3 ++-
> tools/perf/util/ui/browser.c | 1 -
> 16 files changed, 35 insertions(+), 18 deletions(-)
Pulled, thanks Arnaldo!
Ingo
^ permalink raw reply [flat|nested] 39+ messages in thread
end of thread, other threads:[~2018-02-21 7:52 UTC | newest]
Thread overview: 39+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-11-26 21:47 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 1/5] perf record: Add option to disable collecting build-ids Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 2/5] perf events: Default to using event__process_lost Arnaldo Carvalho de Melo
2010-11-26 23:55 ` Thomas Gleixner
2010-11-27 0:18 ` Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 3/5] perf tools: Add GCC optimization to memory allocating functions Arnaldo Carvalho de Melo
2010-11-27 0:30 ` Arnaldo Carvalho de Melo
2010-11-29 12:54 ` Davidlohr Bueso
2010-11-26 21:47 ` [PATCH 4/5] perf symbols: Correct final kernel map guesses Arnaldo Carvalho de Melo
2010-11-26 21:47 ` [PATCH 5/5] perf trace: Handle DT_UNKNOWN on filesystems that don't support d_type Arnaldo Carvalho de Melo
-- strict thread matches above, loose matches on Subject: below --
2018-02-21 1:34 [GIT PULL 0/5] perf/core improvements and fixes Arnaldo Carvalho de Melo
2018-02-21 7:52 ` Ingo Molnar
2015-10-21 21:31 Arnaldo Carvalho de Melo
2015-10-22 7:34 ` Ingo Molnar
2015-10-07 22:45 Arnaldo Carvalho de Melo
2015-04-13 22:14 Arnaldo Carvalho de Melo
2015-04-13 22:33 ` Masami Hiramatsu
2015-04-13 23:09 ` Arnaldo Carvalho de Melo
2015-04-13 23:19 ` Arnaldo Carvalho de Melo
2015-04-14 12:12 ` Ingo Molnar
2014-10-17 19:49 Arnaldo Carvalho de Melo
2014-10-18 7:04 ` Ingo Molnar
2014-06-27 12:20 Jiri Olsa
2014-07-05 9:30 ` Ingo Molnar
2014-04-18 10:31 Jiri Olsa
2011-10-14 18:27 Arnaldo Carvalho de Melo
2011-10-15 14:59 ` Ingo Molnar
2011-10-15 17:00 ` David Ahern
2011-10-15 17:04 ` Ingo Molnar
2011-10-15 17:46 ` David Ahern
2011-10-15 19:06 ` Arnaldo Carvalho de Melo
2011-10-15 19:09 ` David Ahern
2011-10-17 1:15 ` Arnaldo Carvalho de Melo
2011-10-17 6:48 ` Ingo Molnar
2011-02-17 20:41 Arnaldo Carvalho de Melo
2011-02-18 7:26 ` Ingo Molnar
2010-12-06 20:28 Arnaldo Carvalho de Melo
2010-10-23 20:28 Arnaldo Carvalho de Melo
2010-10-24 9:39 ` Ingo Molnar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).