drm/i915/gt: Remember to free the virtual breadcrumbs
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 18 Nov 2020 13:38:39 +0000 (13:38 +0000)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 19 Nov 2020 06:52:28 +0000 (01:52 -0500)
Since we allocate some breadcrumbs for the virtual engine, and the
virtual engine has a custom destructor, we also need to free the
breadcrumbs after use.

Fixes: b3786b29379c ("drm/i915/gt: Distinguish the virtual breadcrumbs from the irq breadcrumbs")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201118133839.1783-1-chris@chris-wilson.co.uk
(cherry picked from commit 45e50f48b7907e650cfbbc7879abfe3a0c419c73)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/gt/intel_lrc.c

index f82c6dd..9bb16bd 100644 (file)
@@ -5457,6 +5457,7 @@ static void virtual_context_destroy(struct kref *kref)
                __execlists_context_fini(&ve->context);
        intel_context_fini(&ve->context);
 
+       intel_breadcrumbs_free(ve->base.breadcrumbs);
        intel_engine_free_request_pool(&ve->base);
 
        kfree(ve->bonds);