caif: don't assume iov_iter type

Message ID 20230111184245.3784393-1-kbusch@meta.com
State New
Headers
Series caif: don't assume iov_iter type |

Commit Message

Keith Busch Jan. 11, 2023, 6:42 p.m. UTC
  From: Keith Busch <kbusch@kernel.org>

The details of the iov_iter types are appropriately abstracted, so
there's no need to check for specific type fields. Just let the
abstractions handle it.

This is preparing for io_uring/net's io_send to utilize the more
efficient ITER_UBUF.

Signed-off-by: Keith Busch <kbusch@kernel.org>
---
 net/caif/caif_socket.c | 4 ----
 1 file changed, 4 deletions(-)
  

Comments

Jens Axboe Jan. 11, 2023, 9:58 p.m. UTC | #1
On 1/11/23 11:42 AM, Keith Busch wrote:
> From: Keith Busch <kbusch@kernel.org>
> 
> The details of the iov_iter types are appropriately abstracted, so
> there's no need to check for specific type fields. Just let the
> abstractions handle it.
> 
> This is preparing for io_uring/net's io_send to utilize the more
> efficient ITER_UBUF.

Looks good to me - the correct return here would be -EFAULT as well,
not -EINVAL. Which is what will happen once memcpy_from_msg() is
called anyway.

Reviewed-by: Jens Axboe <axboe@kernel.dk>
  
patchwork-bot+netdevbpf@kernel.org Jan. 14, 2023, 5 a.m. UTC | #2
Hello:

This patch was applied to netdev/net-next.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Wed, 11 Jan 2023 10:42:45 -0800 you wrote:
> From: Keith Busch <kbusch@kernel.org>
> 
> The details of the iov_iter types are appropriately abstracted, so
> there's no need to check for specific type fields. Just let the
> abstractions handle it.
> 
> This is preparing for io_uring/net's io_send to utilize the more
> efficient ITER_UBUF.
> 
> [...]

Here is the summary with links:
  - caif: don't assume iov_iter type
    https://git.kernel.org/netdev/net-next/c/c19175141079

You are awesome, thank you!
  

Patch

diff --git a/net/caif/caif_socket.c b/net/caif/caif_socket.c
index 748be72532485..1f2c1d7b90e23 100644
--- a/net/caif/caif_socket.c
+++ b/net/caif/caif_socket.c
@@ -533,10 +533,6 @@  static int caif_seqpkt_sendmsg(struct socket *sock, struct msghdr *msg,
 	if (msg->msg_namelen)
 		goto err;
 
-	ret = -EINVAL;
-	if (unlikely(msg->msg_iter.nr_segs == 0) ||
-	    unlikely(msg->msg_iter.iov->iov_base == NULL))
-		goto err;
 	noblock = msg->msg_flags & MSG_DONTWAIT;
 
 	timeo = sock_sndtimeo(sk, noblock);