Commit d02d50cb authored by Colin Ian King's avatar Colin Ian King Committed by Rob Clark
Browse files

drm/msm: Fix dereference of pointer minor before null check



Currently the pointer minor is being dereferenced before it is null
checked, leading to a potential null pointer dereference issue. Fix this
by dereferencing the pointer only after it has been null checked. Also
Replace minor->dev with dev.

Fixes: 4f89cf40 ("drm/msm: bail out late_init_minor() if it is not a GPU device")
Signed-off-by: default avatarColin Ian King <colin.i.king@gmail.com>
Reviewed-by: default avatarKonrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/666259/


Signed-off-by: default avatarRob Clark <robin.clark@oss.qualcomm.com>
parent 08c5b422
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -325,25 +325,28 @@ static struct drm_info_list msm_debugfs_list[] = {

static int late_init_minor(struct drm_minor *minor)
{
	struct drm_device *dev = minor->dev;
	struct msm_drm_private *priv = dev->dev_private;
	struct drm_device *dev;
	struct msm_drm_private *priv;
	int ret;

	if (!minor)
		return 0;

	dev = minor->dev;
	priv = dev->dev_private;

	if (!priv->gpu_pdev)
		return 0;

	ret = msm_rd_debugfs_init(minor);
	if (ret) {
		DRM_DEV_ERROR(minor->dev->dev, "could not install rd debugfs\n");
		DRM_DEV_ERROR(dev->dev, "could not install rd debugfs\n");
		return ret;
	}

	ret = msm_perf_debugfs_init(minor);
	if (ret) {
		DRM_DEV_ERROR(minor->dev->dev, "could not install perf debugfs\n");
		DRM_DEV_ERROR(dev->dev, "could not install perf debugfs\n");
		return ret;
	}