Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Jun 2001 16:31:34 -0400 (EDT)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        freebsd-alpha@FreeBSD.org, mjacob@feral.com
Subject:   Re: More followup...
Message-ID:  <15143.52646.572807.462036@grasshopper.cs.duke.edu>
In-Reply-To: <XFMail.010613125433.jhb@FreeBSD.org>
References:  <15143.49115.393545.131197@grasshopper.cs.duke.edu> <XFMail.010613125433.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

John Baldwin writes:
 > 
 > I don't think it's general pmap corruption, but I could be wrong.  Almost
 > everything is back under Giant that wasn't before.  My current vm.patch moves
 > pagedaemon and vmdaemon back under Giant, so the only thing that possibly
 > should move back under Giant is the stuff in trap() that was under Giant
 > before.  I'll look at this in a bit.  The thing is that if we still have these
 > problems when all of vm is under Giant, then it's not a vm_mtx problem. :(

All I know is that I never used to get wierdo vm panics like the ones I've
been getting since the vm_mtx went in... Circumstantial evidence, I
realize.  But its pretty compelling.

Anyway, here's a panic I just got (linking a kernel on ffs, nothing
else happening)

login: panic: vm_page_remove(): page not found in hash
cpuid = 0; panic
Stopped at      Debugger+0x34:  zapnot  v0,#0xf,a0      <v0=0x0,a0=0x6>
db> tr
Debugger() at Debugger+0x34
panic() at panic+0x178
vm_page_remove() at vm_page_remove+0x134
vm_page_free_toq() at vm_page_free_toq+0x100
vm_page_alloc() at vm_page_alloc+0x270
vm_fault1() at vm_fault1+0x648
vm_fault() at vm_fault+0x204
trap() at trap+0xe20
XentMM() at XentMM+0x2c
--- memory management fault (from ipl 0) ---
--- user mode ---

db> show pcpu
cpuid     = 0
ipis      = 0
next ASN  = 134
curproc   = 0xfffffe00067dda00: pid 626 "ld"
curpcb    = 0x3b2a000
fpcurproc = 0xfffffe00067dda00: pid 626 "ld"
idleproc  = 0xfffffe000589f600: pid 10 "idle: cpu0"
spin locks held:
db> show locks
exclusive (sleep mutex) vm (0xfffffc00007be3a8) locked @ ../../vm/vm_fault.c:301
exclusive (sleep mutex) Giant (0xfffffc00007bf040) locked @ ../../vm/vm_fault.c:213
db> 


This is a GENERIC kernel, minus IPV6, minus SOFTUPDATES, plus
BREAK_TO_DEBUGGER.  To add insult to injury, I can't even get a
crashdump:

db> c     

syncing disks... panic: mutex vm owned at ../../kern/vfs_bio.c:2990
cpuid = 0; panic
Stopped at      Debugger+0x34:  zapnot  v0,#0xf,a0      <v0=0x0,a0=0x6>
db> c
Uptime: 23m50s

dumping to dev ad0b, offset 2888928
dump ata0: resetting devices .. panic: witness_restore: lock (sleep mutex) Giant not locked
cpuid = 0; panic
Stopped at      Debugger+0x34:  zapnot  v0,#0xf,a0      <v0=0x0,a0=0x6>
db> c
Uptime: 23m52s
Dump already in progress, bailing...
Automatic reboot in 15 seconds - press a key on the console to abort
Rebooting...


Maybe witness could check for panicstr & back off if it is set?

Drew

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15143.52646.572807.462036>