[PATCH v2] io-mapping.h: s/PAGE_KERNEL_IO/PAGE_KERNEL/

Daniel Vetter daniel at ffwll.ch
Tue Aug 23 16:32:57 UTC 2016


On Tue, Aug 23, 2016 at 04:50:24PM +0100, Chris Wilson wrote:
> PAGE_KERNEL_IO is an x86-ism. Though it is used to define the pgprot_t
> used for the iomapped region, it itself is just PAGE_KERNEL. On all
> other arches, PAGE_KERNEL_IO is undefined so in a general header we must
> refrain from using it.
> 
> v2: include pgtable for pgprot_combine()
> 
> Reported-by: Stephen Rothwell <sfr at canb.auug.org.au>
> Fixes: cafaf14a5d8f ("io-mapping: Always create a struct to hold metadata about the io-mapping")
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Cc: linux-mm at kvack.org

This one seems to have worked out, applied to dinq.

Thanks, Daniel

> ---
>  include/linux/io-mapping.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/io-mapping.h b/include/linux/io-mapping.h
> index b4c4b5c4216d..a87dd7fffc0a 100644
> --- a/include/linux/io-mapping.h
> +++ b/include/linux/io-mapping.h
> @@ -112,7 +112,7 @@ io_mapping_unmap(void __iomem *vaddr)
>  #else
>  
>  #include <linux/uaccess.h>
> -#include <asm/pgtable_types.h>
> +#include <asm/pgtable.h>
>  
>  /* Create the io_mapping object*/
>  static inline struct io_mapping *
> @@ -123,7 +123,7 @@ io_mapping_init_wc(struct io_mapping *iomap,
>  	iomap->base = base;
>  	iomap->size = size;
>  	iomap->iomem = ioremap_wc(base, size);
> -	iomap->prot = pgprot_writecombine(PAGE_KERNEL_IO);
> +	iomap->prot = pgprot_writecombine(PAGE_KERNEL);
>  
>  	return iomap;
>  }
> -- 
> 2.9.3
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list