Skip to content

Commit

Permalink
Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/lin…
Browse files Browse the repository at this point in the history
…ux/kernel/git/jolsa/perf into perf/urgent

Pull perf/urgent fixes from Jiri Olsa:

User visible changes:

  * Adjust symbols in VDSO to properly resolve its function names (Vladimir Nikulichev)

  * Improve error reporting for record session failure (Adrien BAK)

  * Fix 'Min time' counting in report command (Alexander Yarygin)

Signed-off-by: Jiri Olsa <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
  • Loading branch information
Ingo Molnar committed Apr 20, 2014
2 parents 2422365 + ffa9188 commit fd741ed
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 2 deletions.
1 change: 1 addition & 0 deletions tools/perf/builtin-kvm.c
Original file line number Diff line number Diff line change
Expand Up @@ -404,6 +404,7 @@ static struct kvm_event *kvm_alloc_init_event(struct event_key *key)
}

event->key = *key;
init_stats(&event->total.stats);
return event;
}

Expand Down
2 changes: 1 addition & 1 deletion tools/perf/builtin-record.c
Original file line number Diff line number Diff line change
Expand Up @@ -374,7 +374,7 @@ static int __cmd_record(struct record *rec, int argc, const char **argv)

session = perf_session__new(file, false, NULL);
if (session == NULL) {
pr_err("Not enough memory for reading perf file header\n");
pr_err("Perf session creation failed.\n");
return -1;
}

Expand Down
9 changes: 8 additions & 1 deletion tools/perf/util/data.c
Original file line number Diff line number Diff line change
Expand Up @@ -86,10 +86,17 @@ static int open_file_read(struct perf_data_file *file)

static int open_file_write(struct perf_data_file *file)
{
int fd;

if (check_backup(file))
return -1;

return open(file->path, O_CREAT|O_RDWR|O_TRUNC, S_IRUSR|S_IWUSR);
fd = open(file->path, O_CREAT|O_RDWR|O_TRUNC, S_IRUSR|S_IWUSR);

if (fd < 0)
pr_err("failed to open %s : %s\n", file->path, strerror(errno));

return fd;
}

static int open_file(struct perf_data_file *file)
Expand Down
2 changes: 2 additions & 0 deletions tools/perf/util/symbol-elf.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#include <inttypes.h>

#include "symbol.h"
#include "vdso.h"
#include <symbol/kallsyms.h>
#include "debug.h"

Expand Down Expand Up @@ -618,6 +619,7 @@ int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name,
GElf_Shdr shdr;
ss->adjust_symbols = (ehdr.e_type == ET_EXEC ||
ehdr.e_type == ET_REL ||
is_vdso_map(dso->short_name) ||
elf_section_by_name(elf, &ehdr, &shdr,
".gnu.prelink_undo",
NULL) != NULL);
Expand Down

0 comments on commit fd741ed

Please sign in to comment.