| .. | .. |
|---|
| 189 | 189 | struct vhci_unlink *unlink = NULL; |
|---|
| 190 | 190 | |
|---|
| 191 | 191 | struct msghdr msg; |
|---|
| 192 | | - struct kvec iov[3]; |
|---|
| 192 | + struct kvec iov; |
|---|
| 193 | 193 | size_t txsize; |
|---|
| 194 | | - |
|---|
| 195 | 194 | size_t total_size = 0; |
|---|
| 196 | 195 | |
|---|
| 197 | 196 | while ((unlink = dequeue_from_unlink_tx(vdev)) != NULL) { |
|---|
| 198 | 197 | int ret; |
|---|
| 199 | 198 | struct usbip_header pdu_header; |
|---|
| 200 | 199 | |
|---|
| 201 | | - txsize = 0; |
|---|
| 202 | 200 | memset(&pdu_header, 0, sizeof(pdu_header)); |
|---|
| 203 | 201 | memset(&msg, 0, sizeof(msg)); |
|---|
| 204 | 202 | memset(&iov, 0, sizeof(iov)); |
|---|
| .. | .. |
|---|
| 214 | 212 | |
|---|
| 215 | 213 | usbip_header_correct_endian(&pdu_header, 1); |
|---|
| 216 | 214 | |
|---|
| 217 | | - iov[0].iov_base = &pdu_header; |
|---|
| 218 | | - iov[0].iov_len = sizeof(pdu_header); |
|---|
| 219 | | - txsize += sizeof(pdu_header); |
|---|
| 215 | + iov.iov_base = &pdu_header; |
|---|
| 216 | + iov.iov_len = sizeof(pdu_header); |
|---|
| 217 | + txsize = sizeof(pdu_header); |
|---|
| 220 | 218 | |
|---|
| 221 | | - ret = kernel_sendmsg(vdev->ud.tcp_socket, &msg, iov, 1, txsize); |
|---|
| 219 | + ret = kernel_sendmsg(vdev->ud.tcp_socket, &msg, &iov, 1, txsize); |
|---|
| 222 | 220 | if (ret != txsize) { |
|---|
| 223 | 221 | pr_err("sendmsg failed!, ret=%d for %zd\n", ret, |
|---|
| 224 | 222 | txsize); |
|---|