提交 7b993855 编写于 作者: D Daniel Schultz 提交者: Jyri Sarha

drm/tilcdc: fix wrong error handling

When 'component_bind_all' fails it should not try to unbind components
in the error handling. This will produce a null pointer kernel panic when
no component exist.

This patch changes the order of the error handling. Now, it will only
unbind components if the are bound. Otherwise, the module will jump to
an error label below.
Signed-off-by: NDaniel Schultz <d.schultz@phytec.de>
Reviewed-by: NSean Paul <seanpaul@chromium.org>
Signed-off-by: NJyri Sarha <jsarha@ti.com>
上级 cf97ee19
......@@ -412,13 +412,13 @@ static int tilcdc_load(struct drm_device *dev, unsigned long flags)
fail_vblank_cleanup:
drm_vblank_cleanup(dev);
fail_mode_config_cleanup:
drm_mode_config_cleanup(dev);
fail_component_cleanup:
if (priv->is_componentized)
component_unbind_all(dev->dev, dev);
fail_mode_config_cleanup:
drm_mode_config_cleanup(dev);
fail_external_cleanup:
tilcdc_remove_external_encoders(dev);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册