Skip to content

Commit 6b48667

Browse files
committed
net: tls: set MSG_SPLICE_PAGES consistently
We used to change the flags for the last segment, because non-last segments had the MSG_SENDPAGE_NOTLAST flag set. That flag is no longer a thing so remove the setting. Since flags most likely don't have MSG_SPLICE_PAGES set this avoids passing parts of the sg as splice and parts as non-splice. Before commit under Fixes we'd have called tcp_sendpage() which would add the MSG_SPLICE_PAGES. Why this leads to trouble remains unclear but Tariq reports hitting the WARN_ON(!sendpage_ok()) due to page refcount of 0. Fixes: e117dcf ("tls: Inline do_tcp_sendpages()") Reported-by: Tariq Toukan <tariqt@nvidia.com> Link: https://lore.kernel.org/all/4c49176f-147a-4283-f1b1-32aac7b4b996@gmail.com/ Tested-by: Tariq Toukan <tariqt@nvidia.com> Link: https://lore.kernel.org/r/20230808180917.1243540-1-kuba@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent 3e91b0e commit 6b48667

File tree

1 file changed

+0
-3
lines changed

1 file changed

+0
-3
lines changed

net/tls/tls_main.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -139,9 +139,6 @@ int tls_push_sg(struct sock *sk,
139139

140140
ctx->splicing_pages = true;
141141
while (1) {
142-
if (sg_is_last(sg))
143-
msg.msg_flags = flags;
144-
145142
/* is sending application-limited? */
146143
tcp_rate_check_app_limited(sk);
147144
p = sg_page(sg);

0 commit comments

Comments
 (0)