aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet
diff options
context:
space:
mode:
authorRandall Stewart <rrs@FreeBSD.org>2010-06-06 16:11:16 +0000
committerRandall Stewart <rrs@FreeBSD.org>2010-06-06 16:11:16 +0000
commitfaa1e3f4a92a9fd6f46748765c88aa0f82ad7aa8 (patch)
treef48d74737e80a9ce3625c9d5cdd3e3335e9b551c /sys/netinet
parent7c82e9fa93ac9271a771978959e4ae861b88cb5d (diff)
Notes
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/sctp_input.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c
index b110adc251c6..95114cc4d64c 100644
--- a/sys/netinet/sctp_input.c
+++ b/sys/netinet/sctp_input.c
@@ -4534,7 +4534,8 @@ process_control_chunks:
if ((stcb) && (stcb->asoc.total_output_queue_size)) {
;
} else {
- if (locked_tcb) {
+ if (locked_tcb != stcb) {
+ /* Very unlikely */
SCTP_TCB_UNLOCK(locked_tcb);
}
*offset = length;
@@ -5424,6 +5425,12 @@ __attribute__((noinline))
panic("Own lock on stcb at return from input");
}
}
+ if (mtx_owned(&inp->inp_create_mtx)) {
+ panic("Own create lock on inp");
+ }
+ if (mtx_owned(&inp->inp_mtx)) {
+ panic("Own inp lock on inp");
+ }
}
#endif