drm: Fix broken use of _PAGE_NO_CACHE on powerpc
Subsystems (2)
PATCH 1/1 drm: Fix broken use of _PAGE_NO_CACHE on powerpc
That constant isn't meant to be used outside of arch mm code
Signed-off-by Benjamin Herrenschmidt <[email protected]>
--- drivers/gpu/drm/drm_memory.c | 2 +- drivers/gpu/drm/drm_scatter.c | 2 +- drivers/gpu/drm/drm_vm.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-)
drivers/gpu/drm/drm_memory.c +1 -1
@@ -44,7 +44,7 @@# include <asm/agp.h> #else # ifdef __powerpc__ -# define PAGE_AGP __pgprot(_PAGE_KERNEL | _PAGE_NO_CACHE) +# define PAGE_AGP pgprot_noncached_wc(PAGE_KERNEL)# else # define PAGE_AGP PAGE_KERNEL# endif
drivers/gpu/drm/drm_scatter.c +1 -1
@@ -41,7 +41,7 @@static inline void *drm_vmalloc_dma (unsigned long size) {#if defined(__powerpc__) && defined(CONFIG_NOT_COHERENT_CACHE ) -return __vmalloc (size,GFP_KERNEL ,PAGE_KERNEL | _PAGE_NO_CACHE); +return __vmalloc (size,GFP_KERNEL ,pgprot_noncached_wc (PAGE_KERNEL ));#else return vmalloc_32 (size);#endif
drivers/gpu/drm/drm_vm.c +2 -2
@@ -80,7 +80,7 @@ static pgprot_t drm_dma_prot(uint32_t map_type, struct vm_area_struct *vma)pgprot_t tmp =vm_get_page_prot (vma->vm_flags);#if defined(__powerpc__) && defined(CONFIG_NOT_COHERENT_CACHE ) - tmp |= _PAGE_NO_CACHE; + tmp =pgprot_noncached_wc (tmp);#endif return tmp; }
@@ -593,7 +593,7 @@ static int drm_mmap_locked(struct file *filp, struct vm_area_struct *vma)* pages and mappings in fault() */ #if defined(__powerpc__) -pgprot_val (vma->vm_page_prot) |= _PAGE_NO_CACHE; + vma->vm_page_prot =pgprot_noncached (vma->vm_page_prot);#endif vma->vm_ops = &drm_vm_ops;break ;
_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel
Daniel Vetter
AppliedQuoted 3 lines · Benjamin Herrenschmidt
That constant isn't meant to be used outside of arch mm code
Signed-off-by Benjamin Herrenschmidt <[email protected]>
Applied to drm-misc, thanks.
-Daniel
Quoted 60 lines
--- drivers/gpu/drm/drm_memory.c | 2 +- drivers/gpu/drm/drm_scatter.c | 2 +- drivers/gpu/drm/drm_vm.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-)drivers/gpu/drm/drm_memory.c +1
-1@@ -44,7 +44,7 @@# include <asm/agp.h> #else # ifdef __powerpc__ -# define PAGE_AGP __pgprot(_PAGE_KERNEL | _PAGE_NO_CACHE) +# define PAGE_AGP pgprot_noncached_wc(PAGE_KERNEL)# else # define PAGE_AGP PAGE_KERNEL# endif drivers/gpu/drm/drm_scatter.c +1
-1@@ -41,7 +41,7 @@static inline void *drm_vmalloc_dma (unsigned long size) {#if defined(__powerpc__) && defined(CONFIG_NOT_COHERENT_CACHE ) -return __vmalloc (size,GFP_KERNEL ,PAGE_KERNEL | _PAGE_NO_CACHE); +return __vmalloc (size,GFP_KERNEL ,pgprot_noncached_wc (PAGE_KERNEL ));#else return vmalloc_32 (size);#endif drivers/gpu/drm/drm_vm.c +2
-2@@ -80,7 +80,7 @@ static pgprot_t drm_dma_prot(uint32_t map_type, struct vm_area_struct *vma)pgprot_t tmp =vm_get_page_prot (vma->vm_flags);#if defined(__powerpc__) && defined(CONFIG_NOT_COHERENT_CACHE ) - tmp |= _PAGE_NO_CACHE; + tmp =pgprot_noncached_wc (tmp);#endif return tmp; }@@ -593,7 +593,7 @@ static int drm_mmap_locked(struct file *filp, struct vm_area_struct *vma)* pages and mappings in fault() */ #if defined(__powerpc__) -pgprot_val (vma->vm_page_prot) |= _PAGE_NO_CACHE; + vma->vm_page_prot =pgprot_noncached (vma->vm_page_prot);#endif vma->vm_ops = &drm_vm_ops;break ;_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel
Signature · 7 lines
Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ dri-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/dri-devel