DragonFly BSD
DragonFly bugs List (threaded) for 2012-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

[DragonFlyBSD - Bug #2402] Showstopper panics for Release 3.2


From: Matthew Dillon via Redmine <bugtracker-admin@xxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 15 Aug 2012 11:10:17 -0700

Issue #2402 has been updated by Matthew Dillon.


Here's a patch to try to hopefully help or narrow down some of the softupdates issues.  I found two major issues perusing the softupdates code.

First, sema_get() and sema_release() are not MP safe when called without an interlock.  

Second, getdirtybuf() improperly retries after release/reacquiring &lk.  If this function cannot obtain the buffer lock prior to releasing &lk it MUST return failure.  The blocking buffer lock it obtains after releasing &lk is simply so the caller's retry loop doesn't live-lock... even if that second lock attempt succeeds the buffer itself may no longer be legally associated with the softdep work item because the instant &lk is released that work item can get ripped up.  The buffer cache pointer itself is type-stable, but not work-item stable.

http://apollo.backplane.com/DFlyMisc/softdep01.patch 

----------------------------------------
Bug #2402: Showstopper panics for Release 3.2
http://bugs.dragonflybsd.org/issues/2402

Author: John Marino
Status: New
Priority: Normal
Assignee: 
Category: 
Target version: 


This is the list of panics we've been accumulating.  It's particularly hard for i386 and UFS.
This is a good list of items to be fixed before next release.

#2296: panic: assertion "m->wire_count > 0" failed in pmap_unwire_pte at /usr/src/sys/platform/pc32/i386/pmap.c:1091
       core available (~marino/crash, ~thomas/crash
       (carried over from 3.0.1, 3.0.2, 3.0.3 showstopper lists)
#2364: panic: lockmgr: locking against myself
       core available (~marino/crash)
#2374: Panic where softdep_update_inodeblock() called bwrite() with a NULL buffer
       core available (~marino/crash) uploaded today
#2374: panic: flush_pagedep_deps: MKDIR_BODY
       core available (~marino/crash)
#2370: panic: ffs_valloc: dup alloc
       core available (~marino/crash)
#2350  panic: assertion "m->flags & PG_BUSY" failed in vm_page_protect at /usr/src/sys/vm/vm_page.h:532
       core available (~pavalos/crash)


Leftover from 3.0.3 showstopper:
#2353  panic: assertion "gd->gd_spinlocks_wr == 0" failed in bsd4_schedulerclock
       core available (~jaydg/crash)
#2388  panic: lockmgr: LK_RELEASE: no lock held
       No core.
#2399  Panic on lwkt_reltoken from vm_mmap
       core available (limited use)


Leftover from 3.0.1 showstopper:
#2284  panic: general protection fault     (3.0 showstopper)
       core available on ylem/var/crash, request to put on leaf didn't happen (?)

Other panics:
#2352  panic: Bad link elm 0xffffffe0a3775670 next->prev != elm
       core available (~jaydg/crash)
#2369  panic: Bad link elm 0xffffffe07edf6068 next->prev != elm
       core available (~jaydg/crash)
#2355  panic: rtrequest1_msghandler: rtrequest table error was cpu4, err 17
       core available (~jaydg/crash)
#2083  panic: zone: entry not free
       core might be available
#2358  panic: hammer: insufficient undo FIFO space!
       NO CORE
#2345  panic: assertion "len <= nmp->nm_size" failed in nfs_writerpc_bio at ....
       NO CORE
#2300  EHCI module unload panic
       Supposed core availble on request



-- 
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]