kern/176446: Concurrency in ixgbe driving out-of-order packet process and spurious RST

Charbon, Julien jcharbon at verisign.com
Wed Feb 27 14:20:02 UTC 2013


The following reply was made to PR kern/176446; it has been noted by GNATS.

From: "Charbon, Julien" <jcharbon at verisign.com>
To: FreeBSD-gnats-submit at FreeBSD.org, freebsd-bugs at FreeBSD.org
Cc: jfv at FreeBSD.org, "De La Gueronniere, Marc" <mdelagueronniere at verisign.com>
Subject: Re: kern/176446: Concurrency in ixgbe driving out-of-order packet
 process and spurious RST
Date: Wed, 27 Feb 2013 13:54:20 +0100

   I successfully reproduced this issue using only the socat tool:
 
 Server side:  Enable TCP debug, and launch socat server:
 
 # sysctl net.inet.tcp.log_debug=1
 net.inet.tcp.log_debug: 0 -> 1
 $ cat /some/where/response.sh
 #!/usr/bin/env bash
 read line
 echo -n 
 "01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567"
 $ socat TCP4-LISTEN:8181,fork,reuseaddr EXEC:/some/where/response.sh
 
 Client side:  Create socat client TCP load:
 
 $ cat ./request
 128
 $ while true; do socat ./request,ignoreeof\!\!./response 
 TCP4:192.168.100.144:8181 & sleep 0.0001; done
 
 Then on server side just wait for a TCP debug in /var/log/debug.log like:
 
 kernel: TCP: [192.168.100.136]:48359 to [192.168.100.144]:8181; 
 syncache_socket: in_pcbconnect failed with error 48
 kernel: TCP: [192.168.100.136]:48359 to [192.168.100.144]:8181 tcpflags 
 0x10<ACK>; tcp_input: Listen socket: Socket allocation failed due to 
 limits or memory shortage, sending RST
 kernel: TCP: [192.168.100.136]:48359 to [192.168.100.144]:8181 tcpflags 
 0x4<RST>; syncache_chkrst: Spurious RST without matching syncache entry 
 (possibly syncookie only), segment ignored
 
   Adding Jack F. Vogel (ixgbe driver maintainer), and Marc De La 
 Gueronniere (author of our work in progress patch for this issue).
 
 --
 Julien


More information about the freebsd-net mailing list