diff options
author | Suzuki K Poulose <suzuki.poulose@arm.com> | 2017-11-03 11:45:17 +0000 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2017-11-03 15:23:55 +0000 |
commit | 19b4aff2025b4336392c30bb638b7d01c6263301 (patch) | |
tree | 0cdebb53d7bc5bbec7f327cd4ee4c56069712570 /drivers/perf/arm_spe_pmu.c | |
parent | d125bffcefb290743e4eac536886dba689edf1eb (diff) | |
download | lwn-19b4aff2025b4336392c30bb638b7d01c6263301.tar.gz lwn-19b4aff2025b4336392c30bb638b7d01c6263301.zip |
perf: arm_spe: Prevent module unload while the PMU is in use
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 SPE pmu driver to
fill in this field.
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>
Diffstat (limited to 'drivers/perf/arm_spe_pmu.c')
-rw-r--r-- | drivers/perf/arm_spe_pmu.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/perf/arm_spe_pmu.c b/drivers/perf/arm_spe_pmu.c index 50511b13fd35..8ce262fc2561 100644 --- a/drivers/perf/arm_spe_pmu.c +++ b/drivers/perf/arm_spe_pmu.c @@ -889,6 +889,7 @@ static int arm_spe_pmu_perf_init(struct arm_spe_pmu *spe_pmu) struct device *dev = &spe_pmu->pdev->dev; spe_pmu->pmu = (struct pmu) { + .module = THIS_MODULE, .capabilities = PERF_PMU_CAP_EXCLUSIVE | PERF_PMU_CAP_ITRACE, .attr_groups = arm_spe_pmu_attr_groups, /* |