cvs commit: src/sys/netinet sctp_indata.c sctp_lock_bsd.h sctp_output.c sctp_sysctl.h sctp_timer.c sctp_var.h sctputil.c

Giorgos Keramidas keramida at ceid.upatras.gr
Thu Aug 28 16:36:21 UTC 2008


On Thu, 28 Aug 2008 19:24:20 +0300, Giorgos Keramidas <keramida at freebsd.org> wrote:
> I think we also need this patch:
>
> %%%
> diff -r 2e31e006d558 sys/netinet/sctp_timer.c
> --- a/sys/netinet/sctp_timer.c	Thu Aug 28 17:36:53 2008 +0300
> +++ b/sys/netinet/sctp_timer.c	Thu Aug 28 19:22:04 2008 +0300
> @@ -679,7 +679,9 @@
>  	/* Now on to each chunk */
>  	num_mk = cnt_mk = 0;
>  	tsnfirst = tsnlast = 0;
> +#ifdef INVARIANTS
>  start_again:
> +#endif
>  	chk = TAILQ_FIRST(&stcb->asoc.sent_queue);
>  	for (; chk != NULL; chk = tp2) {
>  		tp2 = TAILQ_NEXT(chk, sctp_next);
> %%%

This #ifdef is reversed, my apologies...  A better patch, that also
hides sctp_recover_sent_list() behind #ifndef INVARIANTS (it is an unused
static function in the INVARIANTS case), is attached below:

%%% --------------------------------------------------------------------
diff -r 2e31e006d558 sys/netinet/sctp_timer.c
--- a/sys/netinet/sctp_timer.c	Thu Aug 28 17:36:53 2008 +0300
+++ b/sys/netinet/sctp_timer.c	Thu Aug 28 19:33:29 2008 +0300
@@ -561,6 +561,7 @@ sctp_backoff_on_timeout(struct sctp_tcb 
 	}
 }
 
+#ifndef INVARIANTS
 static void
 sctp_recover_sent_list(struct sctp_tcb *stcb)
 {
@@ -603,6 +604,7 @@ sctp_recover_sent_list(struct sctp_tcb *
 		SCTP_PRINTF("chk:%p TSN:%x\n", chk, chk->rec.data.TSN_seq);
 	}
 }
+#endif
 
 static int
 sctp_mark_all_for_resend(struct sctp_tcb *stcb,
@@ -679,7 +681,9 @@ sctp_mark_all_for_resend(struct sctp_tcb
 	/* Now on to each chunk */
 	num_mk = cnt_mk = 0;
 	tsnfirst = tsnlast = 0;
+#ifndef INVARIANTS
 start_again:
+#endif
 	chk = TAILQ_FIRST(&stcb->asoc.sent_queue);
 	for (; chk != NULL; chk = tp2) {
 		tp2 = TAILQ_NEXT(chk, sctp_next);
%%% --------------------------------------------------------------------

With these changes, I can build a HEAD kernel again :)


More information about the cvs-all mailing list