--- /dev/null
+From 70bc916b2c80913753fb188d4daee50a64d21ba0 Mon Sep 17 00:00:00 2001
+From: Liviu Dudau <Liviu.Dudau@arm.com>
+Date: Thu, 21 Jan 2016 11:57:47 +0000
+Subject: staging: android: ion: Set the length of the DMA sg entries in buffer
+
+From: Liviu Dudau <Liviu.Dudau@arm.com>
+
+commit 70bc916b2c80913753fb188d4daee50a64d21ba0 upstream.
+
+ion_buffer_create() will allocate a buffer and then create a DMA
+mapping for it, but it forgot to set the length of the page entries.
+
+Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
+Signed-off-by: Jon Medhurst <tixy@linaro.org>
+Acked-by: Laura Abbott <labbott@redhat.com>
+Cc: Shawn Guo <shawnguo@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/staging/android/ion/ion.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/drivers/staging/android/ion/ion.c
++++ b/drivers/staging/android/ion/ion.c
+@@ -251,8 +251,10 @@ static struct ion_buffer *ion_buffer_cre
+ * memory coming from the heaps is ready for dma, ie if it has a
+ * cached mapping that mapping has been invalidated
+ */
+- for_each_sg(buffer->sg_table->sgl, sg, buffer->sg_table->nents, i)
++ for_each_sg(buffer->sg_table->sgl, sg, buffer->sg_table->nents, i) {
+ sg_dma_address(sg) = sg_phys(sg);
++ sg_dma_len(sg) = sg->length;
++ }
+ mutex_lock(&dev->buffer_lock);
+ ion_buffer_add(dev, buffer);
+ mutex_unlock(&dev->buffer_lock);