aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDeng-Cheng Zhu <[email protected]>2011-11-22 03:28:48 +0800
committerRalf Baechle <[email protected]>2011-12-07 22:04:41 +0000
commitff5d7265cfb88e8f8943a55afde90255fc5deacb (patch)
tree0b93a78af8c04bc0cee71e641583d31a815d9245
parent266623b7597c97e6ff987b45719540b227751420 (diff)
MIPS/Perf-events: Cleanup event->destroy at event init
Simplify the code by changing the place of event->destroy(). Signed-off-by: Deng-Cheng Zhu <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Paul Mackerras <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Arnaldo Carvalho de Melo <[email protected]> Cc: David Daney <[email protected]> Cc: Eyal Barzilay <[email protected]> Cc: Zenon Fortuna <[email protected]> Patchwork: https://patchwork.linux-mips.org/patch/3109/ Signed-off-by: Ralf Baechle <[email protected]>
-rw-r--r--arch/mips/kernel/perf_event_mipsxx.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/arch/mips/kernel/perf_event_mipsxx.c b/arch/mips/kernel/perf_event_mipsxx.c
index b22cc5fd596d..bda4bc9e6988 100644
--- a/arch/mips/kernel/perf_event_mipsxx.c
+++ b/arch/mips/kernel/perf_event_mipsxx.c
@@ -633,11 +633,7 @@ static int mipspmu_event_init(struct perf_event *event)
if (err)
return err;
- err = __hw_perf_event_init(event);
- if (err)
- hw_perf_event_destroy(event);
-
- return err;
+ return __hw_perf_event_init(event);
}
static struct pmu pmu = {
@@ -1262,13 +1258,14 @@ static int __hw_perf_event_init(struct perf_event *event)
}
err = 0;
- if (event->group_leader != event) {
+ if (event->group_leader != event)
err = validate_group(event);
- if (err)
- return -EINVAL;
- }
event->destroy = hw_perf_event_destroy;
+
+ if (err)
+ event->destroy(event);
+
return err;
}