Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet/tcp_timer.c
Context not available. | |||||
tp->t_flags |= TF_ACKNOW; | tp->t_flags |= TF_ACKNOW; | ||||
TCPSTAT_INC(tcps_delack); | TCPSTAT_INC(tcps_delack); | ||||
(void) tcp_output(tp); | (void) tp->t_fb->tcp_output(tp); | ||||
INP_WUNLOCK(inp); | INP_WUNLOCK(inp); | ||||
CURVNET_RESTORE(); | CURVNET_RESTORE(); | ||||
} | } | ||||
Context not available. | |||||
} | } | ||||
tcp_setpersist(tp); | tcp_setpersist(tp); | ||||
tp->t_flags |= TF_FORCEDATA; | tp->t_flags |= TF_FORCEDATA; | ||||
(void) tcp_output(tp); | (void) tp->t_fb->tcp_output(tp); | ||||
tp->t_flags &= ~TF_FORCEDATA; | tp->t_flags &= ~TF_FORCEDATA; | ||||
out: | out: | ||||
Context not available. | |||||
cc_cong_signal(tp, NULL, CC_RTO); | cc_cong_signal(tp, NULL, CC_RTO); | ||||
(void) tcp_output(tp); | (void) tp->t_fb->tcp_output(tp); | ||||
out: | out: | ||||
#ifdef TCPDEBUG | #ifdef TCPDEBUG | ||||
Context not available. | |||||
jtl: I think it is up to the author of the alternate TCP stack to code appropriate logic into their… | |||||
Not Done Inline ActionsI am going to fix all this code, the whole stop case is kludgy due to the rrs: I am going to fix all this code, the whole stop case is kludgy due to the
lack of a… | |||||
Not Done Inline Actionsshould call tp->t_fb->tcp_timer_activate. jtl: should call tp->t_fb->tcp_timer_activate. | |||||
Not Done Inline Actionsgood catch. rrs: good catch. |
I think it is up to the author of the alternate TCP stack to code appropriate logic into their function. We just need to document this.