OpenSolaris

Printable Version Enter a New Search
Bug ID 6547084
Synopsis sctp_timer assertion(O) for SCTPS_BOUND connection
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:tcp-ip
Keywords rtiq_reviewed
Responsible Engineer Kacheong Poon
Reported Against
Duplicate Of
Introduced In solaris_10
Commit to Fix snv_72
Fixed In snv_72
Release Fixed solaris_nevada(snv_72) , solaris_10u5(s10u5_08) (Bug ID:2157068)
Related Bugs 6604040 , 5014658
Submit Date 17-April-2007
Last Update Date 22-January-2008
Description
Running some old sotest scripts with SCTP I get an ASSERTION failure (ASSERT(0)) 
../../common/inet/sctp/sctp_timer.c line 661

The sctp_t is in state -4 (SCTPS_BOUND)

Reproduce by
bobo[1] cd ~nordmark/ws/test_ws/api/sotest
bobo[2] runall.csh.sctp

This worked fine in snv_57.
I observe the panic on snv_63.

The sctp_t is below:

> $c
vpanic()
assfail+0x83(fffffffff7c38230, fffffffff7c38208, 295)
sctp_rexmit_timer+0x4ca(ffffff3271d5c900, ffffff090064a968)
sctp_timer_call+0x39(ffffff3271d5c900, fffffffef6345360)
sctp_timer_fire+0xfd(ffffff3271d62870)
callout_execute+0xc1(fffffffec6483000)
taskq_thread+0x200(fffffffec5669878)
thread_start+8()
> fffffffff7c38230/s
0xfffffffff7c38230:             0
> fffffffff7c38208/s
0xfffffffff7c38208:             ../../common/inet/sctp/sctp_timer.c
> 295=D
                661
> ffffff3271d5c900::print sctp_t
{
    sctp_conn_hash_next = 0
    sctp_conn_hash_prev = 0
    sctp_listen_hash_next = 0
    sctp_listen_hash_prev = 0
    sctp_listen_tfp = 0
    sctp_conn_tfp = 0xfffffffec75351e0
    sctp_list = {
        list_next = 0xfffffffec7529930
        list_prev = 0xfffffffec785a930
    }
    sctp_faddrs = 0xffffff090064a968
    sctp_nfaddrs = 0x1
    sctp_saddrs = [
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5c960
                    list_prev = 0xffffff3271d5c960
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5c988
                    list_prev = 0xffffff3271d5c988
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5c9b0
                    list_prev = 0xffffff3271d5c9b0
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5c9d8
                    list_prev = 0xffffff3271d5c9d8
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5ca00
                    list_prev = 0xffffff3271d5ca00
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5ca28
                    list_prev = 0xffffff3271d5ca28
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5ca50
                    list_prev = 0xffffff3271d5ca50
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5ca78
                    list_prev = 0xffffff3271d5ca78
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5caa0
                    list_prev = 0xffffff3271d5caa0
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5cac8
                    list_prev = 0xffffff3271d5cac8
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5caf0
                    list_prev = 0xffffff3271d5caf0
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5cb18
                    list_prev = 0xffffff3271d5cb18
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5cb40
                    list_prev = 0xffffff3271d5cb40
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5cb68
                    list_prev = 0xffffff3271d5cb68
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5cb90
                    list_prev = 0xffffff3271d5cb90
                }
            }
            ipif_count = 0
        }
        {
            sctp_ipif_list = {
                list_size = 0x20
                list_offset = 0
                list_head = {
                    list_next = 0xffffff3271d5cbb8
                    list_prev = 0xffffff3271d5cbb8
                }
            }
            ipif_count = 0
        }
    ]
    sctp_nsaddrs = 0
    sctp_sctpu = {
        sctpu_ports1 = {
            sctpu_fport = 0x700
            sctpu_lport = 0x3d22
        }
        sctpu_ports2 = 0x3d220700
    }
    sctp_lock = {
        _opaque = [ 0 ]
    }
    sctp_cv = {
        _opaque = 0
    }
    sctp_running = 1 (B_TRUE)
    sctp_ulpd = 0xffffff090064b288
    sctp_upcalls = {
        su_newconn = sctp_sock_newconn
        su_connected = sctp_sock_connected
        su_disconnected = sctp_sock_disconnected
        su_disconnecting = sctp_sock_disconnecting
        su_recv = sctp_sock_recv
        su_xmitted = sctp_sock_xmitted
        su_properties = sctp_sock_properties
    }
    sctp_state = 0xfffffffc
    sctp_connp = 0xffffff3271d5c208
    sctp_sctps = 0xfffffffec7529800
    sctp_lastfaddr = 0xffffff090064a968
    sctp_primary = 0xffffff090064a968
    sctp_current = 0xffffff090064a968
    sctp_lastdata = 0
    sctp_xmit_head = 0
    sctp_xmit_tail = 0
    sctp_xmit_unsent = 0
    sctp_xmit_unsent_tail = 0
    sctp_xmit_unacked = 0
    sctp_unacked = 0
    sctp_unsent = 0
    sctp_ltsn = 0xdb40e3d3
    sctp_lastack_rxd = 0xdb40e3d2
    sctp_recovery_tsn = 0xdb40e3d2
    sctp_adv_pap = 0xdb40e3d2
    sctp_num_ostr = 0x20
    sctp_ostrcntrs = 0
    sctp_def_stream = 0
    sctp_def_flags = 0
    sctp_def_ppid = 0
    sctp_def_context = 0
    sctp_def_timetolive = 0
    sctp_sack_info = 0
    sctp_ack_mp = 0xffffff0b3e3a2ac0
    sctp_instr = 0
    sctp_uo_frags = 0
    sctp_ftsn = 0
    sctp_lastacked = 0
    sctp_num_istr = 0x20
    sctp_istr_nmsgs = 0
    sctp_sack_gaps = 0
    sctp_sack_toggle = 0x2
    sctp_rtt_tsn = 0
    sctp_out_time = 0
>> More [<space>, <cr>, q, n, c, a] ?



    sctp_opkts = 0
    sctp_obchunks = 0
    sctp_odchunks = 0
    sctp_oudchunks = 0
    sctp_rxtchunks = 0
    sctp_ipkts = 0
    sctp_ibchunks = 0
    sctp_idchunks = 0
    sctp_iudchunks = 0
    sctp_fragdmsgs = 0
    sctp_reassmsgs = 0
    sctp_T1expire = 0
    sctp_T2expire = 0
    sctp_T3expire = 0
    sctp_assoc_start_time = 0
    sctp_xmit_hiwater = 0x19000
    sctp_xmit_lowater = 0x2000
    sctp_frwnd = 0
    sctp_cwnd_max = 0x100000
    sctp_rwnd = 0x19000
    sctp_irwnd = 0x19000
    sctp_rxqueued = 0
    sctp_iphc = 0xffffff0ab4bc10f8 "E"
    sctp_iphc6 = 0xfffffffed094a8b0 "`"
    sctp_iphc_len = 0x48
    sctp_iphc6_len = 0x48
    sctp_hdr_len = 0x20
    sctp_hdr6_len = 0x34
    sctp_ipha = 0xffffff0ab4bc10f8
    sctp_ip6h = 0xfffffffed094a8b0
    sctp_ip_hdr_len = 0x14
    sctp_ip_hdr6_len = 0x28
    sctp_sctph = 0xffffff0ab4bc110c
    sctp_sctph6 = 0xfffffffed094a8d8
    sctp_lvtag = 0xdb40e3d2
    sctp_fvtag = 0
    sctp_last_mtu_probe = 0x3c9721
    sctp_mtu_probe_intvl = 0x927c0
    sctp_mss = 0x5bc
    sctp_bits = {
        sctp_understands_asconf = 0x1
        sctp_debug = 0
        sctp_cchunk_pend = 0
        sctp_dgram_errind = 0
        sctp_linger = 0
        sctp_lingering = 0
        sctp_loopback = 0
        sctp_force_sack = 0
        sctp_ack_timer_running = 0
        sctp_recvdstaddr = 0
        sctp_hwcksum = 0
        sctp_understands_addip = 0x1
        sctp_bound_to_all = 0
        sctp_cansleep = 0x1
        sctp_detached = 0
        sctp_send_adaption = 0
        sctp_recv_adaption = 0
        sctp_ndelay = 0
        sctp_condemned = 0
        sctp_chk_fast_rexmit = 0
        sctp_prsctp_aware = 0
        sctp_linklocal = 0
        sctp_rexmitting = 0
        sctp_zero_win_probe = 0
        sctp_dummy = 0
    }
    sctp_events = {
        sctp_recvsndrcvinfo = 0
        sctp_recvassocevnt = 0
        sctp_recvpathevnt = 0
        sctp_recvsendfailevnt = 0
        sctp_recvpeererr = 0
        sctp_recvshutdownevnt = 0
        sctp_recvpdevnt = 0
        sctp_recvalevnt = 0
    }
    sctp_cookie_mp = 0
    sctp_strikes = 0
    sctp_max_init_rxt = 0x8
    sctp_pa_max_rxt = 0xa
    sctp_pp_max_rxt = 0x5
    sctp_rto_max = 0x1770
    sctp_init_rto_max = 0x1770
    sctp_rto_min = 0x64
    sctp_rto_initial = 0x12c
    sctp_last_secret_update = 0
    sctp_secret = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
    sctp_old_secret = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
    sctp_cookie_lifetime = 0x1770
    sctp_family = 0x2
    sctp_ipversion = 0x4
    sctp_bind_lockp = 0xfffffffec7554638
    sctp_bind_hash = 0
    sctp_ptpbhn = 0xfffffffec7554630
    sctp_shutdown_faddr = 0
    sctp_client_errno = 0
    sctp_lingertime = 0
    sctp_reflock = {
        _opaque = [ 0 ]
    }
    sctp_refcnt = 0x2
    sctp_timer_mp = 0
    sctp_bound_if = 0
    sctp_heartbeat_mp = 0xfffffffec7851240
    sctp_hb_interval = 0xbb8
    sctp_autoclose = 0
    sctp_active = 0
    sctp_tx_adaption_code = 0
    sctp_rx_adaption_code = 0
    sctp_cxmit_list = 0
    sctp_lcsn = 0xdb40e3d3
    sctp_fcsn = 0
    sctp_recvq_lock = {
        _opaque = [ 0 ]
    }
    sctp_recvq = 0
    sctp_recvq_tail = 0
    sctp_recvq_tq = 0
    sctp_sendq_lock = {
        _opaque = [ 0 ]
    }
    sctp_sendq = 0
    sctp_sendq_tail = 0
    sctp_sendq_sending = 0 (B_FALSE)
    sctp_ipv6_recvancillary = 0
    sctp_recvifindex = 0
    sctp_recvhops = 0
    sctp_hopopts = 0
    sctp_dstopts = 0
    sctp_rtdstopts = 0
    sctp_rthdr = 0
    sctp_hopoptslen = 0
    sctp_dstoptslen = 0
    sctp_rtdstoptslen = 0
    sctp_rthdrlen = 0
    sctp_sticky_ipp = {
        ipp_fields = 0
        ipp_sticky_ignored = 0
        ipp_ifindex = 0
        ipp_addr = {
            _S6_un = {
                _S6_u32 = [ 0, 0, 0, 0 ]
                _S6_u8 = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
                __S6_align = 0
            }
        }
        ipp_unicast_hops = 0
        ipp_multicast_hops = 0
        ipp_hoplimit = 0
        ipp_hopoptslen = 0
        ipp_rtdstoptslen = 0
        ipp_rthdrlen = 0
        ipp_dstoptslen = 0
        ipp_pathmtulen = 0
        ipp_fraghdrlen = 0
        ipp_hopopts = 0
        ipp_rtdstopts = 0
        ipp_rthdr = 0
        ipp_dstopts = 0
        ipp_fraghdr = 0
        ipp_pathmtu = 0
        ipp_nexthop = {
            _S6_un = {
                _S6_u32 = [ 0, 0, 0, 0 ]
                _S6_u8 = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
                __S6_align = 0
            }
        }
        ipp_tclass = 0
        ipp_use_min_mtu = '\0'
    }
    sctp_msgcount = 0
    sctp_prsctpdrop = 0
    sctp_v4label_len = 0
    sctp_v6label_len = 0
    sctp_rxt_nxttsn = 0
    sctp_rxt_maxtsn = 0
    sctp_pd_point = 0x19000
}
Work Around
N/A
Comments
N/A