summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorLucas Stach <l.stach@pengutronix.de>2024-01-17 22:06:28 +0100
committerChuck Lever <chuck.lever@oracle.com>2024-01-17 22:54:33 +0100
commit1d9cabe2817edd215779dc9c2fe5e7ab9aac0704 (patch)
tree64990395cc6ce337d4a9579b87d4e34fe6099915 /net
parentnfsd: rename nfsd_last_thread() to nfsd_destroy_serv() (diff)
downloadlinux-1d9cabe2817edd215779dc9c2fe5e7ab9aac0704.tar.xz
linux-1d9cabe2817edd215779dc9c2fe5e7ab9aac0704.zip
SUNRPC: use request size to initialize bio_vec in svc_udp_sendto()
Use the proper size when setting up the bio_vec, as otherwise only zero-length UDP packets will be sent. Fixes: baabf59c2414 ("SUNRPC: Convert svc_udp_sendto() to use the per-socket bio_vec array") Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Diffstat (limited to 'net')
-rw-r--r--net/sunrpc/svcsock.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c
index bfb2f78523a8..545017a3daa4 100644
--- a/net/sunrpc/svcsock.c
+++ b/net/sunrpc/svcsock.c
@@ -717,12 +717,12 @@ static int svc_udp_sendto(struct svc_rqst *rqstp)
ARRAY_SIZE(rqstp->rq_bvec), xdr);
iov_iter_bvec(&msg.msg_iter, ITER_SOURCE, rqstp->rq_bvec,
- count, 0);
+ count, rqstp->rq_res.len);
err = sock_sendmsg(svsk->sk_sock, &msg);
if (err == -ECONNREFUSED) {
/* ICMP error on earlier request. */
iov_iter_bvec(&msg.msg_iter, ITER_SOURCE, rqstp->rq_bvec,
- count, 0);
+ count, rqstp->rq_res.len);
err = sock_sendmsg(svsk->sk_sock, &msg);
}