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

Commit f65c18c0 authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Rob Clark
Browse files

drm/msm/atomic: Clean up planes in the error paths of .atomic_commit()



When the .atomic_commit() handler fails, clean up planes previoulsy
prepared by drm_atomic_helper_prepare_planes() with a call to
drm_atomic_helper_cleanup_planes().

Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent 1efb92a3
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -213,8 +213,10 @@ int msm_atomic_commit(struct drm_device *dev,
		return ret;

	c = commit_init(state);
	if (!c)
		return -ENOMEM;
	if (!c) {
		ret = -ENOMEM;
		goto error;
	}

	/*
	 * Figure out what crtcs we have:
@@ -247,7 +249,7 @@ int msm_atomic_commit(struct drm_device *dev,
	ret = start_atomic(dev->dev_private, c->crtc_mask);
	if (ret) {
		kfree(c);
		return ret;
		goto error;
	}

	/*
@@ -291,4 +293,8 @@ int msm_atomic_commit(struct drm_device *dev,
	complete_commit(c);

	return 0;

error:
	drm_atomic_helper_cleanup_planes(dev, state);
	return ret;
}