From edb997b664e5055e1941ceeac1e860651cf8398e Mon Sep 17 00:00:00 2001 From: Tejun Heo Date: Wed, 27 Feb 2013 17:04:55 -0800 Subject: [PATCH] --- yaml --- r: 359375 b: refs/heads/master c: 0e9c3be20d88aa5ed13fde4ece50f45eb96824ad h: refs/heads/master i: 359373: fc5ad23c6612a15c49044758ca4a06e1eeb442e5 359371: 9818a0bd38621b6a12a8cfdfcd34bca2ea0e2773 359367: 12fee83fd5a61b839761ac3ff9873bb7a0538fa1 359359: 5a164151fe7345708e6ebd8ecb4d919c16ed4e43 v: v3 --- [refs] | 2 +- trunk/kernel/events/core.c | 10 +++------- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index 6169be9153dc..9c46db487d49 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d228d9ec2c9a119ce15c6446ebeec05786ab3287 +refs/heads/master: 0e9c3be20d88aa5ed13fde4ece50f45eb96824ad diff --git a/trunk/kernel/events/core.c b/trunk/kernel/events/core.c index ccc457e36354..5a92cf6beff0 100644 --- a/trunk/kernel/events/core.c +++ b/trunk/kernel/events/core.c @@ -5965,13 +5965,9 @@ int perf_pmu_register(struct pmu *pmu, char *name, int type) pmu->name = name; if (type < 0) { - int err = idr_pre_get(&pmu_idr, GFP_KERNEL); - if (!err) - goto free_pdc; - - err = idr_get_new_above(&pmu_idr, pmu, PERF_TYPE_MAX, &type); - if (err) { - ret = err; + type = idr_alloc(&pmu_idr, pmu, PERF_TYPE_MAX, 0, GFP_KERNEL); + if (type < 0) { + ret = type; goto free_pdc; } }