From: Janghyuck Kim Date: Fri, 15 Feb 2019 08:03:41 +0000 (+0900) Subject: [RAMEN9610-12270] media: vb2: fix for wrong GFP mask to sg_alloc_table_from_pages X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=cade3889b8fc0bd183fe8b1df383d8655108f55c;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git [RAMEN9610-12270] media: vb2: fix for wrong GFP mask to sg_alloc_table_from_pages sg_alloc_table_from_pages() would be failed if free memory is not enough. GFP mask is changed to GFP_KERNEL to reclaim memory in this situation. Change-Id: I654975ce7903f1545e10ac1bc2f905f1caff8268 Signed-off-by: Janghyuck Kim --- diff --git a/drivers/media/v4l2-core/videobuf2-dma-sg.c b/drivers/media/v4l2-core/videobuf2-dma-sg.c index a3f6eaeb3c53..495944553734 100644 --- a/drivers/media/v4l2-core/videobuf2-dma-sg.c +++ b/drivers/media/v4l2-core/videobuf2-dma-sg.c @@ -294,7 +294,7 @@ static void *vb2_dma_sg_get_userptr(struct device *dev, unsigned long vaddr, buf->num_pages = frame_vector_count(vec); if (sg_alloc_table_from_pages(buf->dma_sgt, buf->pages, - buf->num_pages, buf->offset, size, 0)) + buf->num_pages, buf->offset, size, GFP_KERNEL)) goto userptr_fail_sgtable; sgt = &buf->sg_table;