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

Commit a51eabdf authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: kgsl: Delete context event group on detach"

parents 790d6fac cf4c95e5
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -348,6 +348,7 @@ static void adreno_drawctxt_detach_callback(struct kgsl_device *device,
	wake_up_all(&drawctxt->waiting);
	wake_up_all(&drawctxt->wq);
	complete_all(&drawctxt->base.detach_gate);
	kgsl_del_event_group(&context->events);
	kgsl_context_put(context);
	adreno_profile_process_results(adreno_dev);
}
+0 −1
Original line number Diff line number Diff line
@@ -634,7 +634,6 @@ kgsl_context_destroy(struct kref *kref)
	write_unlock(&device->context_lock);
	kgsl_sync_timeline_destroy(context);
	kgsl_process_private_put(context->proc_priv);
	kgsl_del_event_group(&context->events);

	device->ftbl->drawctxt_destroy(context);
}
+4 −2
Original line number Diff line number Diff line
@@ -73,7 +73,8 @@ void kgsl_process_event_group(struct kgsl_device *device,

	context = group->context;

	_kgsl_context_get(context);
	if (context && !_kgsl_context_get(context))
		return;

	spin_lock(&group->lock);

@@ -204,7 +205,8 @@ int kgsl_add_event(struct kgsl_device *device, struct kgsl_event_group *group,
		return -ENOMEM;

	/* Get a reference to the context while the event is active */
	_kgsl_context_get(context);
	if (context && !_kgsl_context_get(context))
		return -EINVAL;

	event->device = device;
	event->context = context;