FFS Softdep Kernel Panic
Shawn Wallbridge
shawn.wallbridge at imaginaryforces.com
Fri Nov 1 05:21:34 UTC 2013
I am running a large (71TB) file (NFS w/ some Samba) server (9.2-RELEASE)
and it has been crashing almost daily. I have been trying to track down
the issue, but I haven't had any luck.
The panic is..
panic: handle_workitem_remove: bad file delta
cpuid = 9
KDB: stack backtrace:
#0 0xffffffff80947986 at kdb_backtrace+0x66
#1 0xffffffff8090d9ae at panic+0x1ce
#2 0xffffffff80b4143f at handle_workitem_remove+0x46f
#3 0xffffffff80b4133a at handle_workitem_remove+0x36a
#4 0xffffffff80b4069d at process_worklist_item+0x2bd
#5 0xffffffff80b450da at softdep_process_worklist+0x8a
#6 0xffffffff80b47a4d at softdep_flush+0x1ad
#7 0xffffffff808db67f at fork_exit+0x11f
#8 0xffffffff80cdc23e at fork_trampoline+0xe
I looked at the source for ffs_softdep.c and found this, which seems to be
the only place "bad file delta" shows up.
/*
* Normal file deletion.
*/
if ((dirrem->dm_state & RMDIR) == 0) {
ip->i_nlink--;
DIP_SET(ip, i_nlink, ip->i_nlink);
ip->i_flag |= IN_CHANGE;
if (ip->i_nlink < ip->i_effnlink)
panic("handle_workitem_remove: bad file delta");
if (ip->i_nlink == 0)
unlinked_inodedep(mp, inodedep);
inodedep->id_nlinkdelta = ip->i_nlink - ip->i_effnlink;
KASSERT(LIST_EMPTY(&dirrem->dm_jwork),
("handle_workitem_remove: worklist not empty. %s",
TYPENAME(LIST_FIRST(&dirrem->dm_jwork)->wk_type)));
WORKITEM_FREE(dirrem, D_DIRREM);
FREE_LOCK(&lk);
goto out;
}
I have created a PR, but I haven't had any response (no one has even
downloaded the crash dumps I linked to).
http://www.freebsd.org/cgi/query-pr.cgi?pr=183424
Because this is a file server, in production, this is becoming a HUGE
problem and is costing us quite a bit of lost production each time it
crashes (and takes 4hrs to fsck).
Thanks
shawn
________________________________
This e-mail is intended only for the named person or entity to which it is addressed and contains valuable business information that is proprietary, privileged, confidential and/or otherwise protected from disclosure. If you received this e-mail in error, any review, use, dissemination, distribution or copying of this e-mail is strictly prohibited. Please notify us immediately of the error via e-mail to <ifpostmaster> postmaster at imaginaryforces.com and please delete the e-mail from your system, retaining no copies in any media. We appreciate your cooperation.
...imaginaryforces.com...
More information about the freebsd-fs
mailing list