Re: SCSI CD-ROM driver bug in 2.0.14?

Ulrich Windl (ulrich.windl@rz.uni-regensburg.de)
Mon, 9 Sep 1996 08:07:01 +0200


On 6 Sep 96 at 12:55, Leonard N. Zubkoff wrote:

> From: "Ulrich Windl" <ulrich.windl@rz.uni-regensburg.de>
> Date: Fri, 6 Sep 1996 08:25:09 +0200
>
> I don4t know whether it was a bad mastered CD-R, or a bug in the
> SCSI CD-ROM driver, but I got a media error followed by the attempt to
> read past the end of the device. This was kernel 2.0.14:
>
> Sep 5 21:05:08 elf kernel: Max size:313558 Log zone size:2048
> Sep 5 21:05:08 elf kernel: First datazone:28 Root inode number 57344
> Sep 5 21:05:08 elf kernel: ISO9660 Extensions: RRIP_1991A
> Sep 5 21:18:49 elf kernel: scsi0: MEDIUM ERROR on channel 0, id 2, lun 0, CDB: Read (6) 04 c8 d5 02 00
> Sep 5 21:18:49 elf kernel: Current error sr0b:00: sense key Medium Error
> Sep 5 21:18:49 elf kernel: Additional sense indicates Circ unrecovered error
> Sep 5 21:18:49 elf kernel: CD-ROM I/O error: dev 0b:00, sector 1254232
> Sep 5 21:18:49 elf kernel: attempt to access beyond end of device
> Sep 5 21:18:49 elf kernel: 0b:00: rw=0, want=627117, limit=627116
> Sep 5 21:18:49 elf kernel: attempt to access beyond end of device
> Sep 5 21:18:49 elf kernel: 0b:00: rw=0, want=627118, limit=627116
> Sep 5 21:18:49 elf kernel: attempt to access beyond end of device
> Sep 5 21:18:49 elf kernel: 0b:00: rw=0, want=627117, limit=627116
> Sep 5 21:18:49 elf kernel: attempt to access beyond end of device
> Sep 5 21:18:49 elf kernel: 0b:00: rw=0, want=627118, limit=627116
>

Leonard,

thank you for replying! Yes, the error was reflected to user space,
and I couldn't read that particular file. So it's an invalid immage
on that CD?

Ulrich

> Did the error get reflected to user space or not? If not, then you've hit the
> result of some strangeness in the SCSI specification. Specifically, the SCSI
> specification allows for the value returned by READ CAPACITY to be up to 75 2K
> sectors past the last readable block. So we cannot know at the time we make
> the request whether it is in fact past the end or not. The present strategy is
> to see if we hit an error, and then handle it without returning an error to the
> user program. It does still result in these kernel messages, however. This
> also interacts with read-ahead; we could stop all read-ahead when near the
> expected end of the CD-ROM, but that could yield bad performance.
>
> BTW: Shouldn4t there be a blank between the "sr" and the "0b:00" in the
> error message?
>
> For better or worse, that's the format used by all these SCSI "print_sense"
> messages. It could certainly be improved.
>
> Leonard
>