net: fix signedness bug in skb_splice_from_iter()
authorDan Carpenter <dan.carpenter@linaro.org>
Fri, 26 May 2023 13:39:15 +0000 (16:39 +0300)
committerJakub Kicinski <kuba@kernel.org>
Tue, 30 May 2023 04:59:56 +0000 (21:59 -0700)
The "len" variable needs to be signed for the error handling to work
correctly.

Fixes: 2e910b95329c ("net: Add a function to splice pages into an skbuff for MSG_SPLICE_PAGES")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: David Howells <dhowells@redhat.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Link: https://lore.kernel.org/r/366861a7-87c8-4bbf-9101-69dd41021d07@kili.mountain
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/core/skbuff.c

index 653abd8..7c43382 100644 (file)
@@ -6931,8 +6931,8 @@ ssize_t skb_splice_from_iter(struct sk_buff *skb, struct iov_iter *iter,
        unsigned int i;
 
        while (iter->count > 0) {
-               ssize_t space, nr;
-               size_t off, len;
+               ssize_t space, nr, len;
+               size_t off;
 
                ret = -EMSGSIZE;
                space = frag_limit - skb_shinfo(skb)->nr_frags;