summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2014-05-28 16:16:42 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-06-11 16:57:34 +0200
commitbe19f0ff482bd5f800d916683784a7e1474d5d6b (patch)
tree860ed8cc8aafdeb9ab1eab87e40770cadff04b61
parent4328633d6553558471c260137019c245c2e9d7c6 (diff)
drm/i915: Check for a NULL shared dpll before dereferencing
This doesn't look possible but a little extra defense against the improbable is worth it - an oops here could lockup the machine. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/intel_display.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index e7e95c3cf6ad..8635bb7878fe 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -1760,6 +1760,9 @@ static void intel_prepare_shared_dpll(struct intel_crtc *crtc)
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_shared_dpll *pll = intel_crtc_to_shared_dpll(crtc);
+ if (WARN_ON(pll == NULL))
+ return;
+
WARN_ON(!pll->refcount);
if (pll->active == 0) {
DRM_DEBUG_DRIVER("setting up %s\n", pll->name);