drm/exynos: Fix potential NULL pointer dereference
drm_mode_create() returns NULL if it fails to create a new display mode. Check the value returned to avoid NULL pointer deferencing later. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Inki Dae <inki.dae@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
This commit is contained in:
parent
291257cf4c
commit
53bd555654
1 changed files with 5 additions and 1 deletions
|
@ -150,8 +150,12 @@ static int exynos_drm_connector_get_modes(struct drm_connector *connector)
|
||||||
count = drm_add_edid_modes(connector, edid);
|
count = drm_add_edid_modes(connector, edid);
|
||||||
kfree(edid);
|
kfree(edid);
|
||||||
} else {
|
} else {
|
||||||
struct drm_display_mode *mode = drm_mode_create(connector->dev);
|
|
||||||
struct exynos_drm_panel_info *panel;
|
struct exynos_drm_panel_info *panel;
|
||||||
|
struct drm_display_mode *mode = drm_mode_create(connector->dev);
|
||||||
|
if (!mode) {
|
||||||
|
DRM_ERROR("failed to create a new display mode.\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (display_ops->get_panel)
|
if (display_ops->get_panel)
|
||||||
panel = display_ops->get_panel(manager->dev);
|
panel = display_ops->get_panel(manager->dev);
|
||||||
|
|
Loading…
Add table
Reference in a new issue