Lines Matching refs:iomsg
200 struct io_async_msghdr *iomsg) in io_sendmsg_copy_hdr() argument
205 iomsg->msg.msg_name = &iomsg->addr; in io_sendmsg_copy_hdr()
206 iomsg->free_iov = iomsg->fast_iov; in io_sendmsg_copy_hdr()
207 ret = sendmsg_copy_msghdr(&iomsg->msg, sr->umsg, sr->msg_flags, in io_sendmsg_copy_hdr()
208 &iomsg->free_iov); in io_sendmsg_copy_hdr()
210 sr->msg_control = iomsg->msg.msg_control_user; in io_sendmsg_copy_hdr()
297 struct io_async_msghdr iomsg, *kmsg; in io_sendmsg() local
311 ret = io_sendmsg_copy_hdr(req, &iomsg); in io_sendmsg()
314 kmsg = &iomsg; in io_sendmsg()
430 static bool io_recvmsg_multishot_overflow(struct io_async_msghdr *iomsg) in io_recvmsg_multishot_overflow() argument
434 if (iomsg->namelen < 0) in io_recvmsg_multishot_overflow()
437 iomsg->namelen, &hdr)) in io_recvmsg_multishot_overflow()
439 if (check_add_overflow(hdr, (int)iomsg->controllen, &hdr)) in io_recvmsg_multishot_overflow()
446 struct io_async_msghdr *iomsg) in __io_recvmsg_copy_hdr() argument
455 ret = __copy_msghdr(&iomsg->msg, &msg, &iomsg->uaddr); in __io_recvmsg_copy_hdr()
461 sr->len = iomsg->fast_iov[0].iov_len = 0; in __io_recvmsg_copy_hdr()
462 iomsg->fast_iov[0].iov_base = NULL; in __io_recvmsg_copy_hdr()
463 iomsg->free_iov = NULL; in __io_recvmsg_copy_hdr()
467 if (copy_from_user(iomsg->fast_iov, msg.msg_iov, sizeof(*msg.msg_iov))) in __io_recvmsg_copy_hdr()
469 sr->len = iomsg->fast_iov[0].iov_len; in __io_recvmsg_copy_hdr()
470 iomsg->free_iov = NULL; in __io_recvmsg_copy_hdr()
474 iomsg->namelen = msg.msg_namelen; in __io_recvmsg_copy_hdr()
475 iomsg->controllen = msg.msg_controllen; in __io_recvmsg_copy_hdr()
476 if (io_recvmsg_multishot_overflow(iomsg)) in __io_recvmsg_copy_hdr()
480 iomsg->free_iov = iomsg->fast_iov; in __io_recvmsg_copy_hdr()
482 &iomsg->free_iov, &iomsg->msg.msg_iter, in __io_recvmsg_copy_hdr()
493 struct io_async_msghdr *iomsg) in __io_compat_recvmsg_copy_hdr() argument
503 ret = __get_compat_msghdr(&iomsg->msg, &msg, &iomsg->uaddr); in __io_compat_recvmsg_copy_hdr()
511 iomsg->free_iov = NULL; in __io_compat_recvmsg_copy_hdr()
527 iomsg->namelen = msg.msg_namelen; in __io_compat_recvmsg_copy_hdr()
528 iomsg->controllen = msg.msg_controllen; in __io_compat_recvmsg_copy_hdr()
529 if (io_recvmsg_multishot_overflow(iomsg)) in __io_compat_recvmsg_copy_hdr()
533 iomsg->free_iov = iomsg->fast_iov; in __io_compat_recvmsg_copy_hdr()
535 UIO_FASTIOV, &iomsg->free_iov, in __io_compat_recvmsg_copy_hdr()
536 &iomsg->msg.msg_iter, true); in __io_compat_recvmsg_copy_hdr()
546 struct io_async_msghdr *iomsg) in io_recvmsg_copy_hdr() argument
548 iomsg->msg.msg_name = &iomsg->addr; in io_recvmsg_copy_hdr()
549 iomsg->msg.msg_iter.nr_segs = 0; in io_recvmsg_copy_hdr()
553 return __io_compat_recvmsg_copy_hdr(req, iomsg); in io_recvmsg_copy_hdr()
556 return __io_recvmsg_copy_hdr(req, iomsg); in io_recvmsg_copy_hdr()
761 struct io_async_msghdr iomsg, *kmsg; in io_recvmsg() local
775 ret = io_recvmsg_copy_hdr(req, &iomsg); in io_recvmsg()
778 kmsg = &iomsg; in io_recvmsg()
1205 struct io_async_msghdr iomsg, *kmsg; in io_sendmsg_zc() local
1221 ret = io_sendmsg_copy_hdr(req, &iomsg); in io_sendmsg_zc()
1224 kmsg = &iomsg; in io_sendmsg_zc()