* packet types (REQUEST, RESPONSE, the ACK in the 3way hanshake 
* packet types (REQUEST, RESPONSE, the ACK in the 3way handshake 
static void dccp_retransmit_timer(struct sock *sk){	struct inet_connection_sock *icsk = inet_csk(sk);	/*	 * sk->sk_send_head has to have one skb with	 * DCCP_SKB_CB(skb)->dccpd_type set to one of the retransmittable DCCP	 * packet types (REQUEST, RESPONSE, the ACK in the 3way hanshake	 * (PARTOPEN timer), etc).	 */	BUG_TRAP(sk->sk_send_head != NULL);	/* 	 * More than than 4MSL (8 minutes) has passed, a RESET(aborted) was	 * sent, no need to retransmit, this sock is dead.	 */	if (dccp_write_timeout(sk))		goto out;	/*	 * We want to know the number of packets retransmitted, not the	 * total number of retransmissions of clones of original packets.	 */	if (icsk->icsk_retransmits == 0)		DCCP_INC_STATS_BH(DCCP_MIB_TIMEOUTS);	if (dccp_retransmit_skb(sk, sk->sk_send_head) < 0) {		/*		 * Retransmission failed because of local congestion,		 * do not backoff.		 */		if (icsk->icsk_retransmits == 0)			icsk->icsk_retransmits = 1;		inet_csk_reset_xmit_timer(sk, ICSK_TIME_RETRANS,					  min(icsk->icsk_rto,					      TCP_RESOURCE_PROBE_INTERVAL),					  DCCP_RTO_MAX);		goto out;	}	icsk->icsk_backoff++;	icsk->icsk_retransmits++;	icsk->icsk_rto = min(icsk->icsk_rto << 1, DCCP_RTO_MAX);	inet_csk_reset_xmit_timer(sk, ICSK_TIME_RETRANS, icsk->icsk_rto,				  DCCP_RTO_MAX);	if (icsk->icsk_retransmits > 3 /* FIXME: sysctl_dccp_retries1 */)		__sk_dst_reset(sk);out:;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/03ace394ac9bcad38043a381ae5f4860b9c9fa1c/timer.c/buggy/net/dccp/timer.c