[PATCH net-next v2] selftests: net: add socat syslog for PPPoL2TP

Qingfang Deng posted 1 patch 1 week, 3 days ago
tools/testing/selftests/net/ppp/pppol2tp.sh | 15 +++++++++++++++
1 file changed, 15 insertions(+)
[PATCH net-next v2] selftests: net: add socat syslog for PPPoL2TP
Posted by Qingfang Deng 1 week, 3 days ago
As done in pppoe.sh, start socat as the syslog listener. In case the
test fails, dump its log to see what's going on.

Signed-off-by: Qingfang Deng <qingfang.deng@linux.dev>
---
v2: move syslog dump to the end and use EXIT_STATUS
v1: https://lore.kernel.org/netdev/20260526014152.532505-1-qingfang.deng@linux.dev/
 tools/testing/selftests/net/ppp/pppol2tp.sh | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/tools/testing/selftests/net/ppp/pppol2tp.sh b/tools/testing/selftests/net/ppp/pppol2tp.sh
index 5b592785f1f9..37c4d56c5c6e 100755
--- a/tools/testing/selftests/net/ppp/pppol2tp.sh
+++ b/tools/testing/selftests/net/ppp/pppol2tp.sh
@@ -9,10 +9,12 @@ OUTER_IP_SERVER="172.16.1.1"
 OUTER_IP_CLIENT="172.16.1.2"
 
 PPPOL2TP_DIR=$(mktemp -d /tmp/pppol2tp.XXXXXX)
+PPPOL2TP_LOG="$PPPOL2TP_DIR/l2tp.log"
 
 # shellcheck disable=SC2329
 cleanup() {
 	cleanup_all_ns
+	[ -n "$SOCAT_PID" ] && kill_process "$SOCAT_PID"
 	rm -rf "$PPPOL2TP_DIR"
 }
 
@@ -31,6 +33,10 @@ ip -netns "$NS_CLIENT" link set "$VETH_CLIENT" up
 ip -netns "$NS_SERVER" address add dev "$VETH_SERVER" "$OUTER_IP_SERVER" peer "$OUTER_IP_CLIENT"
 ip -netns "$NS_CLIENT" address add dev "$VETH_CLIENT" "$OUTER_IP_CLIENT" peer "$OUTER_IP_SERVER"
 
+# Start socat as syslog listener
+socat -v -u UNIX-RECV:/dev/log OPEN:/dev/null > "$PPPOL2TP_LOG" 2>&1 &
+SOCAT_PID=$!
+
 # Generate configuration files
 cat > "$PPPOL2TP_DIR/l2tp-server.conf" <<EOF
 [global]
@@ -92,4 +98,13 @@ check_fail $?
 
 log_test "PPPoL2TP Recursion"
 
+# Dump syslog messages if the test failed
+if [ "$EXIT_STATUS" -ne 0 ]; then
+	while read -r _sign _date _time len _from _to
+	do      len=${len##*=}
+		read -n "$len" -r LINE
+		echo "$LINE"
+	done < "$PPPOL2TP_LOG"
+fi
+
 exit "$EXIT_STATUS"
-- 
2.43.0
Re: [PATCH net-next v2] selftests: net: add socat syslog for PPPoL2TP
Posted by Matthieu Baerts 1 week, 3 days ago
Hi Qingfang,

On 29/05/2026 12:11, Qingfang Deng wrote:
> As done in pppoe.sh, start socat as the syslog listener. In case the
> test fails, dump its log to see what's going on.
Thank you for the v2, it looks good to me:

Reviewed-by: Matthieu Baerts <matttbe@kernel.org>

Hopefully this will help you to understand why this test is flaky, so a
fix can be provided, then this test can be unignored.

https://netdev.bots.linux.dev/contest.html?skip=0&test=pppol2tp-sh

Cheers,
Matt
-- 
Sponsored by the NGI0 Core fund.
Re: [PATCH net-next v2] selftests: net: add socat syslog for PPPoL2TP
Posted by Matthieu Baerts 5 days, 8 hours ago
Hi Qingfang,

On 29/05/2026 13:21, Matthieu Baerts wrote:
> Hi Qingfang,
> 
> On 29/05/2026 12:11, Qingfang Deng wrote:
>> As done in pppoe.sh, start socat as the syslog listener. In case the
>> test fails, dump its log to see what's going on.
> Thank you for the v2, it looks good to me:
> 
> Reviewed-by: Matthieu Baerts <matttbe@kernel.org>
> 
> Hopefully this will help you to understand why this test is flaky, so a
> fix can be provided, then this test can be unignored.
> 
> https://netdev.bots.linux.dev/contest.html?skip=0&test=pppol2tp-sh

It looks like the issue happened once since this patch is being tested:

https://netdev-ctrl.bots.linux.dev/logs/vmksft/net-extra/results/668501/11-pppol2tp-sh/stdout

Is it enough for you to understand what's wrong and how to fix it?

Cheers,
Matt
Re: [PATCH net-next v2] selftests: net: add socat syslog for PPPoL2TP
Posted by Qingfang Deng 5 days, 6 hours ago
On 2026/6/3 12:04, Matthieu Baerts wrote:
> Hi Qingfang,
> It looks like the issue happened once since this patch is being tested:
>
> https://netdev-ctrl.bots.linux.dev/logs/vmksft/net-extra/results/668501/11-pppol2tp-sh/stdout
>
> Is it enough for you to understand what's wrong and how to fix it?

Yes. Both pppd instances detected a false loopback, possibly because 
they happened to use the same PRNG seed to generate the magic number. 
I'll send a patch to disable this detection.

Regards,

Qingfang