[sane-devel] Fwd: Re: umax 2100S / sane-1.0.9 does not work, sane.1.0.3 does work

abel deuring a.deuring@satzbau-gmbh.de
Wed, 04 Dec 2002 21:06:07 +0100

Marek Blaszkowski wrote:
> Hello.
>>What is the debug output, when a scan is started with the environment 
>>variable SANE_DEBUG_SANEI_SCSI=255 ?
> I attached file out256.txt with debug messages.
> The line with the message: 
> [sanei_scsi] sanei_scsi_req_wait: SCSI command complained: Device or
> resource busy
> appear after the kernel (2.4.20) says:
> ncr53c810a-0-<5,0>: extraneous data discarded.
> ncr53c810a-0-<5,0>: COMMAND FAILED (89 0) @c1319800.
> and scanner just stop scanning (about 2 cm from the top of scanning
> region/a4page). I need to power cycling the scanner to reset.
> sane 1.0.3 works w/o problems.
> I also attached umax.conf (I changed values of scsi-buffer-size-* but it
> does not help). The strange thing is that I can make a preview (using
> xscanimage) several times w/o problems (100dpi) but when I try to scan
> (selected region or whole page at the same 100dpi) it fails.


the debug output indicates that your linux box has a really ancient 
version of sg.h in /usr/include/scsi; with a newer version, we would get 
a bit more detailed error messages and better error handling. I am not 
sure, if this will fix the problem, but we might get a step further.

Please copy sg.h from /usr/src/include/linux (or whereever else your 
kernel sources reside) to /usr/include/scsi and compile Sane again.

I also had a short look into the file ncr53c8xx.c; if I understnd the 
kernel message correctly, the number 89 means "busy", "timeout", 
"command done". Some time ago (I think, for Sane version 1.0.8 or 
1.0.9), the default timeout value for SCSI commands was unified for all 
operating systems supported by Sane, whioch meant for Linux a decrease 
from 600 seconds to 120 seconds. Perhaps you can fix the problem, if you 
  increase the timeout value by setting the environment variable 
SANE_SCSICMD_TIMEOUT, which specifies the timeout vaule in seconds, to a 
somewhat larger value.