6.0-BETA2 sbflush_locked panic,
was Re: Supermicro H8DAR-8 motherboard
Guy Helmer
ghelmer at palisadesys.com
Wed Aug 31 19:52:56 GMT 2005
Scott Long wrote:
> Guy Helmer wrote:
>
>> We received the H8DAR-8 unit a little over a week ago with dual
>> Opteron 275s and it has been running well since. I didn't have any
>> problem installing FreeBSD 6.0-BETA1, and I ran "make -j12
>> buildworld" continuously on it over a weekend. It finally crashed on
>> an sbfree call, but I'd chalk that up to BETA1. It's been solid
>> under a lighter load since. I like the board and I'm glad Supermicro
>> was able to cram it into a 1U case :-)
>
>
> Do you have any crash data on the panic? Unfortunately, we haven't
> perfected the 'self fixing beta release', so we rely on good reports
> to get bugs fixed manually =-)
>
> Scott
OK, here is the backtrace (apparently bogus stack frames elided).
Fortunately, this is repeatable; unfortunately, it takes a couple of
days of repeated "make -j12 buildworld" before it crashes. Please let
me know if I should file a PR or provide any additional information.
#27 0xffffffff803c0a51 in panic (
fmt=0xffffffff8063e4c8 "sbflush_locked: cc %u || mb %p || mbcnt %u")
at ../../../kern/kern_shutdown.c:537
#28 0xffffffff8040b32a in sbflush_locked (sb=0xffffffffbbdbd7a0)
at ../../../kern/uipc_socket2.c:1114
#29 0xffffffff8040b36c in sbrelease_locked (sb=0xffffffffbbdbd7a0,
so=0xffffff003a1639a0) at ../../../kern/uipc_socket2.c:559
#30 0xffffffff8040b3fb in sbrelease (sb=0xffffffffbbdbd7a0,
so=0xffffff003a1639a0) at ../../../kern/uipc_socket2.c:572
#31 0xffffffff80407f98 in sorflush (so=0xffffff003a1639a0)
at ../../../kern/uipc_socket.c:1480
#32 0xffffffff804082c4 in sofree (so=0xffffff003a1639a0)
at ../../../kern/uipc_socket.c:406
#33 0xffffffff804088cf in soclose (so=0xffffff003a1639a0)
at ../../../kern/uipc_socket.c:484
#34 0xffffffff803607c2 in fifo_cleanup (vp=0x0)
at ../../../fs/fifofs/fifo_vnops.c:147
#35 0xffffffff80361601 in fifo_close (ap=0xffffffffbbdbd980)
at ../../../fs/fifofs/fifo_vnops.c:462
#36 0xffffffff805de4ca in VOP_CLOSE_APV (vop=0x0, a=0x0) at vnode_if.c:426
#37 0xffffffff80439323 in vn_close (vp=0xffffff006e6f71f0, flags=7,
file_cred=0xffffff0204030200, td=0xffffff0201fc74c0) at vnode_if.h:227
#38 0xffffffff804393e4 in vn_closefile (fp=0xffffff01fe7e63c0,
td=0xffffff0201fc74c0) at ../../../kern/vfs_vnops.c:864
#39 0xffffffff8039591d in fdrop_locked (fp=0xffffff01fe7e63c0,
td=0xffffff0201fc74c0) at file.h:289
#40 0xffffffff80395a69 in closef (fp=0xffffff01fe7e63c0, td=0xffffff0201fc74c0)
at ../../../kern/kern_descrip.c:1919
#41 0xffffffff80396985 in close (td=0xffffff0201fc74c0, uap=0x0)
at ../../../kern/kern_descrip.c:1004
#42 0xffffffff805964d2 in syscall (frame=
{tf_rdi = 3, tf_rsi = 140737488346316, tf_rdx = -1, tf_rcx = 10, tf_r8 = -1090888371008, tf_r9 = 0, tf_rax = 6, tf_rbx = 0, tf_rbp = 5711616, tf_r10 = 0, ---Type <return> to continue, or q <return> to quit---
tf_r11 = 5759120, tf_r12 = 140737488346352, tf_r13 = 140737488346432, tf_r14 = 3, tf_r15 = 1, tf_trapno = 12, tf_addr = 5775360, tf_flags = 5626054, tf_err = 2, tf_rip = 4280924, tf_cs = 43, tf_rflags = 518, tf_rsp = 140737488346328, tf_ss = 35}) at ../../../amd64/amd64/trap.c:796
#43 0xffffffff80582d68 in Xfast_syscall ()
at ../../../amd64/amd64/exception.S:272
(kgdb) frame 28
#28 0xffffffff8040b32a in sbflush_locked (sb=0xffffffffbbdbd7a0)
at ../../../kern/uipc_socket2.c:1114
1114 panic("sbflush_locked: cc %u || mb %p || mbcnt %u", sb->sb_cc, (void *)sb->sb_mb, sb->sb_mbcnt);
(kgdb) list
1109 if (!sb->sb_cc && (sb->sb_mb == NULL || sb->sb_mb->m_len))
1110 break;
1111 sbdrop_locked(sb, (int)sb->sb_cc);
1112 }
1113 if (sb->sb_cc || sb->sb_mb || sb->sb_mbcnt)
1114 panic("sbflush_locked: cc %u || mb %p || mbcnt %u", sb->sb_cc, (void *)sb->sb_mb, sb->sb_mbcnt);
1115 }
1116
1117 void
1118 sbflush(sb)
(kgdb) print *sb
$1 = {sb_sel = {si_thrlist = {tqe_next = 0x0, tqe_prev = 0x0},
si_thread = 0x0, si_note = {kl_list = {slh_first = 0x0}, kl_lock = 0,
kl_unlock = 0, kl_locked = 0, kl_lockarg = 0x0}, si_flags = 0},
sb_mtx = {mtx_object = {lo_class = 0xffffffff807bbd70,
lo_name = 0xffffffff8063e390 "so_rcv",
lo_type = 0xffffffff8063e390 "so_rcv", lo_flags = 196608, lo_list = {
tqe_next = 0x0, tqe_prev = 0x0}, lo_witness = 0x0},
mtx_lock = 18446742982821180608, mtx_recurse = 0}, sb_state = 0,
sb_mb = 0xffffff0205b9dd00, sb_mbtail = 0xffffff0205b9dd00,
sb_lastrecord = 0xffffff0205b9dd00, sb_cc = 16, sb_hiwat = 8192,
sb_mbcnt = 0, sb_mbmax = 65536, sb_ctl = 0, sb_lowat = 1, sb_timeo = 0,
sb_flags = 64}
(kgdb) frame 31
#31 0xffffffff80407f98 in sorflush (so=0xffffff003a1639a0)
at ../../../kern/uipc_socket.c:1480
1480 sbrelease(&asb, so);
(kgdb) print *so
$2 = {so_count = 0, so_type = 1, so_options = 0, so_linger = 0,
so_state = 8193, so_qstate = 0, so_pcb = 0x0, so_proto = 0xffffffff807c4920,
so_head = 0x0, so_incomp = {tqh_first = 0x0, tqh_last = 0xffffff003a1639c8},
so_comp = {tqh_first = 0x0, tqh_last = 0xffffff003a1639d8}, so_list = {
tqe_next = 0x0, tqe_prev = 0x0}, so_qlen = 0, so_incqlen = 0,
so_qlimit = 0, so_timeo = 0, so_error = 0, so_sigio = 0x0, so_oobmark = 0,
so_aiojobq = {tqh_first = 0x0, tqh_last = 0xffffff003a163a18}, so_rcv = {
sb_sel = {si_thrlist = {tqe_next = 0xffffff0051fc4a28,
tqe_prev = 0xffffff01e55699e0}, si_thread = 0x0, si_note = {kl_list = {
slh_first = 0x0}, kl_lock = 0xffffffff8039d950 <knlist_mtx_lock>,
kl_unlock = 0xffffffff8039d990 <knlist_mtx_unlock>,
kl_locked = 0xffffffff8039d9d0 <knlist_mtx_locked>,
kl_lockarg = 0xffffff003a163a70}, si_flags = 0}, sb_mtx = {
mtx_object = {lo_class = 0xffffffff807bbd70,
lo_name = 0xffffffff8063e390 "so_rcv",
lo_type = 0xffffffff8063e390 "so_rcv", lo_flags = 196608, lo_list = {
tqe_next = 0x0, tqe_prev = 0x0}, lo_witness = 0x0}, mtx_lock = 4,
mtx_recurse = 0}, sb_state = 32, sb_mb = 0x0, sb_mbtail = 0x0,
sb_lastrecord = 0x0, sb_cc = 0, sb_hiwat = 0, sb_mbcnt = 0, sb_mbmax = 0,
sb_ctl = 0, sb_lowat = 0, sb_timeo = 0, sb_flags = 0}, so_snd = {sb_sel = {
si_thrlist = {tqe_next = 0x0, tqe_prev = 0x0}, si_thread = 0x0,
si_note = {kl_list = {slh_first = 0x0},
kl_lock = 0xffffffff8039d950 <knlist_mtx_lock>,
kl_unlock = 0xffffffff8039d990 <knlist_mtx_unlock>,
kl_locked = 0xffffffff8039d9d0 <knlist_mtx_locked>,
kl_lockarg = 0xffffff003a163b40}, si_flags = 0}, sb_mtx = {
mtx_object = {lo_class = 0xffffffff807bbd70,
lo_name = 0xffffffff8063e389 "so_snd",
lo_type = 0xffffffff8063e389 "so_snd", lo_flags = 196608, lo_list = {
tqe_next = 0x0, tqe_prev = 0x0}, lo_witness = 0x0}, mtx_lock = 4,
mtx_recurse = 0}, sb_state = 16, sb_mb = 0x0, sb_mbtail = 0x0,
sb_lastrecord = 0x0, sb_cc = 0, sb_hiwat = 0, sb_mbcnt = 0, sb_mbmax = 0,
sb_ctl = 0, sb_lowat = 2048, sb_timeo = 0, sb_flags = 64}, so_upcall = 0,
so_upcallarg = 0x0, so_cred = 0xffffff0204030200, so_label = 0x0,
so_peerlabel = 0x0, so_gencnt = 2077, so_emuldata = 0x0, so_accf = 0x0}
--
Guy Helmer, Ph.D.
Principal System Architect
Palisade Systems, Inc.
More information about the freebsd-amd64
mailing list