Date: Wed, 27 Jan 1999 14:11:57 +0100 (CET) From: MOLNAR Ingo <mingo@chiara.csoma.elte.hu> To: linux-kernel@vger.rutgers.edu, linux-smp@vger.rutgers.edu Subject: [patch] 'coredump crash' fixed it was a very subtle bug and has nothing to do with coredumps at all, but it's very rare and the invalid coredump ELF layout accidentally triggered the bug. with the attached patch applied i get: [root@moon /root]# ldd core not a dynamic executable [root@moon /root]# just as expected. The reason why we crash and why it made the kernel reboot in such a nasty way was that munmap() did just a tad more work than necessary and we zapped 0xc0000000's page table entry ... that is a pretty vital piece of 4M virtual space on Linux ;) (erm, just dont ask me how i managed to debug this ;) -- mingo, running a hopefully much safer kernel now ;) --- linux/mm/mmap.c.orig Wed Jan 27 14:09:31 1999 +++ linux/mm/mmap.c Wed Jan 27 14:06:09 1999 @@ -558,7 +558,7 @@ unsigned long start, unsigned long end) { unsigned long first = start & PGDIR_MASK; - unsigned long last = (end & PGDIR_MASK) + PGDIR_SIZE; + unsigned long last = ((end-1) & PGDIR_MASK) + PGDIR_SIZE; if (!prev) { prev = mm->mmap; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/