Re: Kernel becomes unresponsive because of SCSI

Guest section DW (dwguest@win.tue.nl)
Wed, 23 Sep 1998 01:34:52 +0200 (MET DST)


From owner-linux-kernel-outgoing@vger.rutgers.edu Tue Sep 22 18:58:35 1998
From: "David B. Rees" <dbr@oto.dyn.ml.org>

... However, if I turn on the scanner after bootup
(it's a Microtek V300), and then try to recognize it with
echo "scsi add-single-device 0 0 6 0" > /proc/scsi/scsi
the driver will go into a endless loop of resetting the scsi-bus, and if I let
it go too long, it will freeze the machine. If I turn off the scanner quick
enough, the driver recovers. Is this a problem with the scanner? (seems
possible) Or is it a driver problem? (also possible)

It is a combination of two or three problems.
One is a problem with your hardware. SCSI on perfect hardware tends
to be just fine. The second may be your driver - I don't know.
The third is the fact that scsi_error.c is broken.
When something goes wrong, it tries to repair things by increasingly
severe methods, not giving up before it has killed the entire machine.

It is a bad bug that scsi_error goes on and does a bus reset when there
is no indication at all that anything is wrong with the SCSI bus.
E.g., when SCSI disk transfers work just fine.

Thus, the present situation is that a bad block on a disk, a bad cdrom,
not completely compliant scanner hardware (SCSI 1, but not really SCSI 2)
will kill a Linux system because of the endless loop of bus resets generated.
Sometimes even disks that have always been fine seem to be damaged by such an
avalanche of bus resets.

I hope the more severe half of scsi_error will be removed soon.

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