svn commit: r197327 - head/sys/netinet

Michael Tuexen tuexen at FreeBSD.org
Sat Sep 19 14:18:43 UTC 2009


Author: tuexen
Date: Sat Sep 19 14:18:42 2009
New Revision: 197327
URL: http://svn.freebsd.org/changeset/base/197327

Log:
  Fix the disabling of sctp_drain().
  
  Approved by: rrs (mentor)
  MFC after: 1 month.

Modified:
  head/sys/netinet/sctp_pcb.c

Modified: head/sys/netinet/sctp_pcb.c
==============================================================================
--- head/sys/netinet/sctp_pcb.c	Sat Sep 19 14:02:16 2009	(r197326)
+++ head/sys/netinet/sctp_pcb.c	Sat Sep 19 14:18:42 2009	(r197327)
@@ -6422,10 +6422,6 @@ sctp_drain_mbufs(struct sctp_inpcb *inp,
 
 	/* We look for anything larger than the cum-ack + 1 */
 
-	SCTP_STAT_INCR(sctps_protocol_drain_calls);
-	if (SCTP_BASE_SYSCTL(sctp_do_drain) == 0) {
-		return;
-	}
 	asoc = &stcb->asoc;
 	if (asoc->cumulative_tsn == asoc->highest_tsn_inside_map) {
 		/* none we can reneg on. */
@@ -6588,9 +6584,12 @@ sctp_drain()
 	 * is LOW on MBUF's and needs help. This is where reneging will
 	 * occur. We really hope this does NOT happen!
 	 */
-
 	VNET_ITERATOR_DECL(vnet_iter);
 
+	SCTP_STAT_INCR(sctps_protocol_drain_calls);
+	if (SCTP_BASE_SYSCTL(sctp_do_drain) == 0) {
+		return;
+	}
 	VNET_LIST_RLOCK_NOSLEEP();
 	VNET_FOREACH(vnet_iter) {
 		CURVNET_SET(vnet_iter);


More information about the svn-src-head mailing list