Author: tuexen
Date: Sun Apr 25 15:04:57 2010
New Revision: 207191
URL: http://svn.freebsd.org/changeset/base/207191

Log:
  Undo my lastest fix since that wasn't one at all.
  
  MFC after: 3 days.

Modified:
  head/sys/netinet/sctp_indata.c

Modified: head/sys/netinet/sctp_indata.c
==============================================================================
--- head/sys/netinet/sctp_indata.c      Sun Apr 25 13:55:52 2010        
(r207190)
+++ head/sys/netinet/sctp_indata.c      Sun Apr 25 15:04:57 2010        
(r207191)
@@ -3514,25 +3514,6 @@ sctp_strike_gap_ack_chunks(struct sctp_t
                if (tp1->sent == SCTP_DATAGRAM_RESEND) {
                        struct sctp_nets *alt;
 
-                       if ((stcb->asoc.peer_supports_prsctp) &&
-                           (PR_SCTP_RTX_ENABLED(tp1->flags))) {
-                               /*
-                                * Has it been retransmitted tv_sec times? -
-                                * we store the retran count there.
-                                */
-                               if (tp1->snd_count > 
tp1->rec.data.timetodrop.tv_sec) {
-                                       /* Yes, so drop it */
-                                       if (tp1->data != NULL) {
-                                               
(void)sctp_release_pr_sctp_chunk(stcb, tp1,
-                                                   (SCTP_RESPONSE_TO_USER_REQ 
| SCTP_NOTIFY_DATAGRAM_SENT),
-                                                   SCTP_SO_NOT_LOCKED);
-                                       }
-                                       /* Make sure to flag we had a FR */
-                                       tp1->whoTo->net_ack++;
-                                       tp1 = TAILQ_NEXT(tp1, sctp_next);
-                                       continue;
-                               }
-                       }
                        /* fix counts and things */
                        if (SCTP_BASE_SYSCTL(sctp_logging_level) & 
SCTP_FLIGHT_LOGGING_ENABLE) {
                                sctp_misc_ints(SCTP_FLIGHT_LOG_DOWN_RSND,
@@ -3555,6 +3536,25 @@ sctp_strike_gap_ack_chunks(struct sctp_t
                        /* remove from the total flight */
                        sctp_total_flight_decrease(stcb, tp1);
 
+                       if ((stcb->asoc.peer_supports_prsctp) &&
+                           (PR_SCTP_RTX_ENABLED(tp1->flags))) {
+                               /*
+                                * Has it been retransmitted tv_sec times? -
+                                * we store the retran count there.
+                                */
+                               if (tp1->snd_count > 
tp1->rec.data.timetodrop.tv_sec) {
+                                       /* Yes, so drop it */
+                                       if (tp1->data != NULL) {
+                                               
(void)sctp_release_pr_sctp_chunk(stcb, tp1,
+                                                   (SCTP_RESPONSE_TO_USER_REQ 
| SCTP_NOTIFY_DATAGRAM_SENT),
+                                                   SCTP_SO_NOT_LOCKED);
+                                       }
+                                       /* Make sure to flag we had a FR */
+                                       tp1->whoTo->net_ack++;
+                                       tp1 = TAILQ_NEXT(tp1, sctp_next);
+                                       continue;
+                               }
+                       }
                        /* printf("OK, we are now ready to FR this guy\n"); */
                        if (SCTP_BASE_SYSCTL(sctp_logging_level) & 
SCTP_FR_LOGGING_ENABLE) {
                                sctp_log_fr(tp1->rec.data.TSN_seq, 
tp1->snd_count,
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to