selftests: net: properly support IPv6 in GSO GRE test
[ Upstream commit a985442fdecb59504e3a2f1cfdd3c53af017ea5b ] Explicitly pass -6 to netcat when the test is using IPv6 to prevent failures. Also make sure to pass "-N" to netcat to close the socket after EOF on the client side, otherwise we would always hit the timeout and the test would fail. Without this fix applied: TEST: GREv6/v4 - copy file w/ TSO [FAIL] TEST: GREv6/v4 - copy file w/ GSO [FAIL] TEST: GREv6/v6 - copy file w/ TSO [FAIL] TEST: GREv6/v6 - copy file w/ GSO [FAIL] With this fix applied: TEST: GREv6/v4 - copy file w/ TSO [ OK ] TEST: GREv6/v4 - copy file w/ GSO [ OK ] TEST: GREv6/v6 - copy file w/ TSO [ OK ] TEST: GREv6/v6 - copy file w/ GSO [ OK ] Fixes: 025efa0a82df ("selftests: add simple GSO GRE test") Signed-off-by: Andrea Righi <andrea.righi@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
57488e25ef
commit
e65a7ab548
@ -116,17 +116,18 @@ gre_gst_test_checks()
|
||||
{
|
||||
local name=$1
|
||||
local addr=$2
|
||||
local proto=$3
|
||||
|
||||
$NS_EXEC nc -kl $port >/dev/null &
|
||||
$NS_EXEC nc $proto -kl $port >/dev/null &
|
||||
PID=$!
|
||||
while ! $NS_EXEC ss -ltn | grep -q $port; do ((i++)); sleep 0.01; done
|
||||
|
||||
cat $TMPFILE | timeout 1 nc $addr $port
|
||||
cat $TMPFILE | timeout 1 nc $proto -N $addr $port
|
||||
log_test $? 0 "$name - copy file w/ TSO"
|
||||
|
||||
ethtool -K veth0 tso off
|
||||
|
||||
cat $TMPFILE | timeout 1 nc $addr $port
|
||||
cat $TMPFILE | timeout 1 nc $proto -N $addr $port
|
||||
log_test $? 0 "$name - copy file w/ GSO"
|
||||
|
||||
ethtool -K veth0 tso on
|
||||
@ -155,7 +156,7 @@ gre6_gso_test()
|
||||
sleep 2
|
||||
|
||||
gre_gst_test_checks GREv6/v4 172.16.2.2
|
||||
gre_gst_test_checks GREv6/v6 2001:db8:1::2
|
||||
gre_gst_test_checks GREv6/v6 2001:db8:1::2 -6
|
||||
|
||||
cleanup
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user