From: Guangming <Guangming.Cao@xxxxxxxxxxxx> Add a size check for allcation since the allocation size is always less than the total DRAM size. Signed-off-by: Guangming <Guangming.Cao@xxxxxxxxxxxx> Signed-off-by: jianjiao zeng <jianjiao.zeng@xxxxxxxxxxxx> --- v2: 1. update size limitation as total_dram page size. 2. update commit message --- drivers/dma-buf/dma-heap.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/dma-buf/dma-heap.c b/drivers/dma-buf/dma-heap.c index 56bf5ad01ad5..e39d2be98d69 100644 --- a/drivers/dma-buf/dma-heap.c +++ b/drivers/dma-buf/dma-heap.c @@ -55,6 +55,8 @@ static int dma_heap_buffer_alloc(struct dma_heap *heap, size_t len, struct dma_buf *dmabuf; int fd; + if (len / PAGE_SIZE > totalram_pages()) + return -EINVAL; /* * Allocations from all heaps have to begin * and end on page boundaries. -- 2.17.1