Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

usbip: Replace unused kvec array with single variable in vhci_send_cmd_unlink()

vhci_send_cmd_unlink() declears kvec array of size 3 but it actually
uses just one element of the array. So, remove kvec array and replace
it with single kvec variable.

Signed-off-by: Suwan Kim <suwan.kim027@gmail.com>
Acked-by: Shuah Khan <skhan@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Suwan Kim and committed by
Greg Kroah-Hartman
cf2b5010 e60e9823

+5 -7
+5 -7
drivers/usb/usbip/vhci_tx.c
··· 144 144 struct vhci_unlink *unlink = NULL; 145 145 146 146 struct msghdr msg; 147 - struct kvec iov[3]; 147 + struct kvec iov; 148 148 size_t txsize; 149 - 150 149 size_t total_size = 0; 151 150 152 151 while ((unlink = dequeue_from_unlink_tx(vdev)) != NULL) { 153 152 int ret; 154 153 struct usbip_header pdu_header; 155 154 156 - txsize = 0; 157 155 memset(&pdu_header, 0, sizeof(pdu_header)); 158 156 memset(&msg, 0, sizeof(msg)); 159 157 memset(&iov, 0, sizeof(iov)); ··· 167 169 168 170 usbip_header_correct_endian(&pdu_header, 1); 169 171 170 - iov[0].iov_base = &pdu_header; 171 - iov[0].iov_len = sizeof(pdu_header); 172 - txsize += sizeof(pdu_header); 172 + iov.iov_base = &pdu_header; 173 + iov.iov_len = sizeof(pdu_header); 174 + txsize = sizeof(pdu_header); 173 175 174 - ret = kernel_sendmsg(vdev->ud.tcp_socket, &msg, iov, 1, txsize); 176 + ret = kernel_sendmsg(vdev->ud.tcp_socket, &msg, &iov, 1, txsize); 175 177 if (ret != txsize) { 176 178 pr_err("sendmsg failed!, ret=%d for %zd\n", ret, 177 179 txsize);