[Intel-gfx] [PATCH] drm/i915: Free resources correctly if we cannot map status page during ctx create

Arun Siluvery arun.siluvery at linux.intel.com
Mon Nov 17 16:48:27 CET 2014


We are not freeing memory allocated for ringbuf and ctx if we fail
to map status page so release all resources correctly.

Signed-off-by: Arun Siluvery <arun.siluvery at linux.intel.com>
---
 drivers/gpu/drm/i915/intel_lrc.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index f3efdbd..a84d24b 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -1777,8 +1777,10 @@ int intel_lr_context_deferred_create(struct intel_context *ctx,
 		ring->status_page.gfx_addr = i915_gem_obj_ggtt_offset(ctx_obj);
 		ring->status_page.page_addr =
 				kmap(sg_page(ctx_obj->pages->sgl));
-		if (ring->status_page.page_addr == NULL)
-			return -ENOMEM;
+		if (ring->status_page.page_addr == NULL) {
+			ret = -ENOMEM;
+			goto error;
+		}
 		ring->status_page.obj = ctx_obj;
 	}
 
-- 
2.1.2




More information about the Intel-gfx mailing list