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