drm/tegra: vic: add NULL check on of_match_device() return value
PATCH 1/1 drm/tegra: vic: add NULL check on of_match_device() return value
Check return value from call to of_match_device()
in order to prevent a NULL pointer dereference.
In case of NULL print error message and return.
--- drivers/gpu/drm/tegra/vic.c | 5 +++++ 1 file changed, 5 insertions(+)
drivers/gpu/drm/tegra/vic.c +5 -0
@@ -283,6 +283,11 @@ static int vic_probe(struct platform_device *pdev)int err; match =of_match_device (vic_match, dev); +if (!match) { +dev_err (&pdev->dev,"failed to match device\n" ); +return -ENODEV ; + } + vic_config = (struct vic_config *)match->data; vic =devm_kzalloc (dev,sizeof (*vic),GFP_KERNEL );
Signature · 1 line
2.5.0
Quoted 15 lines · Gustavo A. R. Silva
Check return value from call to
of_match_device()
in order to prevent a NULL pointer dereference.In case of NULL print error message and return.
Signed-off-by Gustavo A. R. Silva <garsilva-L1vi/[email protected]>--- drivers/gpu/drm/tegra/vic.c | 5 +++++ 1 file changed, 5 insertions(+)drivers/gpu/drm/tegra/vic.c +0
-0
drivers/gpu/drm/tegra/vic.c static int vic_probe(struct platform_device *pdev) · line 289
Quoted 7 lines
drivers/gpu/drm/tegra/vic.c +4
-0@@ -283,6 +283,11 @@ static int vic_probe(struct platform_device *pdev)int err; match =of_match_device (vic_match, dev); +if (!match) { +dev_err (&pdev->dev,"failed to match device\n" ); +return -ENODEV ; + }
Someone would have to go to great lengths to trigger this condition, might as well let it crash as a warning that they've done something wrong.
Thierry
Hi Thierry,
Quoting Thierry Reding <[email protected]>:
Quoted 18 lines · Gustavo A. R. Silva
Quoted 17 lines
Check return value from call to
of_match_device()
in order to prevent a NULL pointer dereference.In case of NULL print error message and return.
Signed-off-by Gustavo A. R. Silva <[email protected]>--- drivers/gpu/drm/tegra/vic.c | 5 +++++ 1 file changed, 5 insertions(+)drivers/gpu/drm/tegra/vic.c +0
-0@@ -283,6 +283,11 @@ static int vic_probe(struct platform_device *pdev)int err;
Quoted 10 lines
drivers/gpu/drm/tegra/vic.c static int vic_probe(struct platform_device *pdev) · line 289
Quoted 5 lines
drivers/gpu/drm/tegra/vic.c +4
-0match =of_match_device (vic_match, dev); +if (!match) { +dev_err (&pdev->dev,"failed to match device\n" ); +return -ENODEV ; + }Someone would have to go to great lengths to trigger this condition, might as well let it crash as a warning that they've done something wrong.
Thanks for clarifying.
--
Gustavo A. R. Silva