| From a3e9a72a7560cd74eea658f104f37ca90e03b08f Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Sun, 30 Sep 2018 18:03:11 +0200 |
| Subject: USB: serial: cypress_m8: fix interrupt-out transfer length |
| |
| From: Johan Hovold <johan@kernel.org> |
| |
| [ Upstream commit 56445eef55cb5904096fed7a73cf87b755dfffc7 ] |
| |
| Fix interrupt-out transfer length which was being set to the |
| transfer-buffer length rather than the size of the outgoing packet. |
| |
| Note that no slab data was leaked as the whole transfer buffer is always |
| cleared before each transfer. |
| |
| Fixes: 9aa8dae7b1fa ("cypress_m8: use usb_fill_int_urb where appropriate") |
| Signed-off-by: Johan Hovold <johan@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/usb/serial/cypress_m8.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/usb/serial/cypress_m8.c b/drivers/usb/serial/cypress_m8.c |
| index 90110de715e01..d0aa4c853f56a 100644 |
| --- a/drivers/usb/serial/cypress_m8.c |
| +++ b/drivers/usb/serial/cypress_m8.c |
| @@ -773,7 +773,7 @@ static void cypress_send(struct usb_serial_port *port) |
| |
| usb_fill_int_urb(port->interrupt_out_urb, port->serial->dev, |
| usb_sndintpipe(port->serial->dev, port->interrupt_out_endpointAddress), |
| - port->interrupt_out_buffer, port->interrupt_out_size, |
| + port->interrupt_out_buffer, actual_size, |
| cypress_write_int_callback, port, priv->write_urb_interval); |
| result = usb_submit_urb(port->interrupt_out_urb, GFP_ATOMIC); |
| if (result) { |
| -- |
| 2.20.1 |
| |