[PATCH 1/3] arm64: move the PTE_VALID to pgtable-hwdef.h
Will Deacon
will.deacon at arm.com
Thu Jun 2 11:16:09 PDT 2016
On Mon, May 30, 2016 at 10:14:26AM +0800, Huang Shijie wrote:
> The PTE_VALID is used to check whether the page descriptor is valid.
> It's not a software defined PTE bits, such as PTE_WRITE/PTE_DIRTY.
>
> So move it to the proper header file: pgtable-hwdef.h.
>
> Signed-off-by: Huang Shijie <shijie.huang at arm.com>
> ---
> arch/arm64/include/asm/pgtable-hwdef.h | 1 +
> arch/arm64/include/asm/pgtable-prot.h | 1 -
> 2 files changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/include/asm/pgtable-hwdef.h b/arch/arm64/include/asm/pgtable-hwdef.h
> index 2813748..eeb3269 100644
> --- a/arch/arm64/include/asm/pgtable-hwdef.h
> +++ b/arch/arm64/include/asm/pgtable-hwdef.h
> @@ -154,6 +154,7 @@
> #define PTE_TYPE_MASK (_AT(pteval_t, 3) << 0)
> #define PTE_TYPE_FAULT (_AT(pteval_t, 0) << 0)
> #define PTE_TYPE_PAGE (_AT(pteval_t, 3) << 0)
> +#define PTE_VALID (_AT(pteval_t, 1) << 0)
> #define PTE_TABLE_BIT (_AT(pteval_t, 1) << 1)
> #define PTE_USER (_AT(pteval_t, 1) << 6) /* AP[1] */
> #define PTE_RDONLY (_AT(pteval_t, 1) << 7) /* AP[2] */
> diff --git a/arch/arm64/include/asm/pgtable-prot.h b/arch/arm64/include/asm/pgtable-prot.h
> index 29fcb33..5ac71f4 100644
> --- a/arch/arm64/include/asm/pgtable-prot.h
> +++ b/arch/arm64/include/asm/pgtable-prot.h
> @@ -24,7 +24,6 @@
> /*
> * Software defined PTE bits definition.
> */
> -#define PTE_VALID (_AT(pteval_t, 1) << 0)
> #define PTE_WRITE (PTE_DBM) /* same as DBM (51) */
So how would you define PTE_WRITE? It's a software bit in v8.0 and a
hardware bit in v8.1 ;)
I don't mind shuffling the #defines about, I just think the boundaries
are somewhat blurred and maybe it's a mistake to put software bits and
hardware bits in separate headers.
Will
More information about the linux-arm-kernel
mailing list