Re: Linux 2.4.20-pre4-ac2

Itai Nahshon (nahshon@actcom.co.il)
Tue, 27 Aug 2002 02:01:53 +0300


On Monday 26 August 2002 13:35 pm, Alan Cox wrote:
> o Error handling clean ups for USB storage (Pete Zaitcev)

While USB-storage error handling is looked at...

--- linux-2.4.20-pre4-ac2-i2/drivers/usb/storage/transport.c.orig Mon Aug 26
23:24:09 2002
+++ linux-2.4.20-pre4-ac2-i2/drivers/usb/storage/transport.c Mon Aug 26
23:24:53 2002
@@ -1164,6 +1164,10 @@
ret = USB_STOR_TRANSPORT_ABORTED;
goto out;
}
+ if (result == US_BULK_TRANSFER_FAILED) {
+ ret = USB_STOR_TRANSPORT_FAILED;
+ goto out;
+ }
}
}

There's a check for US_BULK_TRANSFER_FAILED after
a call to usb_stor_transfer everywhere except here... Is it for
a reason?

Backround:
A long time ago (linux-2.4.19-pre4-ac2) I got a USB disk
related hang (all processes accessing it stuck in state D).
It happened while reading from a USB-storage device
(disk attached to a USB-IDE bridge).

The system log has just these two errors:
usb-uhci.c: interrupt, status 3, frame# 1660
usb_control/bulk_msg: timeout

That problem happened only once. I had to reboot in order
to continue use the device.

Is it possible that the missing check is the cause for that
hang?

-- Itai

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/