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