tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: [patch] bug fix & TCP networking performance improvements



[initialization crash]
dyoung%pobox.com@localhost said:
> Looks easy to fix.

With the appended hack the box seems to survive.
Didn't do anything benchmark-like yet.
Only netstat(1) isn't helpful -- started as root and it
got into an endless loop printing
tcp   0   0   *.*  *.*   TIME_WAIT   -1303323789977.711ms
until I killed it.

best regards
Matthias



------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich
Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDirig Dr. Karl Eugen Huthmacher
Geschaeftsfuehrung: Prof. Dr. Achim Bachem (Vorsitzender),
Dr. Ulrich Krafft (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
Prof. Dr. Sebastian M. Schmidt
------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------

Besuchen Sie uns auf unserem neuen Webauftritt unter www.fz-juelich.de
--- tcp_var.h
+++ tcp_var.h
@@ -958,8 +958,10 @@
 void    syn_cache_timer(void *);
 void    syn_cache_cleanup(struct tcpcb *);
 
 int     tcp_input_checksum(int, struct mbuf *, const struct tcphdr *, int, int,
     int);
+
+void vtw_earlyinit(void);
 #endif
 
 #endif /* !_NETINET_TCP_VAR_H_ */

--- tcp_subr.c
+++ tcp_subr.c
@@ -435,10 +435,12 @@
        MOWNER_ATTACH(&tcp_sock_tx_mowner);
        MOWNER_ATTACH(&tcp_sock_rx_mowner);
        MOWNER_ATTACH(&tcp_mowner);
 
        tcpstat_percpu = percpu_alloc(sizeof(uint64_t) * TCP_NSTATS);
+
+       vtw_earlyinit();
 }
 
 /*
  * Create template to be used to send tcp packets on a connection.
  * Call after host entry created, allocates an mbuf and fills

--- tcp_vtw.c
+++ tcp_vtw.c
@@ -2375,6 +2375,14 @@
 
 static void
 k_vtw(int c, char **v)
 {
        return;
+}
+
+void
+vtw_earlyinit()
+{
+
+       vtw_control(AF_INET, 0);
+       vtw_control(AF_INET6, 0);
 }



Home | Main Index | Thread Index | Old Index