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>
This commit is contained in:
parent
fc37381cc8
commit
4f1ba0f83a
1 changed files with 2 additions and 1 deletions
|
@ -1045,7 +1045,7 @@ static int i915_set_status_page(struct drm_device *dev, void *data,
|
||||||
{
|
{
|
||||||
drm_i915_private_t *dev_priv = dev->dev_private;
|
drm_i915_private_t *dev_priv = dev->dev_private;
|
||||||
drm_i915_hws_addr_t *hws = data;
|
drm_i915_hws_addr_t *hws = data;
|
||||||
struct intel_ring_buffer *ring = LP_RING(dev_priv);
|
struct intel_ring_buffer *ring;
|
||||||
|
|
||||||
if (drm_core_check_feature(dev, DRIVER_MODESET))
|
if (drm_core_check_feature(dev, DRIVER_MODESET))
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
@ -1065,6 +1065,7 @@ static int i915_set_status_page(struct drm_device *dev, void *data,
|
||||||
|
|
||||||
DRM_DEBUG_DRIVER("set status page addr 0x%08x\n", (u32)hws->addr);
|
DRM_DEBUG_DRIVER("set status page addr 0x%08x\n", (u32)hws->addr);
|
||||||
|
|
||||||
|
ring = LP_RING(dev_priv);
|
||||||
ring->status_page.gfx_addr = hws->addr & (0x1ffff<<12);
|
ring->status_page.gfx_addr = hws->addr & (0x1ffff<<12);
|
||||||
|
|
||||||
dev_priv->dri1.gfx_hws_cpu_addr =
|
dev_priv->dri1.gfx_hws_cpu_addr =
|
||||||
|
|
Loading…
Add table
Reference in a new issue