Commit 55808b8d authored by Laura Abbott's avatar Laura Abbott Committed by Greg Kroah-Hartman
Browse files

gpu: ion: Don't call ion_buffer_put on error path



If dma_buf_fd fails, the dma_buf needs to be cleaned up by
calling dma_buf_put. dma_buf_put will call ion_dma_buf_release
which in turn calls ion_buffer_put to clean up the buffer
reference. Calling ion_buffer_put after dma_buf_put drops the
reference count by one more which is incorrect. Fix this by
getting rid of the extra ion_buffer_put call.

Signed-off-by: default avatarLaura Abbott <lauraa@codeaurora.org>
[jstultz: modified patch to apply to staging directory]
Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a1c6b996
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -925,10 +925,9 @@ int ion_share_dma_buf(struct ion_client *client, struct ion_handle *handle)
		return PTR_ERR(dmabuf);
	}
	fd = dma_buf_fd(dmabuf, O_CLOEXEC);
	if (fd < 0) {
	if (fd < 0)
		dma_buf_put(dmabuf);
		ion_buffer_put(buffer);
	}

	return fd;
}
EXPORT_SYMBOL(ion_share_dma_buf);