diff options
author | Jiri Olsa <jolsa@redhat.com> | 2013-03-10 19:41:10 +0100 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-03-15 17:06:10 +0100 |
commit | 5a6bef47b418676546ab86d25631c3cfb9ffaf2a (patch) | |
tree | fe4a133db664100f4a0e463e192e4a09a845d3df /tools/perf/tests/tests.h | |
parent | perf tools: Remove duplicated page_size definition (diff) | |
download | linux-5a6bef47b418676546ab86d25631c3cfb9ffaf2a.tar.xz linux-5a6bef47b418676546ab86d25631c3cfb9ffaf2a.zip |
perf tests: Test breakpoint overflow signal handler
Adding automated test for breakpoint event signal handler checking if
it's executed properly.
The test is related to the proper handling of the RF EFLAGS bit on
x86_64, but it's generic for all archs.
First we check the signal handler is properly called and that the
following debug exception return to user space wouldn't trigger
recursive breakpoint.
This is related to x86_64 RF EFLAGS bit being managed in a wrong way.
Second we check that we can set breakpoint in signal handler, which is
not possible on x86_64 if the signal handler is executed with RF EFLAG
set.
This test is inpired by overflow tests done by Vince Weaver.
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Oleg Nesterov <oleg@redhat.com>
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: Vince Weaver <vincent.weaver@maine.edu>
Link: http://lkml.kernel.org/r/1362940871-24486-6-git-send-email-jolsa@redhat.com
[ committer note: s/pr_err/pr_debug/g i.e. print just OK or FAILED in non verbose mode ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/tests/tests.h')
-rw-r--r-- | tools/perf/tests/tests.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/perf/tests/tests.h b/tools/perf/tests/tests.h index 5de0be1ff4b6..05d0e58064a3 100644 --- a/tools/perf/tests/tests.h +++ b/tools/perf/tests/tests.h @@ -23,5 +23,6 @@ int test__dso_data(void); int test__parse_events(void); int test__hists_link(void); int test__python_use(void); +int test__bp_signal(void); #endif /* TESTS_H */ |