lkml.org 
[lkml]   [1999]   [May]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: NEC 6x external scsi cdrom with kernel 2.2.3?
On Tue, Mar 16 1999, Tuan Hoang wrote:
> Hi,
>
> I used to have a plextor 12x scsi internal (worked fine) but now I'm
> stuck with an external nec 6x scsi. xcdroast doesn't seem
> to recognize an cd's which I have inside the cdrom. I can
> mount the cdrom on it but I noticed that in dmesg that
> it says that there are illegal requests before hand.
>
> sr1: CDROM (ioctl) reports ILLEGAL REQUEST.
> sr1: CDROM (ioctl) reports ILLEGAL REQUEST.
> sr1: CDROM (ioctl) reports ILLEGAL REQUEST.
> sr1: CDROM (ioctl) reports ILLEGAL REQUEST.
> ISO 9660 Extensions: RRIP_1991A
>
> I'm using an adaptec 2940 ultra pci scsi on a Tyan board with
> an AMD K6-2 350. Also I'm using Red Hat 5.2 with all the updated rpms
> as of this writing and kernel 2.2.3.
> I'm wondering if the illegal requests are what's causing xcdroast to fail.

I recently bumped into this myself. It seems the NEC drive fails the
capabilites probe and the sense check only checks for invalid opcode,
where the probe will result in a invalid field in cdb. Could you try
this patch? Or get 2.2.7-ac1, which included it and lots of other
things for shutting up the SCSI CD-ROM subsystem a bit.

--
* Jens Axboe <axboe@image.dk>
* Linux CD-ROM Maintainer
diff -ur --exclude-from /home/axboe/cdrom/exclude-from virgin/drivers/scsi/sr_ioctl.c linux/drivers/scsi/sr_ioctl.c
--- virgin/drivers/scsi/sr_ioctl.c Thu Feb 25 01:27:54 1999
+++ linux/drivers/scsi/sr_ioctl.c Sun Apr 25 18:55:06 1999
@@ -120,9 +122,11 @@
if (!quiet)
printk(KERN_ERR "sr%d: CDROM (ioctl) reports ILLEGAL "
"REQUEST.\n", target);
- if (SCpnt->sense_buffer[12] == 0x20 &&
+ if ((SCpnt->sense_buffer[12] == 0x20 ||
+ SCpnt->sense_buffer[12] == 0x24) &&
SCpnt->sense_buffer[13] == 0x00) {
/* sense: Invalid command operation code */
+ /* or Invalid field in cdb */
err = -EDRIVE_CANT_DO_THIS;
} else {
err = -EINVAL;
\
 
 \ /
  Last update: 2005-03-22 13:51    [W:0.037 / U:1.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site