Merge branch 'perf/urgent' into perf/core, to pick up fixes
[sfrench/cifs-2.6.git] / kernel / events / core.c
index 6c4e523dc1e2e6b53d44bf6a540bc168bcde1eca..3de0b98c441465976121ec6fcdbba00c7e0d8a28 100644 (file)
@@ -9193,7 +9193,7 @@ static int perf_try_init_event(struct pmu *pmu, struct perf_event *event)
 
 static struct pmu *perf_init_event(struct perf_event *event)
 {
-       struct pmu *pmu = NULL;
+       struct pmu *pmu;
        int idx;
        int ret;
 
@@ -9477,9 +9477,7 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu,
        }
 
        pmu = perf_init_event(event);
-       if (!pmu)
-               goto err_ns;
-       else if (IS_ERR(pmu)) {
+       if (IS_ERR(pmu)) {
                err = PTR_ERR(pmu);
                goto err_ns;
        }
@@ -9492,8 +9490,10 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu,
                event->addr_filters_offs = kcalloc(pmu->nr_addr_filters,
                                                   sizeof(unsigned long),
                                                   GFP_KERNEL);
-               if (!event->addr_filters_offs)
+               if (!event->addr_filters_offs) {
+                       err = -ENOMEM;
                        goto err_per_task;
+               }
 
                /* force hw sync on the address filters */
                event->addr_filters_gen = 1;