提交 c07a2d11 编写于 作者: M Matt Roper 提交者: Daniel Vetter

drm/i915: Don't dereference NULL plane while setting up scalers

intel_atomic_setup_scalers() dereferences 'plane' before the plane has
been assigned.  The plane ID assignment doing this dereference is only
needed for debugging messages later in the function, so just move the
assignment farther down the function to a point where plane will no
longer be NULL.

This was introduced in:

        commit 133b0d12
        Author: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
        Date:   Mon Jun 15 12:33:39 2015 +0200

            drm/i915: Clean up intel_atomic_setup_scalers slightly.

Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Bob Paauwe <bob.j.paauwe@intel.com>
Reported-by: NBob Paauwe <bob.j.paauwe@intel.com>
Signed-off-by: NMatt Roper <matthew.d.roper@intel.com>
Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
上级 1cff8cc3
...@@ -325,7 +325,6 @@ int intel_atomic_setup_scalers(struct drm_device *dev, ...@@ -325,7 +325,6 @@ int intel_atomic_setup_scalers(struct drm_device *dev,
scaler_id = &scaler_state->scaler_id; scaler_id = &scaler_state->scaler_id;
} else { } else {
name = "PLANE"; name = "PLANE";
idx = plane->base.id;
if (!drm_state) if (!drm_state)
continue; continue;
...@@ -359,6 +358,7 @@ int intel_atomic_setup_scalers(struct drm_device *dev, ...@@ -359,6 +358,7 @@ int intel_atomic_setup_scalers(struct drm_device *dev,
} }
intel_plane = to_intel_plane(plane); intel_plane = to_intel_plane(plane);
idx = plane->base.id;
/* plane on different crtc cannot be a scaler user of this crtc */ /* plane on different crtc cannot be a scaler user of this crtc */
if (WARN_ON(intel_plane->pipe != intel_crtc->pipe)) { if (WARN_ON(intel_plane->pipe != intel_crtc->pipe)) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册