From: David S. Miller Date: Sun, 14 Jan 2024 12:17:14 +0000 (+0000) Subject: Merge branch 'tls-splice-hint-fixes' X-Git-Tag: Ubuntu-6.8.0-17.17~1619^2~21 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=5ef7f6b308bb98b385076bd623d08d107f6445f4;p=mirror_ubuntu-kernels.git Merge branch 'tls-splice-hint-fixes' John Fastabend says: ==================== tls fixes for SPLICE with more hint Syzbot found a splat where it tried to splice data over a tls socket with the more hint and sending greater than the number of frags that fit in a msg scatterlist. This resulted in an error where we do not correctly send the data when the msg sg is full. The more flag being just a hint not a strict contract. This then results in the syzbot warning on the next send. Edward generated an initial patch for this which checked for a full msg on entry to the sendmsg hook. This fixed the WARNING, but didn't fully resolve the issue because the full msg_pl scatterlist was never sent resulting in a stuck socket. In this series instead avoid the situation by forcing the send on the splice that fills the scatterlist. Also in original thread I mentioned it didn't seem to be enough to simply fix the send on full sg problem. That was incorrect and was really a bug in my test program that was hanging the test program. I had setup a repair socket and wasn't handling it correctly so my tester got stuck. Thanks. Please review. Fix in patch 1 and test in patch 2. v2: use SPLICE_F_ flag names instead of cryptic 0xe ==================== Signed-off-by: David S. Miller --- 5ef7f6b308bb98b385076bd623d08d107f6445f4