From: Muhammad Falak R Wani Date: Mon, 23 May 2016 11:38:42 +0000 (+0530) Subject: dma-buf: use vma_pages() X-Git-Tag: v4.7-rc2~19^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b02da6f8236148009c22167cd7013d5ce04a2d37;p=platform%2Fkernel%2Flinux-exynos.git dma-buf: use vma_pages() Replace explicit computation of vma page count by a call to vma_pages(). Also, include Signed-off-by: Muhammad Falak R Wani Reviewed-by: Eric Engestrom Signed-off-by: Sumit Semwal --- diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c index 4a2c07e..6355ab3 100644 --- a/drivers/dma-buf/dma-buf.c +++ b/drivers/dma-buf/dma-buf.c @@ -33,6 +33,7 @@ #include #include #include +#include #include @@ -90,7 +91,7 @@ static int dma_buf_mmap_internal(struct file *file, struct vm_area_struct *vma) dmabuf = file->private_data; /* check for overflowing the buffer's size */ - if (vma->vm_pgoff + ((vma->vm_end - vma->vm_start) >> PAGE_SHIFT) > + if (vma->vm_pgoff + vma_pages(vma) > dmabuf->size >> PAGE_SHIFT) return -EINVAL; @@ -723,11 +724,11 @@ int dma_buf_mmap(struct dma_buf *dmabuf, struct vm_area_struct *vma, return -EINVAL; /* check for offset overflow */ - if (pgoff + ((vma->vm_end - vma->vm_start) >> PAGE_SHIFT) < pgoff) + if (pgoff + vma_pages(vma) < pgoff) return -EOVERFLOW; /* check for overflowing the buffer's size */ - if (pgoff + ((vma->vm_end - vma->vm_start) >> PAGE_SHIFT) > + if (pgoff + vma_pages(vma) > dmabuf->size >> PAGE_SHIFT) return -EINVAL;