[AVR32] Drop GFP_COMP for DMA memory allocations
dma_alloc_coherent wants to split pages after allocation in order to reduce the memory footprint. This does not work well with GFP_COMP pages, so drop this flag before allocation. This patch was forward-ported from BSP 2.0 Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
This commit is contained in:
parent
49914084e7
commit
3611553ef9
1 changed files with 7 additions and 0 deletions
|
@ -41,6 +41,13 @@ static struct page *__dma_alloc(struct device *dev, size_t size,
|
|||
struct page *page, *free, *end;
|
||||
int order;
|
||||
|
||||
/* Following is a work-around (a.k.a. hack) to prevent pages
|
||||
* with __GFP_COMP being passed to split_page() which cannot
|
||||
* handle them. The real problem is that this flag probably
|
||||
* should be 0 on AVR32 as it is not supported on this
|
||||
* platform--see CONFIG_HUGETLB_PAGE. */
|
||||
gfp &= ~(__GFP_COMP);
|
||||
|
||||
size = PAGE_ALIGN(size);
|
||||
order = get_order(size);
|
||||
|
||||
|
|
Loading…
Reference in a new issue