summaryrefslogtreecommitdiff
path: root/drivers/clk/samsung/clk-s3c2410-dclk.c
diff options
context:
space:
mode:
authorKrzysztof Kozlowski <k.kozlowski@samsung.com>2016-05-17 10:26:14 +0300
committerSylwester Nawrocki <s.nawrocki@samsung.com>2016-06-02 12:18:18 +0300
commitf4f4dd0c45676fa3fc7683046f3acc862a088fed (patch)
tree723ecfe251835f5c52503b4cd4f34ff079d3e49e /drivers/clk/samsung/clk-s3c2410-dclk.c
parent34cba900375ec1751a87d3655ad03b9a5b022362 (diff)
downloadlinux-f4f4dd0c45676fa3fc7683046f3acc862a088fed.tar.xz
clk: samsung: Suppress unbinding to prevent theoretical attacks
Although unbinding a driver requires root privileges but it still might be used theoretically in certain attacks (by triggering NULL pointer exception or memory corruption if driver does not provide proper remove callbacks or core does not handle it). Samsung clock drivers are essential for system operation so their removal is not expected. More over, the Exynos3250 ISP clock driver does not implement remove() driver callback and it is not buildable as modules. Suppress the unbind interface for Exynos3250 ISP and S3C2410 DCLK clock drivers. Suggested-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Diffstat (limited to 'drivers/clk/samsung/clk-s3c2410-dclk.c')
-rw-r--r--drivers/clk/samsung/clk-s3c2410-dclk.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/clk/samsung/clk-s3c2410-dclk.c b/drivers/clk/samsung/clk-s3c2410-dclk.c
index ec6fb14d951c..ae9a595c72d0 100644
--- a/drivers/clk/samsung/clk-s3c2410-dclk.c
+++ b/drivers/clk/samsung/clk-s3c2410-dclk.c
@@ -428,8 +428,9 @@ MODULE_DEVICE_TABLE(platform, s3c24xx_dclk_driver_ids);
static struct platform_driver s3c24xx_dclk_driver = {
.driver = {
- .name = "s3c24xx-dclk",
- .pm = &s3c24xx_dclk_pm_ops,
+ .name = "s3c24xx-dclk",
+ .pm = &s3c24xx_dclk_pm_ops,
+ .suppress_bind_attrs = true,
},
.probe = s3c24xx_dclk_probe,
.remove = s3c24xx_dclk_remove,