Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 01e97e65 authored by Al Viro's avatar Al Viro
Browse files

new helper: msg_data_left()



convert open-coded instances

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent a2dd3793
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -56,8 +56,8 @@ static int hash_sendmsg(struct socket *sock, struct msghdr *msg,


	ctx->more = 0;
	ctx->more = 0;


	while (iov_iter_count(&msg->msg_iter)) {
	while (msg_data_left(msg)) {
		int len = iov_iter_count(&msg->msg_iter);
		int len = msg_data_left(msg);


		if (len > limit)
		if (len > limit)
			len = limit;
			len = limit;
+2 −2
Original line number Original line Diff line number Diff line
@@ -641,7 +641,7 @@ static int skcipher_recvmsg_sync(struct socket *sock, struct msghdr *msg,
	long copied = 0;
	long copied = 0;


	lock_sock(sk);
	lock_sock(sk);
	while (iov_iter_count(&msg->msg_iter)) {
	while (msg_data_left(msg)) {
		sgl = list_first_entry(&ctx->tsgl,
		sgl = list_first_entry(&ctx->tsgl,
				       struct skcipher_sg_list, list);
				       struct skcipher_sg_list, list);
		sg = sgl->sg;
		sg = sgl->sg;
@@ -655,7 +655,7 @@ static int skcipher_recvmsg_sync(struct socket *sock, struct msghdr *msg,
				goto unlock;
				goto unlock;
		}
		}


		used = min_t(unsigned long, ctx->used, iov_iter_count(&msg->msg_iter));
		used = min_t(unsigned long, ctx->used, msg_data_left(msg));


		used = af_alg_make_sg(&ctx->rsgl, &msg->msg_iter, used);
		used = af_alg_make_sg(&ctx->rsgl, &msg->msg_iter, used);
		err = used;
		err = used;
+2 −2
Original line number Original line Diff line number Diff line
@@ -357,13 +357,13 @@ static void handle_tx(struct vhost_net *net)
		iov_iter_init(&msg.msg_iter, WRITE, vq->iov, out, len);
		iov_iter_init(&msg.msg_iter, WRITE, vq->iov, out, len);
		iov_iter_advance(&msg.msg_iter, hdr_size);
		iov_iter_advance(&msg.msg_iter, hdr_size);
		/* Sanity check */
		/* Sanity check */
		if (!iov_iter_count(&msg.msg_iter)) {
		if (!msg_data_left(&msg)) {
			vq_err(vq, "Unexpected header len for TX: "
			vq_err(vq, "Unexpected header len for TX: "
			       "%zd expected %zd\n",
			       "%zd expected %zd\n",
			       len, hdr_size);
			       len, hdr_size);
			break;
			break;
		}
		}
		len = iov_iter_count(&msg.msg_iter);
		len = msg_data_left(&msg);


		zcopy_used = zcopy && len >= VHOST_GOODCOPY_LEN
		zcopy_used = zcopy && len >= VHOST_GOODCOPY_LEN
				   && (nvq->upend_idx + 1) % UIO_MAXIOV !=
				   && (nvq->upend_idx + 1) % UIO_MAXIOV !=
+5 −0
Original line number Original line Diff line number Diff line
@@ -139,6 +139,11 @@ static inline struct cmsghdr * cmsg_nxthdr (struct msghdr *__msg, struct cmsghdr
	return __cmsg_nxthdr(__msg->msg_control, __msg->msg_controllen, __cmsg);
	return __cmsg_nxthdr(__msg->msg_control, __msg->msg_controllen, __cmsg);
}
}


static inline size_t msg_data_left(struct msghdr *msg)
{
	return iov_iter_count(&msg->msg_iter);
}

/* "Socket"-level control message types: */
/* "Socket"-level control message types: */


#define	SCM_RIGHTS	0x01		/* rw: access rights (array of int) */
#define	SCM_RIGHTS	0x01		/* rw: access rights (array of int) */
+1 −1
Original line number Original line Diff line number Diff line
@@ -673,7 +673,7 @@ int skb_copy_and_csum_datagram_msg(struct sk_buff *skb,
	if (!chunk)
	if (!chunk)
		return 0;
		return 0;


	if (iov_iter_count(&msg->msg_iter) < chunk) {
	if (msg_data_left(msg) < chunk) {
		if (__skb_checksum_complete(skb))
		if (__skb_checksum_complete(skb))
			goto csum_error;
			goto csum_error;
		if (skb_copy_datagram_msg(skb, hlen, msg, chunk))
		if (skb_copy_datagram_msg(skb, hlen, msg, chunk))
Loading