diff options
| author | Rebecca Schultz Zavin <rebecca@android.com> | 2012-10-18 21:54:01 -0700 | 
|---|---|---|
| committer | Arve Hjønnevåg <arve@android.com> | 2013-07-01 14:16:12 -0700 | 
| commit | a4194824b16da15d76d5bd94089ec1124ef2369c (patch) | |
| tree | 97044c8b819e7f237b5238d6e4d0028a541ed23e | |
| parent | a10821f7e451610fd7181f1d0063e874e79ae43c (diff) | |
| download | olio-linux-3.10-a4194824b16da15d76d5bd94089ec1124ef2369c.tar.xz olio-linux-3.10-a4194824b16da15d76d5bd94089ec1124ef2369c.zip  | |
gpu: ion: Don't flush allocatoins that come from the page pools
Change-Id: Ib08cb2cea3b6ea4b1ebf5a1b28abe6b9374fd2bd
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
| -rw-r--r-- | drivers/gpu/ion/ion_system_heap.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/gpu/ion/ion_system_heap.c b/drivers/gpu/ion/ion_system_heap.c index 2dc3048ed6f..26e6bbcda70 100644 --- a/drivers/gpu/ion/ion_system_heap.c +++ b/drivers/gpu/ion/ion_system_heap.c @@ -76,9 +76,14 @@ static struct page *alloc_buffer_page(struct ion_system_heap *heap,  		if (order > 4)  			gfp_flags = high_order_gfp_flags;  		page = alloc_pages(gfp_flags, order); +		if (!page) +			return 0; +		__dma_page_cpu_to_dev(page, 0, PAGE_SIZE << order, +				      DMA_BIDIRECTIONAL);  	}  	if (!page)  		return 0; +  	if (split_pages)  		split_page(page, order);  	return page; @@ -201,9 +206,6 @@ static int ion_system_heap_allocate(struct ion_heap *heap,  		kfree(info);  	} -	dma_sync_sg_for_device(NULL, table->sgl, table->nents, -			       DMA_BIDIRECTIONAL); -  	buffer->priv_virt = table;  	return 0;  err1:  |