Re: [PATCH 12/15] mm, dax, gpu: convert vm_insert_mixed to __pfn_t, introduce _PAGE_DEVMAP
From: Geert Uytterhoeven
Date: Wed Sep 23 2015 - 09:47:30 EST
Hi Dan,
On Wed, Sep 23, 2015 at 6:42 AM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> Convert the raw unsigned long 'pfn' argument to __pfn_t for the purpose of
> evaluating the PFN_MAP and PFN_DEV flags. When both are set the it
s/the it/it/
> triggers _PAGE_DEVMAP to be set in the resulting pte. This flag will
> later be used in the get_user_pages() path to pin the page mapping,
> dynamically allocated by devm_memremap_pages(), until all the resulting
> pages are released.
>
> There are no functional changes to the gpu drivers as a result of this
> conversion.
>
> This uncovered several architectures with no local definition for
> pfn_pte(), in response __pfn_t_pte() is only defined when an arch
> opts-in by "#define pfn_pte pfn_pte".
>
> Cc: Dave Hansen <dave@xxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Cc: David Airlie <airlied@xxxxxxxx>
> Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
> diff --git a/arch/m68k/include/asm/page_no.h b/arch/m68k/include/asm/page_no.h
> index ef209169579a..930a42f6db44 100644
> --- a/arch/m68k/include/asm/page_no.h
> +++ b/arch/m68k/include/asm/page_no.h
> @@ -34,6 +34,7 @@ extern unsigned long memory_end;
>
> #define virt_addr_valid(kaddr) (((void *)(kaddr) >= (void *)PAGE_OFFSET) && \
> ((void *)(kaddr) < (void *)memory_end))
> +#define __pfn_to_phys(pfn) PFN_PHYS(pfn)
The above change doesn't match the patch description?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/