Re: [discuss] Re: [1/3] Add 4GB DMA32 zone

Andi Kleen
2005-09-13T11:32:30Z

Hmm ok description is not very enlightening. 4 zones should indeed
still fit into 2 bits.

Kamezawa-san, can you please explain why exactly you did that change?

Thanks,
-Andi

On Tuesday 13 September 2005 12:15, Andrew Morton wrote:
> Andi Kleen <ak@suse.de> wrote:
> > Andrew do you still have the patch with
> > the description? It must have been between 2.6.13mm1 and 2.6.13mm2.
>
> From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
>
> Because 2.6.13-mm2 adds new zone DMA32, ZONES_SHIFT becomes 3.
> So, flags bits reserved for (SECTION | NODE | ZONE) should be increase.
>
> ZONE_SHIFT is increased, FLAGS_RESERVED should be.
>
> Signed-off-by Kamezawa Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
> Cc: Andi Kleen <ak@muc.de>
> Signed-off-by: Andrew Morton <akpm@osdl.org>
> ---
>
> include/linux/mmzone.h | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff -puN include/linux/mmzone.h~x86_64-dma32-fix include/linux/mmzone.h
> --- 25/include/linux/mmzone.h~x86_64-dma32-fix Fri Sep 9 17:13:41 2005
> +++ 25-akpm/include/linux/mmzone.h Fri Sep 9 17:14:13 2005
> @@ -431,9 +431,10 @@ extern struct pglist_data contig_page_da
> #if BITS_PER_LONG == 32 || defined(ARCH_HAS_ATOMIC_UNSIGNED)
> /*
> * with 32 bit page->flags field, we reserve 8 bits for node/zone info.
> - * there are 3 zones (2 bits) and this leaves 8-2=6 bits for nodes.
> + * there are 4 zones (3 bits) and this leaves 8-2=6 bits for nodes.
> + * +6bits for sections if CONFIG_SPARSEMEM
> */
> -#define FLAGS_RESERVED 8
> +#define FLAGS_RESERVED 9
>
> #elif BITS_PER_LONG == 64
> /*
> _