perf record, x86: Print more intelligent error message when sampling fails

Print more accurate error message when "perf record" fails because
there is no APIC support, on x86.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Simon Kaempflein 2009-11-16 15:25:53 +10:00 committed by Ingo Molnar
parent 81516c5fc8
commit bfd451184d
1 changed files with 6 additions and 0 deletions

View File

@ -307,6 +307,12 @@ static void create_counter(int counter, int cpu, pid_t pid)
printf("\n");
error("perfcounter syscall returned with %d (%s)\n",
fd[nr_cpu][counter], strerror(err));
#if defined(__i386__) || defined(__x86_64__)
if (attr->type == PERF_TYPE_HARDWARE && err == EOPNOTSUPP)
die("No hardware sampling interrupt available. No APIC? If so then you can boot the kernel with the \"lapic\" boot parameter to force-enable it.\n");
#endif
die("No CONFIG_PERF_EVENTS=y kernel support configured?\n");
exit(-1);
}