From nobody Wed Sep 17 18:38:23 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 454E4212F89 for ; Tue, 2 Sep 2025 02:35:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756780524; cv=none; b=ueYNB12SvkIHhEGlEtpIrAB7R9acEF3L/19T0Y8YT1K5LS1gNzllfIxCw1i42QjHmv3lAt0L8JwHe4agketMrCsya5NaGQFNrVxYo0wZAhb6xh1RonOH4E2paORwLZRlP3nxFq1xEIULPYpYeBv8V+oxvl6c6D4Uo6W5rA1a5fk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756780524; c=relaxed/simple; bh=5GOemc8goFp/01Dy8pKnpLsVqLblPC8dyQ/Q+kCzeDo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=QKUc7Ionv7eF/jteORXcC+Oqm/FrnmgPj0sy41QGcY6W8vtbLYrQ3/MdKoMBquOQdJ4a/HyJVSjrVLwJEZZ1zRerIvQmRcIKwyCcZmcORBZ6j+AMd+Bb2ZNzTxGlRKO+lxz+RgX1+Xl5snCG+0gPU75eD8GND7WzD6+LrTPcriE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=S8PH7B6l; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="S8PH7B6l" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D84E0C4CEF1; Tue, 2 Sep 2025 02:35:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1756780523; bh=5GOemc8goFp/01Dy8pKnpLsVqLblPC8dyQ/Q+kCzeDo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=S8PH7B6lC9I1N8fWMPIh/dKNG9cC6Y3UDcR1gzj8IFDN/ZgjywTYhQU5gZFGkyUi1 nkgUkRwImzvYR32wdY9PRN3ksKYo+5x1DQhFjvheoKAAq7hrA3AtcuBtuUTCT321Tb nZ87n3cWtt+HDzdWgif8VMbdmcAlR5HYhO/3IkJyvTgnPSI1dEZX1s+cU/OueuE5Aq QTJ3BBAs9C0+FqsOHtmfBnumabuOEZ1hhhE6w7FMN6/8gKGLlmxwqLZamCXczMp8rG 5dkQY5rjMSGvyAHHRLKiJZJ1w+BZISj3uOVlB1bGtyXFBuJEfXQJXORhotKJ8S+mMm SNmqMdlNlpcIw== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v10 8/9] selftests: mptcp: add splice io mode Date: Tue, 2 Sep 2025 10:34:59 +0800 Message-ID: <5dbf35c163a8355c376dcc2c747d66f4d3c2df04.1756780274.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.48.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang This patch adds a new 'splice' io mode for mptcp_connect to test the newly added read_sock() and splice_read() functions of MPTCP. do_splice() efficiently transfers data directly between two file descriptors (infd and outfd) without copying to userspace, using Linux's splice() system call. Usage: ./mptcp_connect.sh -m splice Signed-off-by: Geliang Tang --- .../selftests/net/mptcp/mptcp_connect.c | 63 ++++++++++++++++++- 1 file changed, 62 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.c b/tools/test= ing/selftests/net/mptcp/mptcp_connect.c index 4f07ac9fa207..d522ac2da9bc 100644 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.c +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.c @@ -51,6 +51,7 @@ enum cfg_mode { CFG_MODE_POLL, CFG_MODE_MMAP, CFG_MODE_SENDFILE, + CFG_MODE_SPLICE, }; =20 enum cfg_peek { @@ -123,7 +124,7 @@ static void die_usage(void) fprintf(stderr, "\t-j -- add additional sleep at connection start and= tear down " "-- for MPJ tests\n"); fprintf(stderr, "\t-l -- listens mode, accepts incoming connection\n"= ); - fprintf(stderr, "\t-m [poll|mmap|sendfile] -- use poll(default)/mmap+writ= e/sendfile\n"); + fprintf(stderr, "\t-m [poll|mmap|sendfile|splice] -- use poll(default)/mm= ap+write/sendfile/splice\n"); fprintf(stderr, "\t-M mark -- set socket packet mark\n"); fprintf(stderr, "\t-o option -- test sockopt