Date: Fri, 11 Jun 2010 03:13:19 +0000 (UTC) From: Randall Stewart <rrs@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/netinet sctp_auth.c sctp_bsd_addr.c sctp_bsd_addr.h sctp_constants.h sctp_indata.c sctp_input.c sctp_lock_bsd.h sctp_output.c sctp_pcb.c sctp_pcb.h sctp_structs.h sctp_sysctl.c sctp_timer.c sctp_usrreq.c sctputil.c Message-ID: <201006110313.o5B3DgqY024082@repoman.freebsd.org>
index | next in thread | raw e-mail
rrs 2010-06-11 03:13:19 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_8)
sys/netinet sctp_auth.c sctp_bsd_addr.c
sctp_bsd_addr.h sctp_constants.h
sctp_indata.c sctp_input.c
sctp_lock_bsd.h sctp_output.c sctp_pcb.c
sctp_pcb.h sctp_structs.h sctp_sysctl.c
sctp_timer.c sctp_usrreq.c sctputil.c
Log:
SVN rev 209028 on 2010-06-11 03:13:19Z by rrs
MFC:
Fix a number of bugs and race conditions.
r208160: Bring back of the iterator thread. It now properly handles VNETS
having only one thread. The old timer based code was full of
LOR's and other issues.
r208852: Cleanup bug. Basically when an un-accepted socket was hanging on a
closed listener, we would leak the inp never cleaning it up
r208853: Enhance the use under invarients of the audit for locks function
and fix a bug where a close collision with a cookie being processed
would cause a crash.
r208854: Use the proper increment macros when working with the
sent_queue_retran_cnt
r208855: Align comments properly, Fix a bug where we were NOT looking at the
resend markings for control chunks and also not decrementing the
retran count which caused extra calls to retransmission. Alos add
a valid no locks call to the output routine.
r208856: Spacing issues in auth/bsd addr.
r208857: Get rid of a windows ifdef that somehow leaked in
r208863: Missing error leg returns in some failure cases
r208864: LOR fix between the iterator and sctp_inpcb_close
r208874: Don't call the sctp_inpcb_free from abort an association since you
don't know what locks you hold and a timer will take care of the
situation when the gone flag is set
r208875: sctp_inpcb_free bug - a socket under the right situation could get
stuck (from the accept queue) and never start the proper cleanup
timer)
r208876: Further enhance invariant lock validation, Fix a bug where a closed
socket and a INIT-ACK could collide and cause a crash
r208878: Clear up another bug in sctp_inpcb_free where we would end up due
to a race in freeing hit a destroy of a contended lock.
r208879: Optimize the cleanup and make some additional fixes in the sysctl
code so that it won't reference a GONE INP and crash us
r208883 & r208891: Fix so we don't open a hole between a sock lock and a call
to socantrcvmore.. we could before hit a race that would kill the
socket underneath us leading to a crash
r208897: CUM-ACK calculation was messed up. So basically large message got
broken from the original NR_sack integration.
r208902: Make sure that we don't move a bit to the NR array that is behind
the cum-ack
r208952: Use both bit maps to calculte the cum-ack.
r208953: Fix bug having to do with freeing an sctp_inpcb_free().
1) make sure not to remove the flag until you get the lock again.
2) make sure all log_closing calls hold the lock.
3) Release all the locks when everthing is done and call callout_drain
not callout_stop..
r208970: Fix some places on user allocation of a new sctp_inpcb where we run
out of resource that we make sure to NULL the so_pcb pointer.
Approved by: re - (bz@freebsd.org)
Revision Changes Path
1.23.2.4 +5 -5 src/sys/netinet/sctp_auth.c
1.24.2.4 +42 -22 src/sys/netinet/sctp_bsd_addr.c
1.9.2.2 +1 -2 src/sys/netinet/sctp_bsd_addr.h
1.44.2.7 +1 -6 src/sys/netinet/sctp_constants.h
1.64.2.15 +25 -11 src/sys/netinet/sctp_indata.c
1.82.2.11 +26 -7 src/sys/netinet/sctp_input.c
1.14.2.2 +38 -17 src/sys/netinet/sctp_lock_bsd.h
1.88.2.22 +23 -13 src/sys/netinet/sctp_output.c
1.85.2.11 +171 -121 src/sys/netinet/sctp_pcb.c
1.41.2.5 +7 -8 src/sys/netinet/sctp_pcb.h
1.33.2.6 +17 -0 src/sys/netinet/sctp_structs.h
1.28.2.5 +10 -3 src/sys/netinet/sctp_sysctl.c
1.43.2.4 +0 -140 src/sys/netinet/sctp_timer.c
1.67.2.10 +8 -0 src/sys/netinet/sctp_usrreq.c
1.93.2.15 +48 -69 src/sys/netinet/sctputil.c
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006110313.o5B3DgqY024082>
