[PATCH] Consolidate mm_context_t definition in mmu.h
Christoph Hellwig
hch at lst.de
Wed Jul 11 20:33:08 EST 2007
On Tue, Jul 10, 2007 at 10:01:49AM -0500, Josh Boyer wrote:
> +
> +#ifdef CONFIG_PPC64
> +typedef unsigned long mm_context_id_t;
> +
> +typedef struct {
> + mm_context_id_t id;
> + u16 user_psize; /* page size index */
> +
> +#ifdef CONFIG_PPC_MM_SLICES
> + u64 low_slices_psize; /* SLB page size encodings */
> + u64 high_slices_psize; /* 4 bits per slice for now */
> +#else
> + u16 sllp; /* SLB page size encoding */
> +#endif
> + unsigned long vdso_base;
> +} mm_context_t;
> +
> +#else /* !CONFIG_PPC64 */
> +
> +typedef struct {
> + unsigned long id;
> + unsigned long vdso_base;
> +} mm_context_t;
mm_context_id_t isn't actually used anywhere but in te mm_context_t
definition. So if you kill it you have two common fields and a bunch
of additional ones for PPC64 leading to a defintion like:
typedef struct {
unsigned long id;
#ifdef CONFIG_PPC64
u16 user_psize; /* page size index */
#ifdef CONFIG_PPC_MM_SLICES
u64 low_slices_psize; /* SLB page size encodings */
u64 high_slices_psize; /* 4 bits per slice for now */
#else
u16 sllp; /* SLB page size encoding */
#endif
#endif
unsigned long vdso_base;
} mm_context_t;
More information about the Linuxppc-dev
mailing list