summaryrefslogtreecommitdiff
path: root/drivers/perf/arm_dsu_pmu.c
diff options
context:
space:
mode:
authorQi Liu <liuqi115@huawei.com>2020-07-17 16:49:23 +0800
committerWill Deacon <will@kernel.org>2020-07-17 10:51:44 +0100
commitf32ed8eb0e3f0d0ef4ddb854554d60ca5863a9f9 (patch)
tree455b30ad8a4efffe84e472e9036fcd319eab0f82 /drivers/perf/arm_dsu_pmu.c
parentbd024e82e4cd95c7f1a475a55f99871936c2b2db (diff)
drivers/perf: Prevent forced unbinding of PMU drivers
Forcefully unbinding PMU drivers during perf sampling will lead to a kernel panic, because the perf upper-layer framework call a NULL pointer in this situation. To solve this issue, "suppress_bind_attrs" should be set to true, so that bind/unbind can be disabled via sysfs and prevent unbinding PMU drivers during perf sampling. Signed-off-by: Qi Liu <liuqi115@huawei.com> Reviewed-by: John Garry <john.garry@huawei.com> Link: https://lore.kernel.org/r/1594975763-32966-1-git-send-email-liuqi115@huawei.com Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'drivers/perf/arm_dsu_pmu.c')
-rw-r--r--drivers/perf/arm_dsu_pmu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/perf/arm_dsu_pmu.c b/drivers/perf/arm_dsu_pmu.c
index 518d0603e24f..96ed93cc78e6 100644
--- a/drivers/perf/arm_dsu_pmu.c
+++ b/drivers/perf/arm_dsu_pmu.c
@@ -757,6 +757,7 @@ static struct platform_driver dsu_pmu_driver = {
.driver = {
.name = DRVNAME,
.of_match_table = of_match_ptr(dsu_pmu_of_match),
+ .suppress_bind_attrs = true,
},
.probe = dsu_pmu_device_probe,
.remove = dsu_pmu_device_remove,