diff options
| author | Koen Kooi <koen@openembedded.org> | 2007-09-19 11:32:35 +0000 |
|---|---|---|
| committer | Koen Kooi <koen@openembedded.org> | 2007-09-19 11:32:35 +0000 |
| commit | b2b667e89381c5bee23b9a6e96ccd7f04a15fd1b (patch) | |
| tree | 320f60bb9ab4410501ef6bff7a9acc2d7f51e04e /packages/linux/linux-2.6.18/avr32-drop-GFP_COMP-for-DMA-memory-allocations.patch | |
| parent | 7006d4aac3bf1eef960d032965ae18f88c4acdfc (diff) | |
| parent | 85693efa33378405956ca83c7b24d45f5138d223 (diff) | |
propagate from branch 'org.openembedded.dev' (head 0ba4bbe5ebdf7f3598dd1890a61d14cd356eab54)
to branch 'org.openembedded.dev.avr32' (head d4fef411c5337e77b35acf5e2a06ffb56d059326)
Diffstat (limited to 'packages/linux/linux-2.6.18/avr32-drop-GFP_COMP-for-DMA-memory-allocations.patch')
| -rw-r--r-- | packages/linux/linux-2.6.18/avr32-drop-GFP_COMP-for-DMA-memory-allocations.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/packages/linux/linux-2.6.18/avr32-drop-GFP_COMP-for-DMA-memory-allocations.patch b/packages/linux/linux-2.6.18/avr32-drop-GFP_COMP-for-DMA-memory-allocations.patch new file mode 100644 index 0000000000..eea690268c --- /dev/null +++ b/packages/linux/linux-2.6.18/avr32-drop-GFP_COMP-for-DMA-memory-allocations.patch @@ -0,0 +1,27 @@ +Hack for incompatible __GFP_COMP flag making its way into the AVR32
+DMA consistent memory allocator.
+
+This is essentially the same patch as the one submitted by
+Marc Singer <elf@buici.com> for ARM.
+---
+ arch/avr32/mm/dma-coherent.c | 7 +++++++ + 1 file changed, 7 insertions(+) +
+Index: linux-2.6.18-avr32/arch/avr32/mm/dma-coherent.c +=================================================================== +--- linux-2.6.18-avr32.orig/arch/avr32/mm/dma-coherent.c 2006-09-11 18:06:00.000000000 +0200 ++++ linux-2.6.18-avr32/arch/avr32/mm/dma-coherent.c 2006-09-12 13:38:39.000000000 +0200 +@@ -41,6 +41,13 @@ static struct page *__dma_alloc(struct d + 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); + |
