Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target...
[cascardo/linux.git] / drivers / target / iscsi / iscsi_target_util.c
index 0b68c2e..bcd88ec 100644 (file)
@@ -1326,21 +1326,19 @@ static int iscsit_do_rx_data(
        struct iscsi_conn *conn,
        struct iscsi_data_count *count)
 {
-       int data = count->data_length, rx_loop = 0, total_rx = 0, iov_len;
-       struct kvec *iov_p;
+       int data = count->data_length, rx_loop = 0, total_rx = 0;
        struct msghdr msg;
 
        if (!conn || !conn->sock || !conn->conn_ops)
                return -1;
 
        memset(&msg, 0, sizeof(struct msghdr));
-
-       iov_p = count->iov;
-       iov_len = count->iov_count;
+       iov_iter_kvec(&msg.msg_iter, READ | ITER_KVEC,
+                     count->iov, count->iov_count, data);
 
        while (total_rx < data) {
-               rx_loop = kernel_recvmsg(conn->sock, &msg, iov_p, iov_len,
-                                       (data - total_rx), MSG_WAITALL);
+               rx_loop = sock_recvmsg(conn->sock, &msg,
+                                     (data - total_rx), MSG_WAITALL);
                if (rx_loop <= 0) {
                        pr_debug("rx_loop: %d total_rx: %d\n",
                                rx_loop, total_rx);