From nobody Sun Feb 8 08:22:40 2026 Received: from outbound.st.icloud.com (p-east2-cluster5-host9-snip4-8.eps.apple.com [57.103.79.111]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6119A392B64 for ; Tue, 13 Jan 2026 14:13:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=57.103.79.111 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768313590; cv=none; b=bO7DhMiOmIMJN6U4vA5tpesmO8oUDxIkzDKJo80AN1kz+KsCgOizXMpOxyRpkafbVBzdGW4s/Dn8fTLhLu5iq2JzcKPGiWUabue5rXMArh+5OaMkPiT6VSJEl8kSjv6zK1K6GKx7FoxhfNIY+CnMDygI+99jUhx6ddFATJPMdrY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768313590; c=relaxed/simple; bh=GtHMg4wHwTN19B9+4lSKjM607bdkctJ2FDn216xvAOY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=QK+7dLDddhiNivnqwTWX5jeJbaS1kIRZgeC3wTS/0TrzUvyEVpaMbbvjq/u0nPbkE7kxJBN+sVHgMVyp4iWBxkEqVhMFA2hv/X4wmanCgT30jWzuS3Z2wfieb8wfJzkHfqjoHij4wKe1njsTMMsAMYQaAn0Nrir7jcvOPL1oOUg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=y-koj.net; spf=pass smtp.mailfrom=y-koj.net; dkim=fail (0-bit key) header.d=y-koj.net header.i=@y-koj.net header.b=A5QRM1s8 reason="key not found in DNS"; arc=none smtp.client-ip=57.103.79.111 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=y-koj.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=y-koj.net Authentication-Results: smtp.subspace.kernel.org; dkim=fail reason="key not found in DNS" (0-bit key) header.d=y-koj.net header.i=@y-koj.net header.b="A5QRM1s8" Received: from outbound.st.icloud.com (unknown [127.0.0.2]) by p00-icloudmta-asmtp-us-east-1a-100-percent-1 (Postfix) with ESMTPS id EB07318000AD; Tue, 13 Jan 2026 14:13:05 +0000 (UTC) Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=y-koj.net; s=sig1; bh=AJ3Z/Ka1MtkOkQP/yZPLVw1e30ndPtWd4EamEKxJ7OM=; h=From:To:Subject:Date:Message-ID:MIME-Version:x-icloud-hme; b=A5QRM1s888hGj9r55WMah6ENAfVJHk5o3F2Nv5JTsxdgTGQK3zd2sIVYM2rCfA6gNSBaEdW/qhWtWUwVibr/dVh7dkrVwJUKR81DDA1N9P7dYdQjoRzDz+5eGIU4cFPXK4fdZeBUpdPskjsa2HYjW2rjOFyw0cD9Y5syknOrY8P6Iz+w4/iHaZ/vlcuyRQ76KQPBTHHq83O9DnYoZkGlQTjS7WgUL59xKzOkT71tj1CzieAkp0x6fa+RE8ZJYr3wGxKV1IraKOgTi/YcuE8iMgN4MJtewgy5pRQQU6o9z7ueOBZxtDBXP1POwvrbF9377OAHOJBAGuMTq3uYfJ1zRA== mail-alias-created-date: 1719758601013 Received: from desktop.tail809fd.ts.net (unknown [17.42.251.67]) by p00-icloudmta-asmtp-us-east-1a-100-percent-1 (Postfix) with ESMTPSA id 17B5E180185D; Tue, 13 Jan 2026 14:13:02 +0000 (UTC) From: Yohei Kojima To: "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Shuah Khan Cc: Yohei Kojima , Andrew Lunn , Markus Elfring , netdev@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next v2 1/2] selftests: net: fix passive TFO test to fail if child processes failed Date: Tue, 13 Jan 2026 23:11:54 +0900 Message-ID: <214d399caec2e5de7738ced5736829915d507e4e.1768312014.git.yk@y-koj.net> X-Mailer: git-send-email 2.52.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Authority-Info: v=2.4 cv=QeZrf8bv c=1 sm=1 tr=0 ts=696652f3 cx=c_apl:c_apl_out:c_pps a=YrL12D//S6tul8v/L+6tKg==:117 a=YrL12D//S6tul8v/L+6tKg==:17 a=vUbySO9Y5rIA:10 a=VkNPw1HP01LnGYTKEx00:22 a=jnl5ZKOAAAAA:8 a=LKZS6mpCBy3a3Cu_pwcA:9 a=RNrZ5ZR47oNZP8zBN2PD:22 X-Proofpoint-GUID: miEs5wjNB7qE8WCrCC6RmrweB695itMr X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTEzMDEyMCBTYWx0ZWRfX0oyqXyMjeXPS AOqoykkjAFGQHId5HJk9ZBaqsqZIpG6GHKieuHgvyoElkxF1/eNnLeMWG7yhIKvu84sIl3U2M/h FnB/d11m86Ym9F30qd7Tfq4uEchP0tpprlOZrAxB1fOx9zREF3KI2TJGPRYguMLeQkR9jcxsQO1 qqpCErtso5pMLS031tPJLQjFhUE6mMSvytRQFWja/SKzUklXTDmF7mKXbrihWNIYEf297/eC23S 2oai5jNMTz5S6JB7sv5wxlUhVakl4oqUgyfhKi43jdYHQ5Gb48Bl1t9t2Hp6QOSZDYTcP1EIzV9 vLQn4iT2Jd82tfnWiql X-Proofpoint-ORIG-GUID: miEs5wjNB7qE8WCrCC6RmrweB695itMr X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-13_03,2026-01-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 malwarescore=0 adultscore=0 phishscore=0 spamscore=0 mlxscore=0 clxscore=1030 mlxlogscore=999 classifier=spam authscore=0 adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2601130120 X-JNJ: AAAAAAABrWYHjR+ZGTTG90aZaflijJOBJAY8Rka2n5lnY9uJgptrb3JLlIT9H86BlFx/+7aA8HaxGe3a05r6Ey1ZqyxopVz69kBl9ExItzfMkAXRufhr3qxswHsNixYuSZr9fAZjkn4tI0fbduLxiztqkIIb5fRGArzYDXuLDG8wqfk6xC8vFxL53wSWM6WnHRr5r1g5wooB5WXzDG0LdIIXKItCZhg0KXPdb4yTmqmCeKYaULpgBZDjoR82zWzven6HyzF0Pr+cx7tmhUDfdPqk6OsnrIDEsXisBUHgWT5ta0I6EFnkGwIjX70r+rNGyYEXNXrogFsSSUTGSU1KNvyfhHkpB0+RCTl60RhqtfkhHmJXnM9zUVMyIergR48NzZJh1sG/OhnBvcM2Kz7tPcubidWlwtA8DzRSm8X/WhCyYcdzI8s9kvO6a1iWCb4IMEYN0vSXsbKGxo+Ulw59KHTwFd1qd7amSZwdQy8XqsxAcOwYDHS2cXcKwVLVmPheyx/lzZfBGVNQ366WWCy9j/0cargDRK1rm1u0MfVaO3b8cYOfQ8CFEoShDlTcT5amX38r/YRGAbtUzzFTThaLwByo+CEBfIzWud4SramvYyYuSTpTyfGZj4GQZQS9DVlY3XaEapl9IQDhqCNs2zgQhykWuOgNjCgI2i2UmndhQFPx14U8WzovA3E+8DnYVQRJI4TGgOu6hQ60l/cZtI83R+mViOeGVBjWUEIs5SXwnjo8FNZtkQaHbSMgqDkTjKeHPMFXgBmvDTXrVuvjggz4JZATeEcYGDdX+JU6oUs2xJPda/Qn2zi4DdGLd/4pP6H7xg== Content-Type: text/plain; charset="utf-8" Improve the passive TFO test to report failure if the server or the client timed out or exited with non-zero status. Before this commit, TFO test didn't fail even if exit(EXIT_FAILURE) is added to the first line of the run_server() and run_client() functions. Signed-off-by: Yohei Kojima --- tools/testing/selftests/net/tfo_passive.sh | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/net/tfo_passive.sh b/tools/testing/sel= ftests/net/tfo_passive.sh index a4550511830a..f116f888b794 100755 --- a/tools/testing/selftests/net/tfo_passive.sh +++ b/tools/testing/selftests/net/tfo_passive.sh @@ -85,12 +85,15 @@ timeout -k 1s 30s ip netns exec nssv ./tfo \ -s \ -p ${SERVER_PORT} \ -o ${out_file}& +server_pid=3D"$!" =20 wait_local_port_listen nssv ${SERVER_PORT} tcp =20 ip netns exec nscl ./tfo -c -h ${SERVER_IP} -p ${SERVER_PORT} +client_exit_status=3D"$?" =20 -wait +wait "$server_pid" +server_exit_status=3D"$?" =20 res=3D$(cat $out_file) rm $out_file @@ -101,6 +104,14 @@ if [ "$res" =3D "0" ]; then exit 1 fi =20 +if [ "$client_exit_status" -ne 0 ] || [ "$server_exit_status" -ne 0 ]; then + # Note: timeout(1) exits with 124 if it timed out + echo "client exited with ${client_exit_status}" + echo "server exited with ${server_exit_status}" + cleanup_ns + exit 1 +fi + echo "$NSIM_SV_FD:$NSIM_SV_IFIDX" > $NSIM_DEV_SYS_UNLINK =20 echo $NSIM_CL_ID > $NSIM_DEV_SYS_DEL --=20 2.52.0 From nobody Sun Feb 8 08:22:40 2026 Received: from outbound.st.icloud.com (p-east2-cluster1-host9-snip4-2.eps.apple.com [57.103.76.105]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B071D1B425C for ; Tue, 13 Jan 2026 14:13:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=57.103.76.105 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768313600; cv=none; b=Pvk8kUd/xRgtPtvfd2FSwRxHJDRnd5oRXAixdBEpjJggiQU+1oKUXvjRxBFLQEOjfP7UMC2IcF4LQtfVgAL+8+81eWRCUSHRLNnyXbs5/GfWKKCTyev2uZnWl5aYST1GPikkTOhc7GSQHBljN1eOxkqlaFR7PzWpmBvLLcsueg0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768313600; c=relaxed/simple; bh=Ic05N38IwE/4wqD5ZXjgmQwte1DpIEy/9ZTMntimdac=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=P+hTcQwjhXkDAXIFpoNw6FnTmO2x7EnZAi7HiTBjVUp6PpWEs8UA/h7mMTCLWXop/ryWpItsp3Cug5OZqL9i/ldbua/CWewpblm6x6chwBVemezIfFDUTwvad/JObzexiLf5hdST4zxgtWdTYrOpOjJenUBSgGplK2uGd7/e4ZM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=y-koj.net; spf=pass smtp.mailfrom=y-koj.net; dkim=fail (0-bit key) header.d=y-koj.net header.i=@y-koj.net header.b=rX9j2+et reason="key not found in DNS"; arc=none smtp.client-ip=57.103.76.105 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=y-koj.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=y-koj.net Authentication-Results: smtp.subspace.kernel.org; dkim=fail reason="key not found in DNS" (0-bit key) header.d=y-koj.net header.i=@y-koj.net header.b="rX9j2+et" Received: from outbound.st.icloud.com (unknown [127.0.0.2]) by p00-icloudmta-asmtp-us-east-1a-100-percent-1 (Postfix) with ESMTPS id 30FD51801879; Tue, 13 Jan 2026 14:13:13 +0000 (UTC) Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=y-koj.net; s=sig1; bh=afH/Mj5H8vualGKTm+xW5vFpaHkJrNlaQy6ZQfrpBls=; h=From:To:Subject:Date:Message-ID:MIME-Version:x-icloud-hme; b=rX9j2+et4LuWX+Oyoyf7al7vaLWFCKUQvtowmCj1P+wT/EKrK0z+LfPxXspqCPfslzlwufsuOP3ZKXDJbMvRv2xiubmbh2IFKdC8JmASNlHD4AAD86dgEThH+69TNTm2Lr+RzJdqjQQAtjmV3cUKX8PvvcVXfl+Ty88EzpLTWCkNGsivQRC9qj4NzBhi6JVQDGgNaMA1NyXmS/rxm4jaqHHYR5MW1vY8Hm32+oEnLDYDydhDPqdb0VvWksHUIxbTiaLkmW2wu5+u+sUsIgfTToBCP3B5HRk2OlWodFwmOQ5cQ093ITWQqL0mp8hzDaYbrUp5TA2vgjz/Xw5BD7qWqA== mail-alias-created-date: 1719758601013 Received: from desktop.tail809fd.ts.net (unknown [17.42.251.67]) by p00-icloudmta-asmtp-us-east-1a-100-percent-1 (Postfix) with ESMTPSA id EB11118000A5; Tue, 13 Jan 2026 14:13:10 +0000 (UTC) From: Yohei Kojima To: "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Shuah Khan Cc: Yohei Kojima , Andrew Lunn , Markus Elfring , netdev@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next v2 2/2] selftests: net: improve error handling in passive TFO test Date: Tue, 13 Jan 2026 23:11:55 +0900 Message-ID: <24707c8133f7095c0e5a94afa69e75c3a80bf6e7.1768312014.git.yk@y-koj.net> X-Mailer: git-send-email 2.52.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-ORIG-GUID: 8I63Zms5JlcKjlKZnZbK1Q8jV10IbCj3 X-Authority-Info: v=2.4 cv=TMZIilla c=1 sm=1 tr=0 ts=696652fb cx=c_apl:c_apl_out:c_pps a=YrL12D//S6tul8v/L+6tKg==:117 a=YrL12D//S6tul8v/L+6tKg==:17 a=vUbySO9Y5rIA:10 a=VkNPw1HP01LnGYTKEx00:22 a=jnl5ZKOAAAAA:8 a=ZXA9zuh9vTPPph4ZHScA:9 a=RNrZ5ZR47oNZP8zBN2PD:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTEzMDEyMCBTYWx0ZWRfXxqO8yJsRA3IS 3FXVhX1fknG+LTCk371Hi0OBWEv8LziqqqPyOC3MzDW2eGpWZ8ZVL6t7ZwgYWDZA/sYezgddDzL 3MZOGhSpqpyRgZsy0NwivfQvDlCvzv8xCIWx0f1jGg1b3j2gskBBeUgG6cuHI6hBzLC3i9WhVat aI20RIPnDrjyOeRjOtPc5yPZfH9/MHZYObIRhU/0Q/Jtr7zaAySx6jE35XuiHBhIOSHv/0OCkbu Wii/bsUCxwKN52PkwNOu5GmH+p+BTyiOEsWL09T3Zhv++wHYY/TSf7nlqd9DbyRz/3piEPCOgYl xhnZ0jvyJbE3FO87/tM X-Proofpoint-GUID: 8I63Zms5JlcKjlKZnZbK1Q8jV10IbCj3 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-13_03,2026-01-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 bulkscore=0 clxscore=1030 adultscore=0 phishscore=0 mlxscore=0 malwarescore=0 mlxlogscore=999 spamscore=0 classifier=spam authscore=0 adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2601130120 X-JNJ: AAAAAAABWgyav4S6S7kZZlib5W7u9EWETIhk5XKz/IHVv5bojkzQ5weesz5OVdXAcO8cIuGJ7LvEE54K36khk5UidX+sgOdsvVQZEr6uqUS1FAiMxBznXUWJu5POdYyutms3hbAQUeT4TsZIiqJTOfadg3IiX+Ja4FPXpepK1lkpkXhAtxigZEAVCWTDfgi9ykSuzeJJMqw+1rb87edZYpl1e/S/0cK97SbfF+Zl7Z3+BvS+XEPqSJMqTJoywX1L5VCVBKAdT7txBYT3jLGHjrA/pIBKsNfWcO73/94rEoKSwg85yfvCgI6F6ekCjwYMnrG6lHyLVXYguOMa5P0cqRla3+05gqwaCDl7HdhrvGeH+V2nnWHdQpZL0IA60e5h4DdzLB5Tk15Wr3RZkTr3q4Em+8DfWB9qEkcDOsz1BsPZgEHGvW6px+ut59cuXdQ0b1z7Cu1K5uwbweGQ7QIOHDolcdFI8kHKii2QDhbigQyDRS/KmekiKACKigwgjwv2efYaz0DT7BKg6mauBytAKpbM/aBg9v8PBY4aHc3SKQu2T2HsbMI2OZwpxczBWUxpctoiw0DmCnY8Devq3Ll9ljZYHUW5in6Kj+5v6gtlYnBsAt5BMDvaB6oqjMJkUAojZz0mv37NKrjHLeqmddAG252MkNrF0ffnjDQvRds9hdayzRcHyeB4dOZ6vnBhSmRk1q0kachgwiwAX9e7zPI6zOWY3wIOHCJ9IWwOBmfEK75E6Usq10/DHMZM+/vkKp8NJDJDswy/f6O21L/Zjytsb3zbs+5tlh5XBXcoqS3OZg== Content-Type: text/plain; charset="utf-8" Improve the error handling in passive TFO test to check the return value from sendto(), and to fail if read() or fprintf() failed. Signed-off-by: Yohei Kojima --- tools/testing/selftests/net/tfo.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/net/tfo.c b/tools/testing/selftests/ne= t/tfo.c index 8d82140f0f76..3b1ee2d3d417 100644 --- a/tools/testing/selftests/net/tfo.c +++ b/tools/testing/selftests/net/tfo.c @@ -82,8 +82,10 @@ static void run_server(void) error(1, errno, "getsockopt(SO_INCOMING_NAPI_ID)"); =20 if (read(connfd, buf, 64) < 0) - perror("read()"); - fprintf(outfile, "%d\n", opt); + error(1, errno, "read()"); + + if (fprintf(outfile, "%d\n", opt) < 0) + error(1, errno, "fprintf()"); =20 fclose(outfile); close(connfd); @@ -92,14 +94,17 @@ static void run_server(void) =20 static void run_client(void) { - int fd; + int fd, ret; char *msg =3D "Hello, world!"; =20 fd =3D socket(AF_INET6, SOCK_STREAM, 0); if (fd =3D=3D -1) error(1, errno, "socket()"); =20 - sendto(fd, msg, strlen(msg), MSG_FASTOPEN, (struct sockaddr *)&cfg_addr, = sizeof(cfg_addr)); + ret =3D sendto(fd, msg, strlen(msg), MSG_FASTOPEN, + (struct sockaddr *)&cfg_addr, sizeof(cfg_addr)); + if (ret < 0) + error(1, errno, "sendto()"); =20 close(fd); } --=20 2.52.0