[PATCH] Generalize hpte_decode()
Jon Tollefson
kniht at linux.vnet.ibm.com
Fri May 11 08:33:01 EST 2007
Paul Mackerras wrote:
> This adds the necessary support to hpte_decode() to handle 1TB
> segments and 16GB pages, and also removes an uninitialized value
> warning on avpn.
>
> We don't have any code to generate HPTEs for 1TB segments or 16GB
> pages yet, so this is mostly for completeness, and also to fix the
> warning.
>
> Signed-off-by: Paul Mackerras <paulus at samba.org>
> ---
>
> diff --git a/arch/powerpc/mm/hash_native_64.c b/arch/powerpc/mm/hash_native_64.c
> index 7b7fe2d..7d722ee 100644
> --- a/arch/powerpc/mm/hash_native_64.c
> +++ b/arch/powerpc/mm/hash_native_64.c
> @@ -376,31 +376,28 @@ static void hpte_decode(hpte_t *hpte, unsigned long slot,
> }
> }
>
> - /*
> - * FIXME, the code below works for 16M, 64K, and 4K pages as these
> - * fall under the p<=23 rules for calculating the virtual address.
> - * In the case of 16M pages, an extra bit is stolen from the AVPN
> - * field to achieve the requisite 24 bits.
> - *
> - * Does not work for 16G pages or 1 TB segments.
> - */
> + /* This works for all page sizes, and for 256M and 1T segments */
> shift = mmu_psize_defs[size].shift;
> - if (mmu_psize_defs[size].avpnm)
> - avpnm_bits = __ilog2_u64(mmu_psize_defs[size].avpnm) + 1;
>
The variable avpnm_bits doesn't appear to be used anymore. Does it make
sense to remove it's declaration?
Jon
More information about the Linuxppc-dev
mailing list