Messages in this thread | | | Date | Mon, 10 Jan 2005 19:26:55 -0800 | From | William Lee Irwin III <> | Subject | Re: 2.6.10-mm2: panic when munmap()ping the stack |
| |
On Mon, Jan 10, 2005 at 04:01:58PM -0800, Jeremy Fitzhardinge wrote: > This program causes an instant panic for me: > #include <sys/mman.h> > int main(int argc, char **argv) > { > munmap((char *)(((unsigned long)&argc) & ~4095), 4096*2); > > return 0; > } > I'm not sure if setting the signal handler is necessary or not. My > environment is largeish, so the stack is 2 pages; you might need to > adjust it. > There's a message on the console saying something like "panic: bad pgd: > 0x00000e13". It was a bit too quick to see. > Plain 2.6.10 segfaults as expected; I haven't tried -mm1 to see what it > does. > Config attached.
$ grep -nr pgd_ERROR . ./arch/i386/kernel/vm86.c:151: pgd_ERROR(*pgd); ./arch/arm/mm/fault-armv.c:67: pgd_ERROR(*pgd); ./arch/sh/mm/init.c:94: pgd_ERROR(*pgd); ./arch/m68k/atari/stram.c:679: pgd_ERROR(*dir); ./arch/ppc64/mm/init.c:327: pgd_ERROR(*dir); ./arch/parisc/kernel/pci-dma.c:206: pgd_ERROR(*dir); ./arch/parisc/mm/kmap.c:116: pgd_ERROR(*dir); ./mm/swapfile.c:530: pgd_ERROR(*pgd); ./mm/msync.c:106: pgd_ERROR(*pgd); ./mm/memory.c:162: pgd_ERROR(*pgd); ./mm/memory.c:446: pgd_ERROR(*src_pgd); ./mm/memory.c:580: pgd_ERROR(*pgd); ./mm/vmalloc.c:95: pgd_ERROR(*pgd); ./mm/mprotect.c:100: pgd_ERROR(*pgd); (includes etc.)
Anyway, it's blatant pagetable corruption. Does binary searching -mm2 reveal anything?
-- wli - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |