[PATCH 4/5] staging: octeon-usb: return transferred bytes only on success
Aaro Koskinen
aaro.koskinen at iki.fi
Sun Jun 29 19:52:55 UTC 2014
Return transferred bytes only when transfer was successful.
Signed-off-by: Aaro Koskinen <aaro.koskinen at iki.fi>
---
drivers/staging/octeon-usb/octeon-hcd.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/staging/octeon-usb/octeon-hcd.c b/drivers/staging/octeon-usb/octeon-hcd.c
index 59cf921..a65b708 100644
--- a/drivers/staging/octeon-usb/octeon-hcd.c
+++ b/drivers/staging/octeon-usb/octeon-hcd.c
@@ -2162,7 +2162,11 @@ static void octeon_usb_urb_complete_callback(struct cvmx_usb_state *usb,
struct usb_hcd *hcd = octeon_to_hcd(priv);
struct device *dev = hcd->self.controller;
- urb->actual_length = bytes_transferred;
+ if (likely(status == CVMX_USB_COMPLETE_SUCCESS))
+ urb->actual_length = bytes_transferred;
+ else
+ urb->actual_length = 0;
+
urb->hcpriv = NULL;
/* For Isochronous transactions we need to update the URB packet status
--
2.0.0
More information about the devel
mailing list