arm-ccn: perf: Prevent module unload while PMU is in use
authorSuzuki K Poulose <suzuki.poulose@arm.com>
Fri, 3 Nov 2017 11:45:18 +0000 (11:45 +0000)
committerWill Deacon <will.deacon@arm.com>
Fri, 3 Nov 2017 15:24:06 +0000 (15:24 +0000)
When the PMU driver is built as a module, the perf expects the
pmu->module to be valid, so that the driver is prevented from
being unloaded while it is in use. Fix the CCN pmu driver to
fill in this field.

Fixes: a33b0daab73a0 ("bus: ARM CCN PMU driver")
Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
drivers/bus/arm-ccn.c

index e8c6946fed9d26ab3cb0c827976287dea9115cf6..3063f53123979d740c1f9c97099bcdb86103d43d 100644 (file)
@@ -1276,6 +1276,7 @@ static int arm_ccn_pmu_init(struct arm_ccn *ccn)
 
        /* Perf driver registration */
        ccn->dt.pmu = (struct pmu) {
+               .module = THIS_MODULE,
                .attr_groups = arm_ccn_pmu_attr_groups,
                .task_ctx_nr = perf_invalid_context,
                .event_init = arm_ccn_pmu_event_init,