Subject: Re: [PATCH] Use 1TB segments

From: Jon Tollefson <[email-masked]>
Date: Mon, 06 Aug 2007 17:23:57 -0500

Paul Mackerras wrote:
> diff --git a/arch/powerpc/mm/slb.c b/arch/powerpc/mm/slb.c
>   
A couple of hunks fail in this file when applying to the current tree.

...
> diff --git a/include/asm-powerpc/mmu-hash64.h b/include/asm-powerpc/mmu-hash64.h
> index 695962f..053f86b 100644
> --- a/include/asm-powerpc/mmu-hash64.h
> +++ b/include/asm-powerpc/mmu-hash64.h
> @@ -47,6 +47,8 @@ extern char initial_stab[];
>
>  /* Bits in the SLB VSID word */
>  #define SLB_VSID_SHIFT		12
> +#define SLB_VSID_SHIFT_1T	24
> +#define SLB_VSID_SSIZE_SHIFT	62
>  #define SLB_VSID_B		ASM_CONST(0xc000000000000000)
>  #define SLB_VSID_B_256M		ASM_CONST(0x0000000000000000)
>  #define SLB_VSID_B_1T		ASM_CONST(0x4000000000000000)
> @@ -66,6 +68,7 @@ extern char initial_stab[];
>  #define SLB_VSID_USER		(SLB_VSID_KP|SLB_VSID_KS|SLB_VSID_C)
>
>  #define SLBIE_C			(0x08000000)
> +#define SLBIE_SSIZE_SHIFT	25
>
>  /*
>   * Hash table
> @@ -77,7 +80,7 @@ extern char initial_stab[];
>  #define HPTE_V_AVPN_SHIFT	7
>  #define HPTE_V_AVPN		ASM_CONST(0x3fffffffffffff80)
>  #define HPTE_V_AVPN_VAL(x)	(((x) & HPTE_V_AVPN) >> HPTE_V_AVPN_SHIFT)
> -#define HPTE_V_COMPARE(x,y)	(!(((x) ^ (y)) & HPTE_V_AVPN))
> +#define HPTE_V_COMPARE(x,y)	(!(((x) ^ (y)) & 0xffffffffffffff80))
>  #define HPTE_V_BOLTED		ASM_CONST(0x0000000000000010)
>  #define HPTE_V_LOCK		ASM_CONST(0x0000000000000008)
>  #define HPTE_V_LARGE		ASM_CONST(0x0000000000000004)
> @@ -164,16 +167,25 @@ struct mmu_psize_def
>  #define MMU_SEGSIZE_256M	0
>  #define MMU_SEGSIZE_1T		1
>
> +/*
> + * Supported segment sizes
> + */
> +#define MMU_SEGSIZE_256M	0
> +#define MMU_SEGSIZE_1T		1
>   
It looks like this is repeating the definitions just above it.

Jon