Re: [PATCH 1/1] MM: virtual address debug

From: Ingo Molnar
Date: Wed Jun 18 2008 - 10:00:34 EST



* Ingo Molnar <mingo@xxxxxxx> wrote:

>
> * Jiri Slaby <jirislaby@xxxxxxxxx> wrote:
>
> > Add some (configurable) expensive sanity checking to catch wrong address
> > translations on x86.
> >
> > - create linux/mmdebug.h file to be able include this file in
> > asm headers to not get unsolvable loops in header files
> > - __phys_addr on x86_32 became a function in ioremap.c since
> > PAGE_OFFSET, is_vmalloc_addr and VMALLOC_* non-constasts are undefined
> > if declared in page_32.h
> > - add __phys_addr_const for initializing doublefault_tss.__cr3
>
> applied, thanks Jiri. I have created a new tip/x86/mm-debug topic for
> this because the patch touches mm/vmalloc.c and other MM bits.

-tip testing triggered an early boot crash and i have bisected it down
to your patch. The crash:

No NUMA configuration found
Faking a node at 0000000000000000-000000003fff0000
Entering add_active_range(0, 0, 159) 0 entries of 25600 used
Entering add_active_range(0, 256, 262128) 1 entries of 25600 used
Bootmem setup node 0 0000000000000000-000000003fff0000
NODE_DATA [000000000000a000 - 000000000003dfff]
PANIC: early exception 06 rip 10:ffffffff80ba7531 error 0 cr2 f06f53
Pid: 0, comm: swapper Not tainted 2.6.26-rc6 #7709

Call Trace:
[<ffffffff80b9c196>] early_idt_handler+0x56/0x6a
[<ffffffff80ba7531>] setup_node_bootmem+0x12a/0x2d4
[<ffffffff80ba7505>] setup_node_bootmem+0xfe/0x2d4
[<ffffffff80b9dd73>] setup_arch+0x2a2/0x3e7
[<ffffffff8024e858>] clockevents_register_notifier+0x2d/0x31
[<ffffffff80b9cb5d>] start_kernel+0x8d/0x30a
[<ffffffff80b9f87d>] reserve_early+0x16/0xad
[<ffffffff80b9c35f>] x86_64_start_kernel+0x16d/0x174

RIP 0x10

the config is at:

http://redhat.com/~mingo/misc/config-Wed_Jun_18_14_51_18_CEST_2008.bad

Ingo
--
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/