[BUG/RFC/PATCH] drm: Fix for non-coherent DMA PowerPC

Benjamin Herrenschmidt benh at kernel.crashing.org
Mon Mar 3 09:56:09 EST 2008


Bah, I think I found the problem:

+static inline void *drm_vmalloc_dma(unsigned long size)
+{
+#if defined(__powerpc__) && defined(CONFIG_NOT_COHERENT_CACHE)
+       return __vmalloc(size, GFP_KERNEL | __GFP_HIGHMEM,
+                        PAGE_KERNEL | _PAGE_NO_CACHE);
+#else
+       return vmalloc_32(size);
+#endif
+}
+

Remove the GFP_HIGHMEM from the above. It looks like our cache
flushing isn't going to work for highmem, it would need some
kmap's for that.

Ben.







More information about the Linuxppc-dev mailing list