Skip to contentSkip to conversation

Disable useless bootmem warning

PATCH In review Andi Kleen 2 participants 3 messages Feb 16, 2004 Memory management

lore
Share & tools
lore

Andi Kleen

author
#0 lore raw

PATCH 1/1 Disable useless bootmem warning

This bootmem warning has been annoying me forever:

hm, page 000f5000 reserved twice.
hm, page 000f6000 reserved twice.
hm, page 000f1000 reserved twice.
hm, page 000f2000 reserved twice.

It happens because the i386/x86-64 boot code prereserves the mptable and then later bootmem tries to reserve it again because it's marked reserved in the e820 map.

I've never seen a bug uncovered by this warning too. I considered to disable it by passing a special array of "ok to reserve twice" regions, but on second thought it is just best to remove it completely. Reserving things twice is not usually an error.

This patch does this.

-Andi

mm/bootmem.c renamed from mm/bootmem.c-o +1 -2
@@ -91,8 +91,7 @@
 	if (end > bdata->node_low_pfn)
 		BUG();
 	for (i = sidx; i < eidx; i++)
-		if (test_and_set_bit(i, bdata->node_bootmem_map))
-			printk("hm, page %08lx reserved twice.\n", i*PAGE_SIZE);
+		set_bit(i, bdata->node_bootmem_map);
 }
 
 static void __init free_bootmem_core(bootmem_data_t *bdata, unsigned long addr, unsigned long size)
#1 lore raw
Quoted 4 lines

I've never seen a bug uncovered by this warning too. I considered to disable it by passing a special array of "ok to reserve twice" regions, but on second thought it is just best to remove it completely. Reserving things twice is not usually an error.

I have. When I was working to get sparc64 booting from alternate memory (other than 0x0 physical), those messages helped me a lot.

Maybe make it ifdef'd by CONFIG_DEBUG_BOOTMEM (which is an option that I know sparc and sparc64 already have).

Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
WatchGuard - http://www.watchguard.com/
author
#2 lore raw
Quoted 10 lines · On Mon, 16 Feb 2004 11:52:11 -0500 Ben Collins <[email protected]> wrote:
Quoted 4 lines

I've never seen a bug uncovered by this warning too. I considered to disable it by passing a special array of "ok to reserve twice" regions, but on second thought it is just best to remove it completely. Reserving things twice is not usually an error.

I have. When I was working to get sparc64 booting from alternate memory (other than 0x0 physical), those messages helped me a lot.

Maybe make it ifdef'd by CONFIG_DEBUG_BOOTMEM (which is an option that I know sparc and sparc64 already have).

That would be fine by me too. Anything, as long as I don't have to see them ;-)

Here's a new patch.

-Andi

mm/bootmem.c renamed from mm/bootmem.c-o +4 -1
diff -u linux-2.6.2-work32/mm/bootmem.c-o linux-2.6.2-work32/mm/bootmem.c
@@ -91,8 +91,11 @@
 	if (end > bdata->node_low_pfn)
 		BUG();
 	for (i = sidx; i < eidx; i++)
-		if (test_and_set_bit(i, bdata->node_bootmem_map))
+		if (test_and_set_bit(i, bdata->node_bootmem_map)) { 
+#ifdef CONFIG_DEBUG_BOOTMEM
 			printk("hm, page %08lx reserved twice.\n", i*PAGE_SIZE);
+#endif
+		}
 }
 
 static void __init free_bootmem_core(bootmem_data_t *bdata, unsigned long addr, unsigned long size)