Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bab2d1f6 authored by Chris Wilson's avatar Chris Wilson Committed by Dave Airlie
Browse files

drm/i915: Fix regression in 95ca9d

The object is dereferenced before the NULL check. Oops.

Fixes http://bugs.freedesktop.org/show_bug.cgi?id=20235



Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: default avatarEric Anholt <eric@anholt.net>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent f21289b3
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -3143,16 +3143,20 @@ static void
i915_gem_cleanup_hws(struct drm_device *dev)
{
	drm_i915_private_t *dev_priv = dev->dev_private;
	struct drm_gem_object *obj = dev_priv->hws_obj;
	struct drm_i915_gem_object *obj_priv = obj->driver_private;
	struct drm_gem_object *obj;
	struct drm_i915_gem_object *obj_priv;

	if (dev_priv->hws_obj == NULL)
		return;

	obj = dev_priv->hws_obj;
	obj_priv = obj->driver_private;

	kunmap(obj_priv->page_list[0]);
	i915_gem_object_unpin(obj);
	drm_gem_object_unreference(obj);
	dev_priv->hws_obj = NULL;

	memset(&dev_priv->hws_map, 0, sizeof(dev_priv->hws_map));
	dev_priv->hw_status_page = NULL;