aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/include/asm/hw_breakpoint.h1
-rw-r--r--arch/arm64/include/asm/hw_breakpoint.h1
-rw-r--r--arch/powerpc/include/asm/hw_breakpoint.h1
-rw-r--r--arch/sh/include/asm/hw_breakpoint.h1
-rw-r--r--arch/x86/include/asm/hw_breakpoint.h1
-rw-r--r--arch/xtensa/include/asm/hw_breakpoint.h1
-rw-r--r--kernel/events/hw_breakpoint.c17
7 files changed, 0 insertions, 23 deletions
diff --git a/arch/arm/include/asm/hw_breakpoint.h b/arch/arm/include/asm/hw_breakpoint.h
index 1e02925c11f4..ac54c06764e6 100644
--- a/arch/arm/include/asm/hw_breakpoint.h
+++ b/arch/arm/include/asm/hw_breakpoint.h
@@ -122,7 +122,6 @@ extern int arch_check_bp_in_kernelspace(struct arch_hw_breakpoint *hw);
122extern int hw_breakpoint_arch_parse(struct perf_event *bp, 122extern int hw_breakpoint_arch_parse(struct perf_event *bp,
123 const struct perf_event_attr *attr, 123 const struct perf_event_attr *attr,
124 struct arch_hw_breakpoint *hw); 124 struct arch_hw_breakpoint *hw);
125#define hw_breakpoint_arch_parse hw_breakpoint_arch_parse
126extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused, 125extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused,
127 unsigned long val, void *data); 126 unsigned long val, void *data);
128 127
diff --git a/arch/arm64/include/asm/hw_breakpoint.h b/arch/arm64/include/asm/hw_breakpoint.h
index bf9c305daa62..6a53e59ced95 100644
--- a/arch/arm64/include/asm/hw_breakpoint.h
+++ b/arch/arm64/include/asm/hw_breakpoint.h
@@ -129,7 +129,6 @@ extern int arch_check_bp_in_kernelspace(struct arch_hw_breakpoint *hw);
129extern int hw_breakpoint_arch_parse(struct perf_event *bp, 129extern int hw_breakpoint_arch_parse(struct perf_event *bp,
130 const struct perf_event_attr *attr, 130 const struct perf_event_attr *attr,
131 struct arch_hw_breakpoint *hw); 131 struct arch_hw_breakpoint *hw);
132#define hw_breakpoint_arch_parse hw_breakpoint_arch_parse
133extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused, 132extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused,
134 unsigned long val, void *data); 133 unsigned long val, void *data);
135 134
diff --git a/arch/powerpc/include/asm/hw_breakpoint.h b/arch/powerpc/include/asm/hw_breakpoint.h
index 38ae180610bd..27d6e3c8fde9 100644
--- a/arch/powerpc/include/asm/hw_breakpoint.h
+++ b/arch/powerpc/include/asm/hw_breakpoint.h
@@ -65,7 +65,6 @@ extern int arch_check_bp_in_kernelspace(struct arch_hw_breakpoint *hw);
65extern int hw_breakpoint_arch_parse(struct perf_event *bp, 65extern int hw_breakpoint_arch_parse(struct perf_event *bp,
66 const struct perf_event_attr *attr, 66 const struct perf_event_attr *attr,
67 struct arch_hw_breakpoint *hw); 67 struct arch_hw_breakpoint *hw);
68#define hw_breakpoint_arch_parse hw_breakpoint_arch_parse
69extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused, 68extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused,
70 unsigned long val, void *data); 69 unsigned long val, void *data);
71int arch_install_hw_breakpoint(struct perf_event *bp); 70int arch_install_hw_breakpoint(struct perf_event *bp);
diff --git a/arch/sh/include/asm/hw_breakpoint.h b/arch/sh/include/asm/hw_breakpoint.h
index 867edcc60e8f..199d17b765f2 100644
--- a/arch/sh/include/asm/hw_breakpoint.h
+++ b/arch/sh/include/asm/hw_breakpoint.h
@@ -58,7 +58,6 @@ extern int arch_check_bp_in_kernelspace(struct arch_hw_breakpoint *hw);
58extern int hw_breakpoint_arch_parse(struct perf_event *bp, 58extern int hw_breakpoint_arch_parse(struct perf_event *bp,
59 const struct perf_event_attr *attr, 59 const struct perf_event_attr *attr,
60 struct arch_hw_breakpoint *hw); 60 struct arch_hw_breakpoint *hw);
61#define hw_breakpoint_arch_parse hw_breakpoint_arch_parse
62extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused, 61extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused,
63 unsigned long val, void *data); 62 unsigned long val, void *data);
64 63
diff --git a/arch/x86/include/asm/hw_breakpoint.h b/arch/x86/include/asm/hw_breakpoint.h
index 6c88e8e22678..a1f0e90d0818 100644
--- a/arch/x86/include/asm/hw_breakpoint.h
+++ b/arch/x86/include/asm/hw_breakpoint.h
@@ -57,7 +57,6 @@ extern int arch_check_bp_in_kernelspace(struct arch_hw_breakpoint *hw);
57extern int hw_breakpoint_arch_parse(struct perf_event *bp, 57extern int hw_breakpoint_arch_parse(struct perf_event *bp,
58 const struct perf_event_attr *attr, 58 const struct perf_event_attr *attr,
59 struct arch_hw_breakpoint *hw); 59 struct arch_hw_breakpoint *hw);
60#define hw_breakpoint_arch_parse hw_breakpoint_arch_parse
61extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused, 60extern int hw_breakpoint_exceptions_notify(struct notifier_block *unused,
62 unsigned long val, void *data); 61 unsigned long val, void *data);
63 62
diff --git a/arch/xtensa/include/asm/hw_breakpoint.h b/arch/xtensa/include/asm/hw_breakpoint.h
index f347c2132e6b..9f119c1ca0b5 100644
--- a/arch/xtensa/include/asm/hw_breakpoint.h
+++ b/arch/xtensa/include/asm/hw_breakpoint.h
@@ -40,7 +40,6 @@ int arch_check_bp_in_kernelspace(struct arch_hw_breakpoint *hw);
40int hw_breakpoint_arch_parse(struct perf_event *bp, 40int hw_breakpoint_arch_parse(struct perf_event *bp,
41 const struct perf_event_attr *attr, 41 const struct perf_event_attr *attr,
42 struct arch_hw_breakpoint *hw); 42 struct arch_hw_breakpoint *hw);
43#define hw_breakpoint_arch_parse hw_breakpoint_arch_parse
44int hw_breakpoint_exceptions_notify(struct notifier_block *unused, 43int hw_breakpoint_exceptions_notify(struct notifier_block *unused,
45 unsigned long val, void *data); 44 unsigned long val, void *data);
46 45
diff --git a/kernel/events/hw_breakpoint.c b/kernel/events/hw_breakpoint.c
index 89fe94c9214c..e7bc8d0a5972 100644
--- a/kernel/events/hw_breakpoint.c
+++ b/kernel/events/hw_breakpoint.c
@@ -400,23 +400,6 @@ int dbg_release_bp_slot(struct perf_event *bp)
400 return 0; 400 return 0;
401} 401}
402 402
403#ifndef hw_breakpoint_arch_parse
404int hw_breakpoint_arch_parse(struct perf_event *bp,
405 const struct perf_event_attr *attr,
406 struct arch_hw_breakpoint *hw)
407{
408 int err;
409
410 err = arch_validate_hwbkpt_settings(bp);
411 if (err)
412 return err;
413
414 *hw = bp->hw.info;
415
416 return 0;
417}
418#endif
419
420static int hw_breakpoint_parse(struct perf_event *bp, 403static int hw_breakpoint_parse(struct perf_event *bp,
421 const struct perf_event_attr *attr, 404 const struct perf_event_attr *attr,
422 struct arch_hw_breakpoint *hw) 405 struct arch_hw_breakpoint *hw)