Jakub Kicinski <kuba@xxxxxxxxxx> wrote: > On Wed, 24 May 2023 15:49:22 +0100 David Howells wrote: > > + err = skb_splice_from_iter(skb, &msg->msg_iter, copy, > > + sk->sk_allocation); > > + if (err < 0) { > > + if (err == -EMSGSIZE) > > + goto wait_for_memory; > > + goto out_error; > > + } > > > > should there be a: > > copy = err; > or: > copy -= msg_data_left(msg); > > or some such here? Can we safely assume that skb_splice_from_iter() will > copy all or nothing? Yeah. Good point. I didn't add one because the normal operation code doesn't do that - but I guess that's all-or-nothing. David