Index: drm_vm.c =================================================================== RCS file: /cvs/dri/drm/linux-core/drm_vm.c,v retrieving revision 1.49 diff -u -p -r1.49 drm_vm.c --- drm_vm.c 12 Jan 2005 16:07:49 -0000 1.49 +++ drm_vm.c 4 Mar 2005 19:03:31 -0000 @@ -639,9 +639,13 @@ int drm_mmap(struct file *filp, struct v vma->vm_flags |= VM_IO; /* not in core dump */ } #if defined(__ia64__) - if (map->type != _DRM_AGP) + if (efi_range_is_wc(vma->vm_start, vma->vm_end - + vma->vm_start) && (map->type != _DRM_AGP)) vma->vm_page_prot = - pgprot_writecombine(vma->vm_page_prot); + pgprot_writecombine(vma->vm_page_prot); + else + vma->vm_page_prot = + pgprot_noncached(vma->vm_page_prot); #endif offset = dev->driver->get_reg_ofs(dev); #ifdef __sparc__