Network threading stage 1/3: netisrs are already software interrupts,
[dragonfly.git] / sys / netinet / tcp_subr.c
index e3f188e..560933b 100644 (file)
@@ -32,7 +32,7 @@
  *
  *     @(#)tcp_subr.c  8.2 (Berkeley) 5/24/95
  * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.73.2.31 2003/01/24 05:11:34 sam Exp $
- * $DragonFly: src/sys/netinet/tcp_subr.c,v 1.5 2003/06/25 05:22:32 dillon Exp $
+ * $DragonFly: src/sys/netinet/tcp_subr.c,v 1.9 2003/11/08 07:57:51 dillon Exp $
  */
 
 #include "opt_compat.h"
@@ -178,8 +178,8 @@ static int     tcp_inflight_stab = 20;
 SYSCTL_INT(_net_inet_tcp, OID_AUTO, inflight_stab, CTLFLAG_RW,
     &tcp_inflight_stab, 0, "Slop in maximal packets / 10 (20 = 2 packets)");
 
-static void    tcp_cleartaocache __P((void));
-static void    tcp_notify __P((struct inpcb *, int));
+static void    tcp_cleartaocache (void);
+static void    tcp_notify (struct inpcb *, int);
 
 /*
  * Target size of TCP PCB hash tables. Must be a power of two.
@@ -220,7 +220,7 @@ void
 tcp_init()
 {
        int hashsize = TCBHASHSIZE;
-       
+
        tcp_ccgen = 1;
        tcp_cleartaocache();
 
@@ -258,6 +258,7 @@ tcp_init()
 #undef TCP_MINPROTOHDR
 
        syncache_init();
+       tcp_thread_init();
 }
 
 /*
@@ -358,12 +359,12 @@ void
 tcp_respond(tp, ipgen, th, m, ack, seq, flags)
        struct tcpcb *tp;
        void *ipgen;
-       register struct tcphdr *th;
-       register struct mbuf *m;
+       struct tcphdr *th;
+       struct mbuf *m;
        tcp_seq ack, seq;
        int flags;
 {
-       register int tlen;
+       int tlen;
        int win = 0;
        struct route *ro = 0;
        struct route sro;
@@ -537,7 +538,7 @@ tcp_newtcpcb(inp)
        struct inpcb *inp;
 {
        struct inp_tp *it;
-       register struct tcpcb *tp;
+       struct tcpcb *tp;
 #ifdef INET6
        int isipv6 = (inp->inp_vflag & INP_IPV6) != 0;
 #endif /* INET6 */
@@ -595,7 +596,7 @@ tcp_newtcpcb(inp)
  */
 struct tcpcb *
 tcp_drop(tp, errno)
-       register struct tcpcb *tp;
+       struct tcpcb *tp;
        int errno;
 {
        struct socket *so = tp->t_inpcb->inp_socket;
@@ -620,15 +621,15 @@ tcp_drop(tp, errno)
  */
 struct tcpcb *
 tcp_close(tp)
-       register struct tcpcb *tp;
+       struct tcpcb *tp;
 {
-       register struct tseg_qent *q;
+       struct tseg_qent *q;
        struct inpcb *inp = tp->t_inpcb;
        struct socket *so = inp->inp_socket;
 #ifdef INET6
        int isipv6 = (inp->inp_vflag & INP_IPV6) != 0;
 #endif /* INET6 */
-       register struct rtentry *rt;
+       struct rtentry *rt;
        int dosavessthresh;
 
        /*
@@ -653,7 +654,7 @@ tcp_close(tp)
         * update anything that the user "locked".
         */
        if (tp->t_rttupdated >= 16) {
-               register u_long i = 0;
+               u_long i = 0;
 #ifdef INET6
                if (isipv6) {
                        struct sockaddr_in6 *sin6;
@@ -1014,7 +1015,7 @@ tcp_ctlinput(cmd, sa, vip)
        struct in_addr faddr;
        struct inpcb *inp;
        struct tcpcb *tp;
-       void (*notify) __P((struct inpcb *, int)) = tcp_notify;
+       void (*notify) (struct inpcb *, int) = tcp_notify;
        tcp_seq icmp_seq;
        int s;
 
@@ -1073,7 +1074,7 @@ tcp6_ctlinput(cmd, sa, d)
        void *d;
 {
        struct tcphdr th;
-       void (*notify) __P((struct inpcb *, int)) = tcp_notify;
+       void (*notify) (struct inpcb *, int) = tcp_notify;
        struct ip6_hdr *ip6;
        struct mbuf *m;
        struct ip6ctlparam *ip6cp = NULL;
@@ -1135,7 +1136,7 @@ tcp6_ctlinput(cmd, sa, d)
                inc.inc_isipv6 = 1;
                syncache_unreach(&inc, &th);
        } else
-               in6_pcbnotify(&tcb, sa, 0, (struct sockaddr *)sa6_src,
+               in6_pcbnotify(&tcb, sa, 0, (const struct sockaddr *)sa6_src,
                              0, cmd, notify);
 }
 #endif /* INET6 */
@@ -1623,4 +1624,3 @@ tcp_xmit_bandwidth_limit(struct tcpcb *tp, tcp_seq ack_seq)
                bwnd = tp->t_maxseg * 2;
        tp->snd_bwnd = bwnd;
 }
-