Date: Tue, 26 Aug 2003 15:29:36 +0200 (CEST) From: Lukas Ertl <l.ertl@univie.ac.at> To: Mark Tinguely <tinguely@casselton.net> Cc: current@freebsd.org Subject: Re: Another pmap related panic Message-ID: <20030826152745.X29045@pcle2.cc.univie.ac.at> In-Reply-To: <200308261229.h7QCTdwN062563@casselton.net> References: <200308261229.h7QCTdwN062563@casselton.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 26 Aug 2003, Mark Tinguely wrote: > It could be a memory problem. Could you also please apply an assert > to pmap_enter_quick() + INVARIANTS. This is a quick test that checks > all the other paths that call pmap_enter_quick() are locked out so > that two processors cannot be using the PADDR1/PMAP1 at the same time. > > --- pmap.c.orig Mon Aug 25 08:46:03 2003 > +++ pmap.c Tue Aug 26 07:16:06 2003 > @@ -2056,6 +2056,7 @@ pmap_enter_quick(pmap_t pmap, vm_offset_ > pt_entry_t *pte; > vm_paddr_t pa; > > + mtx_assert(&vm_page_queue_mtx, MA_OWNED); > /* > * In the case that a page table page is not > * resident, we are creating it here. This panics the machine at boot time: panic: mutex vm page queue mutex not owned at /usr/src/sys/i386/i386/pmap.c:2012 cpuid = 0; lapic.id = 00000000 Debugger("panic") Stopped at Debugger+0x55: xchgl %ebx,in_Debugger.0 db> where Debugger(c06809e2,0,c0680099,dff17880,100) at Debugger+0x55 panic(c0680099,c06910df,c0695c11,7dc,c0c35378) at panic+0x15f _mtx_assert(c06e9800,1,c0695c11,7dc,c1a45600) at _mtx_assert+0xec pmap_enter_quick(c25d60b0,8048000,c1a45600,0,70000) at pmap_enter_quick+0x33 vm_map_pmap_enter(c25d6000,8048000,c0c35378,0,0) at vm_map_pmap_enter+0x26d vm_map_insert(c25d6000,c0c35378,0,0,8048000) at vm_map_insert+0x2ef elf32_map_insert(c25d6000,c0c35378,0,0,8048000) at elf32_map_insert+0x2ea elf32_load_section(c25c7d3c,c25d6000,c67b77fc,c0c35378,0) at elf32_load_section+0x12a exec_elf32_imgact(dff17b3c,0,c067e454,105,c06ddfe0) at exec_elf32_imgact+0x273 kern_execve(c25c8720,bfbffff2,bfbfffe4,0,0) at kern_execve+0x38c execve(c25c8720,dff17cf0,0,0,dff17cd8) at execve+0x30 start_init(0,dff17d48,c067e5ac,314,0) at start_init+0x43e fork_exit(c04cfbd0,0,dff17d48) at fork_exit+0xcf fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xdff17d7c, ebp = 0 --- regards, le -- Lukas Ertl eMail: l.ertl@univie.ac.at UNIX Systemadministrator Tel.: (+43 1) 4277-14073 Vienna University Computer Center Fax.: (+43 1) 4277-9140 University of Vienna http://mailbox.univie.ac.at/~le/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030826152745.X29045>