diff options
author | Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org> | 2013-02-27 00:38:06 +0100 |
---|---|---|
committer | Bernhard Rosenkränzer <bero@lindev.ch> | 2013-07-18 20:48:58 +0200 |
commit | 55659a849fbadd115749961e0e2d502cfbd50123 (patch) | |
tree | e1c6e951bc0ad011d8c8a54ec8d37824b6a72c10 | |
parent | 0b42e2fdcd1ba47068c4dfb47a0f88af29792e4e (diff) |
perf: Merge fixes from AOSP's platform/external/linux-tools-perf
Merge various Bionic related patches from AOSP's
platform/external/linux-tools-perf branch.
Fixes crashes spotted in iKS builds.
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
Conflicts:
tools/perf/util/symbol.c
Conflicts:
tools/perf/builtin-stat.c
-rw-r--r-- | tools/perf/builtin-record.c | 4 | ||||
-rw-r--r-- | tools/perf/builtin-sched.c | 2 | ||||
-rw-r--r-- | tools/perf/builtin-stat.c | 4 | ||||
-rw-r--r-- | tools/perf/util/annotate.c | 4 |
4 files changed, 13 insertions, 1 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index cdf58ecc04b..94a79c59d81 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -409,7 +409,11 @@ static int __cmd_record(struct perf_record *rec, int argc, const char **argv) if (!fstat(STDOUT_FILENO, &st) && S_ISFIFO(st.st_mode)) opts->pipe_output = true; else +#ifdef __BIONIC__ + rec->output_name = output_name = "/data/perf.data"; +#else rec->output_name = output_name = "perf.data"; +#endif } if (output_name) { if (!strcmp(output_name, "-")) diff --git a/tools/perf/builtin-sched.c b/tools/perf/builtin-sched.c index 2da2a6ca22b..317f0465fc6 100644 --- a/tools/perf/builtin-sched.c +++ b/tools/perf/builtin-sched.c @@ -513,7 +513,7 @@ static void create_tasks(struct perf_sched *sched) err = pthread_attr_init(&attr); BUG_ON(err); err = pthread_attr_setstacksize(&attr, - (size_t) max(16 * 1024, PTHREAD_STACK_MIN)); + (size_t) max((unsigned)16 * 1024, (unsigned)PTHREAD_STACK_MIN)); BUG_ON(err); err = pthread_mutex_lock(&sched->start_work_mutex); BUG_ON(err); diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index 7e910bab109..95f9baef050 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c @@ -813,7 +813,11 @@ static void abs_printout(int cpu, int nr, struct perf_evsel *evsel, double avg) if (csv_output) fmt = "%.0f%s%s"; else if (big_num) +#ifdef __BIONIC__ + fmt = "%18.0f%s%-25s"; +#else fmt = "%'18.0f%s%-25s"; +#endif else fmt = "%18.0f%s%-25s"; diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index d102716c43a..67ed60b86e4 100644 --- a/tools/perf/util/annotate.c +++ b/tools/perf/util/annotate.c @@ -1060,7 +1060,11 @@ static int symbol__get_source_line(struct symbol *sym, struct map *map, if (!notes->src->lines) return -1; +#ifdef __BIONIC__ + start = sym->start; +#else start = map__rip_2objdump(map, sym->start); +#endif for (i = 0; i < len; i++) { char *path = NULL; |