[sane-devel] SCSI: error during device I/O
Douglas Gilbert
dgilbert at interlog.com
Sat Mar 9 17:27:56 GMT 2002
Peter Kirchgessner wrote:
> Hello,
>
> some time ago problems have been reported with some 2.4.x kernels and
> SCSI-devices. What was working with 2.2.x, failed there with an "error
> during device I/O". The problem seemed to be a broken handling of
> SCSI-requests in the kernel (from mailing list: kernels 2.4.6, 2.4.10,
> 2.4.12 and 2.4.13).
> Does anybody know if the problem has been fixed ? And if so, at which
> kernel ? The ChangeLogs don't tell me much.
Peter,
If the error from the sg driver is actually EIO then it
indicates that the version 2 sg interface (based on the
sg_header struct) is being used. One shortcoming of this
interface was the difficulty of overcoming the default
assumption of a SCSI command size based on its opcode
(first byte). The SANE Canon backend was tripped up
by that and supplied a patch to the sg driver. That patch
probably hasn't worked (i.e. breaks when being applied)
since lk 2.2.6 (over 3 years ago). The original sg driver
(version 1) yielded EIO for just about every error it
encountered!
Any recent SANE backend driver should be using the sanei
layer which on a linux 2.4 series kernel will be using
the sg version 3 interface. In this case EIO should not
occur.
Doug Gilbert
More information about the sane-devel
mailing list