]> err.no Git - linux-2.6/blobdiff - arch/x86/mm/init_32.c
[PACKET]: Fix sparse warnings in af_packet.c
[linux-2.6] / arch / x86 / mm / init_32.c
index c7d19471261dc7050244bd3f0f0883bdac8c3ccb..3c76d194fd2ccef4df106a2f47fe9b02a3057264 100644 (file)
@@ -321,8 +321,13 @@ extern void set_highmem_pages_init(int);
 static void __init set_highmem_pages_init(int bad_ppro)
 {
        int pfn;
-       for (pfn = highstart_pfn; pfn < highend_pfn; pfn++)
-               add_one_highpage_init(pfn_to_page(pfn), pfn, bad_ppro);
+       for (pfn = highstart_pfn; pfn < highend_pfn; pfn++) {
+               /*
+                * Holes under sparsemem might not have no mem_map[]:
+                */
+               if (pfn_valid(pfn))
+                       add_one_highpage_init(pfn_to_page(pfn), pfn, bad_ppro);
+       }
        totalram_pages += totalhigh_pages;
 }
 #endif /* CONFIG_FLATMEM */