# SCSI DVD Drive Errors

## caramboo

Hi

I recently moved from 2.6.12-gentoo-r7 to 2.6.14-gentoo-r6.  At the same time I got automounting working with pmount/dbus and emerged KDE 3.5.

In the confusion of getting used to pmount etc I found that my Pioneer SCSI DVD Drive seemed to have developed a fault which I initially put down to the new automounting enviroment.  After spending most of an afternoon trying to find the fault and almost giving up on the drive as dead I thought about booting back into 2.6.12.  It worked, the seemingly dead drive sprang back into life and works as happily as before.

So, what's changed SCSI wise 2.6.12 --> 2.6.14?  

Here's what dmesg shows for both kernels:-

```

 ACPI: PCI Interrupt 0000:00:0d.0[A] -> GSI 16 (level, low) -> IRQ 19

scsi1 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 7.0

        <Adaptec aic7899 Ultra160 SCSI adapter>

        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs

  Vendor: PIONEER   Model: DVD-ROM DVD-305   Rev: 1.06

  Type:   CD-ROM                             ANSI SCSI revision: 02

 target1:0:2: Beginning Domain Validation

 target1:0:2: Domain Validation skipping write tests

 target1:0:2: FAST-20 SCSI 20.0 MB/s ST (50 ns, offset 16)

 target1:0:2: Ending Domain Validation

```

Then, for the 2.6.14 kernel, this is what it says after bunging in a DVD:-

```

(scsi1:A:2:0): No or incomplete CDB sent to device.

scsi1: Issued Channel A Bus Reset. 1 SCBs aborted

sr 1:0:2:0: SCSI error: return code = 0x10000

(scsi1:A:2:0): No or incomplete CDB sent to device.

scsi1: Issued Channel A Bus Reset. 1 SCBs aborted

sr 1:0:2:0: SCSI error: return code = 0x10000

```

..ad infinitum.

I tried compiling the "old" adaptec driver in the kernel sources but that didn't work either.

Anyone any ideas?

----------

## Jaglover

I have 2.6.14-r2 and everything works with aic7xxx. (I have DVD and CDR). Could it be some termination or cabling problem? Could you post output of cat /proc/scsi/aic7xxx/0 please?

----------

## caramboo

 *Jaglover wrote:*   

> I have 2.6.14-r2 and everything works with aic7xxx. (I have DVD and CDR). Could it be some termination or cabling problem? Could you post output of cat /proc/scsi/aic7xxx/0 please?

 

Ok dokey:-

edited to show cat /proc/scsi/aic7xxx/1

```

# cat /proc/scsi/aic7xxx/1

Adaptec AIC7xxx driver version: 7.0

Adaptec aic7899 Ultra160 SCSI adapter

aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs

Allocated SCBs: 4, SG List Length: 128

Serial EEPROM:

0xc33a 0xc33a 0xc33a 0xc33a 0xc33a 0xc33a 0xc33a 0xc33a

0xc33a 0xc33a 0xc33a 0xc33a 0xc33a 0xc33a 0xc33a 0xc33a

0x08f4 0x585e 0x2807 0x0010 0x0300 0xffff 0xffff 0xffff

0xffff 0xffff 0xffff 0xffff 0xffff 0xffff 0x0250 0xc250

Target 0 Negotiation Settings

        User: 160.000MB/s transfers (80.000MHz DT, offset 127, 16bit)

Target 1 Negotiation Settings

        User: 160.000MB/s transfers (80.000MHz DT, offset 127, 16bit)

Target 2 Negotiation Settings

        User: 160.000MB/s transfers (80.000MHz DT, offset 127, 16bit)

        Goal: 20.000MB/s transfers (20.000MHz, offset 16)

        Curr: 20.000MB/s transfers (20.000MHz, offset 16)

        Channel A Target 2 Lun 0 Settings

                Commands Queued 273935

                Commands Active 0

                Command Openings 1

                Max Tagged Openings 0

                Device Queue Frozen Count 0

```

I have an active terminator on both ends of the SCSI cable and I've tried adding/removing the termination jumper on the back of the drive.  It's really puzzling because the drive has worked flawlessly from 2.4.* through to 2.6.12.

----------

## Jaglover

OK. My (very wild) guess is: some setting with newer kernel is a little more agressive and this is why your misconfigured(?) h/w fails to follow. Termination thing. You should not use terminator on controller side, controller terminates it's end automatically. Active terminators require external power. If your DVD has no jumper marked TPwr or something like this and this is not activated then with current setup the device side is probably not terminated. 

My advice. Remove both external terminators. Enable internal terminator in DVD-ROM. Connect one end of cable to controller and the other end to the DVD. Do not use sockets in the middle. Open ends cause serious problems. Cut your cable shorter if necessary.

----------

## caramboo

Thanks for your comments.  I tried all sorts yesterday after reading your reply, removing terminators, shortening the cable, changing IDs, swapping chains and all gave the same result.  A duff drive under 2.6.14 and a working one under 2.6.12.

Ah well, I'll persevere.  It won't defeat me!  :Evil or Very Mad: 

----------

## Jaglover

Sorry to hear it.  :Sad: 

One last thing. Go into SCSI BIOS and reduce transfer rate for this device. (Ctrl+A from startup screen)

----------

## spiralvoice

Hi,

had the same problem: http://bugzilla.kernel.org/show_bug.cgi?id=5659

Using linux-2.6.13-gentoo-r5 + dbus/hald works without problems.

I stress-tested the drive, it also works on other OS as well, such

as latest Kanotix 2005-04/kernel 2.6.14.5.

Using vanilla-2.6.15/gentoo-2.6.14_all_versions + dbus/hald

produces the logged errors and renders the drive practically unusable.

Turning of dbus/hald solves the problem.

----------

## caramboo

Yep - same here.  Simply stopping hald here brings the drive back to life (still 2.6.14-gentoo-r6).  Going to build 2.6.15(gentoo) this weekend to see what happens.

----------

## spiralvoice

 *caramboo wrote:*   

> Going to build 2.6.15(gentoo) this weekend to see what happens.

 

The bug is still present there.

----------

## Polynomial-C

Hi,

I just reopened this bug @ bugzilla.kernel.org as I neither have dbus nor hal installed and I still suffer from this error when starting k3b or kscd with any kernel higher than 2.6.13.x.

Cheers

Poly

----------

## spiralvoice

 *Polynomial-C wrote:*   

> I just reopened this bug @ bugzilla.kernel.org as I neither have dbus nor hal installed and I still suffer from this error when starting k3b or kscd with any kernel higher than 2.6.13.x.

 

Please try Kanotix or any other LiveCD with kernel > 2.6.14

----------

## Polynomial-C

Hi,

 *spiralvoice wrote:*   

> Please try Kanotix or any other LiveCD with kernel > 2.6.14

 

tried Kanotix-2005-04 with Kernel-2.6.14.5-kanotix-9. Same problem. As soon as I run k3b the whole SCSI-bus gets resetted over and over again until the whole system is unuseable because it cannot access the Kanotix-CD anymore...

The errormessages are the same like those I posted @ bugzilla.kernel.org

Cheers

Polynomial-C

----------

## Gon0S

Hello

I encounter the almost same error with my rig.

The SCSI burner ID3 lead to error similar to this :

Nov 25 21:07:15 gentoo (scsi0:A:4:0): No or incomplete CDB sent to device.

Nov 25 21:07:15 gentoo scsi0: Issued Channel A Bus Reset. 1 SCBs aborted

Nov 25 21:07:15 gentoo sr 0:0:4:0: SCSI error: return code = 0x10000

Just the return code is = 0x70000

So, I just wanted to bump this topic to know if anyone managed to get rid of this problem

----------

## spiralvoice

 *Gon0S wrote:*   

> So, I just wanted to bump this topic to know if anyone managed to get rid of this problem

 

Same problem here, with gentoo-sources-2.6.15-r5

----------

## Polynomial-C

Hi,

just some URLs where the same problem was reported:

http://bugs.kde.org/show_bug.cgi?id=117693

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=340045

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=339871

http://bugzilla.kernel.org/show_bug.cgi?id=5776

I hope this will get fixed soon. I don't want to stay with linux-2.6.13.x forever   :Sad: 

Cheers

Poly

----------

## hamletmun

Same problem with Gentoo-sources-2.6.16

Has anyone found a solution for this????

----------

## hamletmun

Well... after git bisecting... I found this.

It has been a painful process: rebooting from 1966 revisions to 1 revision.

That means 1966->983->492->....->8->4->2->1 and, at least, two rebooting between

the numbers

Now someone has to find the solution for this problem

Author: James Bottomley <James.Bottomley@steeleye.com>                          

Date:   Sun Aug 14 17:09:01 2005 -0500                                          

    [SCSI] correct transport class abstraction to work outside SCSI             

    I recently tried to construct a totally generic transport class and         

    found there were certain features missing from the current abstract         

    transport class.  Most notable is that you have to hang the data on the     

    class_device but most of the API is framed in terms of the generic          

    device, not the class_device.                                               

    These changes are two fold                                                  

    - Provide the class_device to all of the setup and configure APIs           

    - Provide and extra API to take the device and the attribute class and      

      return the corresponding class_device                                     

    Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>               

:040000 040000 d9c2ca4cf51784a18a93b6ee7cabda19f7adcbd01567b7b65e5e34b7746f9bd78947eb7e26156b40 M      drivers                                                 

:040000 040000 f38e13cdf96c1fb7c189409bb09fdda2c112d9848dff007873523a292c4841be1912fde22116993a M      include

----------

## spiralvoice

I could be wrong, but gentoo-sources-2.6.17 with up-to-date ~x86 stuff does not have this problem anymore. I did not try to reproduce this bug for weeks so I do not know what really fixed it.

----------

