[240] in linux-scsi channel archive
Re: I'm having generic SCSI problems with scanner
daemon@ATHENA.MIT.EDU (Drew Eckhardt)
Sun Jun 11 15:09:25 1995
To: ken@best.com
cc: linux-scsi@vger.rutgers.edu (linux SCSI mailing list)
In-reply-to: Your message of "Sat, 10 Jun 1995 22:34:42 PDT."
<199506110534.WAA00434@ken.vip.best.com>
Date: Sun, 11 Jun 1995 12:33:20 -0600
From: Drew Eckhardt <drew@poohsticks.org>
In message <199506110534.WAA00434@ken.vip.best.com>, wkn@ken.vip.best.com write
s:
>My kernel locks up when I try to use my scanner, an HP ScanJet IIc.
>The program, hpscanpbm, uses the generic SCSI device to try to talk to
>the scanner. I have an Adaptec 1515.
>
>I would appreciate any pointers on possible solutions to my problem,
>or how to go about debugging the 152x SCSI driver. (I don't know much
>about drivers, and haven't looked at the code.)
Change the panic()s to something a bit less fatal. Compile the
driver as a loadable module with -g. Fix the relevant timeouts to
be compatable with your debugging. Grab KGDB. Change the interrupt
handler so the actual work is done in a user process which can sleep (ie,
the process which is responsible for the scsi_do_cmd()). Use semaphores to
halt execution any place you want to examine things interactively.
Have fun.
In a pinch, strategic printk()s can be used, but aren't nearly as
creative :-)
You also shouldn't rule out bugs in the generic SCSI driver - just because
the problem only occurs with the Adaptec doesn't mean it is due to a bug
in the Adaptec driver.
>Even though it may work, I really don't want to use both devices on
>the 850, because I never would have bought the CD-ROM drive which
>included the 1515 controller.
The 850 is a bletcherous piece of hardware (ie, handshaking hardware doesn't
let you know if it detected a high->low->high transition on REQ, or the
watchdog timer fired and you're still on the same high state). Really icky.
I'd strongly recommend avoiding it, the Seagate, and their brethern.