diff options
author | Mika Kuoppala <mika.kuoppala@linux.intel.com> | 2012-11-12 07:20:19 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-11-29 05:43:51 -0500 |
commit | 4f1ba0f83a6d4abd055cf75af43954b38df8dcaf (patch) | |
tree | de6614f3f538e62d231205a440fcbf666aba2e5d /drivers/gpu | |
parent | fc37381cc8ae2c24b8ece33659e69a0605ca074c (diff) |
drm/i915: fix possible NULL dereference of dev_priv
Dereference dev_priv only after we know it is valid.
Found with smatch.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/i915_dma.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index a48e4910ea2c..4ea331b931fd 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c | |||
@@ -1045,7 +1045,7 @@ static int i915_set_status_page(struct drm_device *dev, void *data, | |||
1045 | { | 1045 | { |
1046 | drm_i915_private_t *dev_priv = dev->dev_private; | 1046 | drm_i915_private_t *dev_priv = dev->dev_private; |
1047 | drm_i915_hws_addr_t *hws = data; | 1047 | drm_i915_hws_addr_t *hws = data; |
1048 | struct intel_ring_buffer *ring = LP_RING(dev_priv); | 1048 | struct intel_ring_buffer *ring; |
1049 | 1049 | ||
1050 | if (drm_core_check_feature(dev, DRIVER_MODESET)) | 1050 | if (drm_core_check_feature(dev, DRIVER_MODESET)) |
1051 | return -ENODEV; | 1051 | return -ENODEV; |
@@ -1065,6 +1065,7 @@ static int i915_set_status_page(struct drm_device *dev, void *data, | |||
1065 | 1065 | ||
1066 | DRM_DEBUG_DRIVER("set status page addr 0x%08x\n", (u32)hws->addr); | 1066 | DRM_DEBUG_DRIVER("set status page addr 0x%08x\n", (u32)hws->addr); |
1067 | 1067 | ||
1068 | ring = LP_RING(dev_priv); | ||
1068 | ring->status_page.gfx_addr = hws->addr & (0x1ffff<<12); | 1069 | ring->status_page.gfx_addr = hws->addr & (0x1ffff<<12); |
1069 | 1070 | ||
1070 | dev_priv->dri1.gfx_hws_cpu_addr = | 1071 | dev_priv->dri1.gfx_hws_cpu_addr = |