From 71d38a5ab6dd11b256397279c598cf4a834abc9d Mon Sep 17 00:00:00 2001 From: Deng-Cheng Zhu Date: Tue, 22 Nov 2011 03:28:48 +0800 Subject: [PATCH] --- yaml --- r: 284777 b: refs/heads/master c: ff5d7265cfb88e8f8943a55afde90255fc5deacb h: refs/heads/master i: 284775: b141944081678be810fee00ba02de0a1c345d0ab v: v3 --- [refs] | 2 +- trunk/arch/mips/kernel/perf_event_mipsxx.c | 15 ++++++--------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/[refs] b/[refs] index 4a71ac434399..f7d4ee1e0bef 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 266623b7597c97e6ff987b45719540b227751420 +refs/heads/master: ff5d7265cfb88e8f8943a55afde90255fc5deacb diff --git a/trunk/arch/mips/kernel/perf_event_mipsxx.c b/trunk/arch/mips/kernel/perf_event_mipsxx.c index b22cc5fd596d..bda4bc9e6988 100644 --- a/trunk/arch/mips/kernel/perf_event_mipsxx.c +++ b/trunk/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; }