[PATCH] low discontig highmem_start_page

From: Hugh Dickins
Date: Mon Nov 15 2004 - 15:43:14 EST


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@xxxxxxxxxxx>

--- 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;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/