forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-11 04dd17822334871b23ea2862f7798fb0e0007777
kernel/drivers/usb/usbip/vhci_tx.c
....@@ -189,16 +189,14 @@
189189 struct vhci_unlink *unlink = NULL;
190190
191191 struct msghdr msg;
192
- struct kvec iov[3];
192
+ struct kvec iov;
193193 size_t txsize;
194
-
195194 size_t total_size = 0;
196195
197196 while ((unlink = dequeue_from_unlink_tx(vdev)) != NULL) {
198197 int ret;
199198 struct usbip_header pdu_header;
200199
201
- txsize = 0;
202200 memset(&pdu_header, 0, sizeof(pdu_header));
203201 memset(&msg, 0, sizeof(msg));
204202 memset(&iov, 0, sizeof(iov));
....@@ -214,11 +212,11 @@
214212
215213 usbip_header_correct_endian(&pdu_header, 1);
216214
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);
220218
221
- ret = kernel_sendmsg(vdev->ud.tcp_socket, &msg, iov, 1, txsize);
219
+ ret = kernel_sendmsg(vdev->ud.tcp_socket, &msg, &iov, 1, txsize);
222220 if (ret != txsize) {
223221 pr_err("sendmsg failed!, ret=%d for %zd\n", ret,
224222 txsize);