Hello all, First, some background on the box producing these errors: o VALinux machine, using Intel L440GX+ motherboard o 1 gigabyte of RAM o 1 IDE hard drive o 2 SCSI hard drives o Dual P-III 800 MHz CPU's o Running kernel 2.4.20 I run 2.4.20 on almost all of my machines, but this is the first time I have seen the error messages in question... They were in dmesg. The machine has been in production for about 2 days now. Without further adeiu, here's the errors: -----[ Begin snip ]----- KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) KERNEL: assertion (newsk->state != TCP_SYN_RECV) failed at tcp.c(2229) KERNEL: assertion ((1<<sk2->state)&(TCPF_ESTABLISHED|TCPF_CLOSE_WAIT|TCPF_CLOSE)) failed at af_inet.c(689) -----[ End Snip ]----- I've done some google searches for these errors, and found a handful of other people reporting them (including one that said that they were crashing his machine). I however didnt find very many suggestions. There was a kernel patch submitted by someone, but I am ort of reluctant to patch the kernel, since this is the first and only machine running 2.4.20 that is producing these errors... Is there some root cause of these? Is there something I can do to fix them? Are they dangerous to the machine stability? Should I just apply the patch I saw and let it go at that? Here's the patch I found: # This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet1.933 -> 1.934 #net/ipv4/tcp_minisocks.c1.12 -> 1.13 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 03/01/30davem@nuts.ninka.net1.934 # [TCP]: In tcp_check_req, handle ACKless packets properly. # -------------------------------------------- # diff -Nru a/net/ipv4/tcp_minisocks.c b/net/ipv4/tcp_minisocks.c --- a/net/ipv4/tcp_minisocks.cThu Jan 30 23:08:40 2003 +++ b/net/ipv4/tcp_minisocks.cThu Jan 30 23:08:40 2003 @@ -938,6 +938,12 @@ if (flg & (TCP_FLAG_RST|TCP_FLAG_SYN)) goto embryonic_reset; +/* ACK sequence verified above, just make sure ACK is + * set. If ACK not set, just silently drop the packet. + */ +if (!(flg & TCP_FLAG_ACK)) +return NULL; + /* If TCP_DEFER_ACCEPT is set, drop bare ACK. */ if (tp->defer_accept && TCP_SKB_CB(skb)->end_seq == req->rcv_isn+1) { req->acked = 1; It looks minimally invasive... But I have to wonder why it's not included in the kernel already if its the best solution... Any words of wisdom would be appreciated... This machine is our production pop/smtp server, and also does RADIUS and DNS. So needless to say, I am concerned about stability. Thanks in advance, Brad - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html