diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2014-11-24 10:42:55 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2014-12-09 16:29:03 -0500 |
commit | c0371da6047abd261bc483c744dbc7d81a116172 (patch) | |
tree | 73b4d685f311a83e04f3a684ce18225b409b3f5f /net/rxrpc/ar-output.c | |
parent | d838df2e5dcbb6ed4d82854869e9a30f9aeef6da (diff) |
put iov_iter into msghdr
Note that the code _using_ ->msg_iter at that point will be very
unhappy with anything other than unshifted iovec-backed iov_iter.
We still need to convert users to proper primitives.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'net/rxrpc/ar-output.c')
-rw-r--r-- | net/rxrpc/ar-output.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/net/rxrpc/ar-output.c b/net/rxrpc/ar-output.c index 0b4b9a79f5ab..86e0f10aa2c0 100644 --- a/net/rxrpc/ar-output.c +++ b/net/rxrpc/ar-output.c | |||
@@ -531,14 +531,12 @@ static int rxrpc_send_data(struct kiocb *iocb, | |||
531 | struct rxrpc_skb_priv *sp; | 531 | struct rxrpc_skb_priv *sp; |
532 | unsigned char __user *from; | 532 | unsigned char __user *from; |
533 | struct sk_buff *skb; | 533 | struct sk_buff *skb; |
534 | struct iovec *iov; | 534 | const struct iovec *iov; |
535 | struct sock *sk = &rx->sk; | 535 | struct sock *sk = &rx->sk; |
536 | long timeo; | 536 | long timeo; |
537 | bool more; | 537 | bool more; |
538 | int ret, ioc, segment, copied; | 538 | int ret, ioc, segment, copied; |
539 | 539 | ||
540 | _enter(",,,{%zu},%zu", msg->msg_iovlen, len); | ||
541 | |||
542 | timeo = sock_sndtimeo(sk, msg->msg_flags & MSG_DONTWAIT); | 540 | timeo = sock_sndtimeo(sk, msg->msg_flags & MSG_DONTWAIT); |
543 | 541 | ||
544 | /* this should be in poll */ | 542 | /* this should be in poll */ |
@@ -547,8 +545,8 @@ static int rxrpc_send_data(struct kiocb *iocb, | |||
547 | if (sk->sk_err || (sk->sk_shutdown & SEND_SHUTDOWN)) | 545 | if (sk->sk_err || (sk->sk_shutdown & SEND_SHUTDOWN)) |
548 | return -EPIPE; | 546 | return -EPIPE; |
549 | 547 | ||
550 | iov = msg->msg_iov; | 548 | iov = msg->msg_iter.iov; |
551 | ioc = msg->msg_iovlen - 1; | 549 | ioc = msg->msg_iter.nr_segs - 1; |
552 | from = iov->iov_base; | 550 | from = iov->iov_base; |
553 | segment = iov->iov_len; | 551 | segment = iov->iov_len; |
554 | iov++; | 552 | iov++; |