[Cc'ed to poster and scanner.c maintainer] On 2002-09-27 15:32:25, [EMAIL PROTECTED] (Jon Wikne) wrote: > I have this strange problem using my USB slide/film scanner > Nikon Coolscan LS40. The problem is present using both Sane > (frontend coolscan2.c) and Vuescan on the application side. > The problem causes a complete hang of the kernel USB scanner > module, reboot being the only known recovery (rmmod / insmod > is not enough).
I have the exact same problem - ever since 2.2.x afaik, using both plain uhci and the alt driver. After discussions with the author of Vuescan, I have been able to piece together the following information: - The freeze occurs when the scanner seems to want to send more data over usb than usb/scanner.c can handle. - read_scanner() in scanner.c receives -75 (EOVERFLOW) from usb_bulk_message, which it does not know how to handle. That causes the following to be syslogged: scanner.c: read_scanner(0): funky result:-75. - thereafter the usb scanner driver is essentially hosed. It never seems to leave the read_scanner() function, and merely sits in a loop, making no progress, intermittently logging "usb_control/bulk_msg: timeout" - A workaround is to modify usb/scanner.h and change IBUF_SIZE to be 64k instead of 32k. Why this works I do not know. - A surefire way of reproducing the bug is to do any scan whose width is 2870 pixels wide, at 2900 dpi. Scan height has no effect, which seems consistent with the fact that this is a data transfer problem - the wider the scanline, the more data to transfer. How to proceed from here? -- ,_ /_) /| / / i e t e r / |/ a g e l http://www.nagel.co.za ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel