gma500: Fix shmem mapping
authorAlan Cox <alan@linux.intel.com>
Tue, 24 Jan 2012 16:57:42 +0000 (16:57 +0000)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 24 Jan 2012 18:25:03 +0000 (10:25 -0800)
GMA500 did it the old way and it's been on the TODO list to fix.
Current kernels now blow up if we use the old way so we'd better
do the work!

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/gpu/drm/gma500/gtt.c

index e770bd190a5c8a2efda446339805869944528a81..5d5330f667f14031512c022e12ed3d8eb61bc530 100644 (file)
@@ -20,6 +20,7 @@
  */
 
 #include <drm/drmP.h>
+#include <linux/shmem_fs.h>
 #include "psb_drv.h"
 
 
@@ -203,9 +204,7 @@ static int psb_gtt_attach_pages(struct gtt_range *gt)
        gt->npage = pages;
 
        for (i = 0; i < pages; i++) {
-               /* FIXME: needs updating as per mail from Hugh Dickins */
-               p = read_cache_page_gfp(mapping, i,
-                                       __GFP_COLD | GFP_KERNEL);
+               p = shmem_read_mapping_page(mapping, i);
                if (IS_ERR(p))
                        goto err;
                gt->pages[i] = p;