All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] low discontig highmem_start_page
@ 2004-11-15 20:37 Hugh Dickins
  2004-11-15 20:45 ` Martin J. Bligh
  0 siblings, 1 reply; 3+ messages in thread
From: Hugh Dickins @ 2004-11-15 20:37 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Martin J. Bligh, linux-kernel

In the case of i386 CONFIG_DISCONTIGMEM CONFIG_HIGHMEM without highmem,
highmem_start_page was wrongly initialized (from a NULL zone_mem_map),
causing __change_page_attr to BUG on boot.

Signed-off-by: Hugh Dickins <hugh@veritas.com>

--- 2.6.10-rc2/arch/i386/mm/discontig.c	2004-11-15 16:20:26.000000000 +0000
+++ linux/arch/i386/mm/discontig.c	2004-11-15 17:01:26.000000000 +0000
@@ -468,7 +468,7 @@ void __init set_max_mapnr_init(void)
 	if (high0->spanned_pages > 0)
 	      	highmem_start_page = high0->zone_mem_map;
 	else
-		highmem_start_page = pfn_to_page(max_low_pfn+1); 
+		highmem_start_page = pfn_to_page(max_low_pfn - 1) + 1; 
 	num_physpages = highend_pfn;
 #else
 	num_physpages = max_low_pfn;


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] low discontig highmem_start_page
  2004-11-15 20:37 [PATCH] low discontig highmem_start_page Hugh Dickins
@ 2004-11-15 20:45 ` Martin J. Bligh
  2004-11-15 21:04   ` Hugh Dickins
  0 siblings, 1 reply; 3+ messages in thread
From: Martin J. Bligh @ 2004-11-15 20:45 UTC (permalink / raw)
  To: Hugh Dickins, Andrew Morton; +Cc: linux-kernel

--On Monday, November 15, 2004 20:37:28 +0000 Hugh Dickins <hugh@veritas.com> wrote:

> In the case of i386 CONFIG_DISCONTIGMEM CONFIG_HIGHMEM without highmem,
> highmem_start_page was wrongly initialized (from a NULL zone_mem_map),
> causing __change_page_attr to BUG on boot.

Thanks, I'm not suprised that was broken - I never test without highmem ;-)

M.
 
> Signed-off-by: Hugh Dickins <hugh@veritas.com>
> 
> --- 2.6.10-rc2/arch/i386/mm/discontig.c	2004-11-15 16:20:26.000000000 +0000
> +++ linux/arch/i386/mm/discontig.c	2004-11-15 17:01:26.000000000 +0000
> @@ -468,7 +468,7 @@ void __init set_max_mapnr_init(void)
>  	if (high0->spanned_pages > 0)
>  	      	highmem_start_page = high0->zone_mem_map;
>  	else
> -		highmem_start_page = pfn_to_page(max_low_pfn+1); 
> +		highmem_start_page = pfn_to_page(max_low_pfn - 1) + 1; 
>  	num_physpages = highend_pfn;
>  #else
>  	num_physpages = max_low_pfn;
> 
> 



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] low discontig highmem_start_page
  2004-11-15 20:45 ` Martin J. Bligh
@ 2004-11-15 21:04   ` Hugh Dickins
  0 siblings, 0 replies; 3+ messages in thread
From: Hugh Dickins @ 2004-11-15 21:04 UTC (permalink / raw)
  To: Martin J. Bligh; +Cc: Andrew Morton, linux-kernel

On Mon, 15 Nov 2004, Martin J. Bligh wrote:
> --On Monday, November 15, 2004 20:37:28 +0000 Hugh Dickins <hugh@veritas.com> wrote:
> 
> > In the case of i386 CONFIG_DISCONTIGMEM CONFIG_HIGHMEM without highmem,
> > highmem_start_page was wrongly initialized (from a NULL zone_mem_map),
> > causing __change_page_attr to BUG on boot.
> 
> Thanks, I'm not suprised that was broken - I never test without highmem ;-)

Yes, I imagine it's a pretty odd combination: the tmpfs symlink mpol
screwup shows I wasn't testing NUMA enough, and I often lower my mem
with mem= to increase the pressure, so hit this.

Hugh


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-11-15 21:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-11-15 20:37 [PATCH] low discontig highmem_start_page Hugh Dickins
2004-11-15 20:45 ` Martin J. Bligh
2004-11-15 21:04   ` Hugh Dickins

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.