Previously sk_msg_memcopy_from_iter returns the copied bytes from the
last copy_from_iter{,_nocache} call upon success.
This commit changes it to return the total number of copied bytes on
success.
Signed-off-by: Levi Zim <rsworktech@outlook.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Tested-by: Björn Töpel <bjorn@kernel.org>
Reviewed-by: John Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/bpf/20241130-tcp-bpf-sendmsg-v1-1-bae583d014f3@outlook.com
                             struct sk_msg *msg, u32 bytes)
 {
        int ret = -ENOSPC, i = msg->sg.curr;
+       u32 copy, buf_size, copied = 0;
        struct scatterlist *sge;
-       u32 copy, buf_size;
        void *to;
 
        do {
                        goto out;
                }
                bytes -= copy;
+               copied += copy;
                if (!bytes)
                        break;
                msg->sg.copybreak = 0;
        } while (i != msg->sg.end);
 out:
        msg->sg.curr = i;
-       return ret;
+       return (ret < 0) ? ret : copied;
 }
 EXPORT_SYMBOL_GPL(sk_msg_memcopy_from_iter);