Do SATA Tapes work on *any* SATA controller?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Executive Summary: Do SATA Tape drives work at all?


Ages past (March 28th) I posted to this list about my problems with Sony
AIT tape drives on a nVidia MCP55 SATA controller (using sata_nv).

I never did get them working so I've just bought a Silicon Image PCI SiI
3512 SATA controller (using the sata_sil driver) to see if it might
work.

Sadly it doesn't and I still can't write tapes on a SATA drive with
Linux 2.6.25.1.

So before I put my SATA Tape drives in the bin, bite the bullet and
purchase SCSI versions and SCSI controllers I thought I'd ask if the
list knew of *any* SATA controller that works with tape drives in Linux?

Anyone? At all?



The Tape drives work with a (Sony supplied JMicron) USB to SATA adaptor
so I'm quite sure it's a SATA driver/controller issue and not a Tape
drive problem (I've now tried three drives just to make sure).

FWIW, dmesg for a failed tape write using sata_sil goes like:

ata8: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata8.00: configured for UDMA/100
ata8: EH complete
st0: Sense Key : Aborted Command [current] [descriptor]
Descriptor sense data with sense descriptors (in hex):
        72 0b 00 00 00 00 00 0e 09 0c 00 00 00 03 00 00 
		00 00 00 00 a0 10 
st0: Add. Sense: No additional sense information
st0: Sense Key : Unit Attention [current] 
Info fld=0x1
st0: Add. Sense: Power on, reset, or bus device reset occurred
st0: Error on write filemark.
st0: Sense Key : Not Ready [current] 
st0: Add. Sense: Logical unit not ready, cause not reportable

and my original post re the sata_nv problems was:


>I'm trying to use a Sony AIT SDX-870V tape drive on an NVidia MCP55
>SATA controller and it's basically not working :-(  
>
>I've tried two tape drives, different cables, different SATA ports and
>various kernels upto 2.6.25-rc7.  All suffer from the same problem when
>reading/writing data.  FWIW I do have a SATA CDRW drive on the same
>system and can read from that all day long without problems.
>
>The drive status is readable (and doing this doesn't cause failures):
>
># mt -f /dev/st0 status
>SCSI 2 tape drive:
>File number=0, block number=-1, partition=0.
>Tape block size 1024 bytes. Density code 0xb3 (no translation).
>Soft error count since last status=0
>General status bits on (1010000):
> ONLINE IM_REP_EN
>#
>
>If I write (using tar cvf /dev/st0...) a small amount of data, then some
>it gets written (I can read back half a dozen files). Anything
>non-trivial however always results in:
>
>ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
>ata3.00: BMDMA stat 0x4
>ata3.00: cmd a0/01:00:00:00:28/00:00:00:00:00/a0 tag 0 dma 10240 out
>         cdb 0a 01 00 00 0a 00 00 00  00 00 00 00 00 00 00 00
>         res 10/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x2 (HSM
>violation)
>ata3: soft resetting link
>ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
>ata3.00: configured for UDMA/100
>ata3: EH complete
>st0: Sense Key : Aborted Command [current] [descriptor]
>Descriptor sense data with sense descriptors (in hex):
>        72 0b 00 00 00 00 00 0e 09 0c 00 00 00 03 00 00 
>        00 00 00 00 a0 10 
>st0: Add. Sense: No additional sense information
>st0: Sense Key : Unit Attention [current] 
>Info fld=0x1
>st0: Add. Sense: Power on, reset, or bus device reset occurred
>st0: Error on write filemark.
>st0: Sense Key : Not Ready [current] 
>st0: Add. Sense: Logical unit not ready, cause not reportable
>
>
>The drive detection bit from kern.log goes:
>
>Mar 28 09:56:34 build kernel: ata1: SATA link down (SStatus 0 SControl 300)
>Mar 28 09:56:34 build kernel: ata2: SATA link down (SStatus 0 SControl 300)
>Mar 28 09:56:34 build kernel: ACPI: PCI Interrupt Link [LSA1] enabled at IRQ 22
>Mar 28 09:56:34 build kernel: ACPI: PCI Interrupt 0000:00:05.1[B] -> Link [LSA1] -> GSI 22 (level, low) -> IRQ 22
>Mar 28 09:56:34 build kernel: PCI: Setting latency timer of device 0000:00:05.1 to 64
>Mar 28 09:56:34 build kernel: scsi3 : sata_nv
>Mar 28 09:56:34 build kernel: scsi4 : sata_nv
>Mar 28 09:56:34 build kernel: ata3: SATA max UDMA/133 cmd 0xa880 ctl 0xa800 bmdma 0xa080 irq 22
>Mar 28 09:56:34 build kernel: ata4: SATA max UDMA/133 cmd 0xa480 ctl 0xa400 bmdma 0xa088 irq 22
>Mar 28 09:56:34 build kernel: ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
>Mar 28 09:56:34 build kernel: ata3.00: ATAPI: SONY    SDX-870V, 0100, max UDMA/100
>Mar 28 09:56:34 build kernel: ata3.00: applying bridge limits
>Mar 28 09:56:34 build kernel: ata3.00: configured for UDMA/100
>Mar 28 09:56:34 build kernel: ata4: SATA link down (SStatus 0 SControl 300)
>Mar 28 09:56:34 build kernel: scsi 3:0:0:0: Sequential-Access SONY SDX-870V         0100 PQ: 0 ANSI: 3
>Mar 28 09:56:34 build kernel: st 3:0:0:0: Attached scsi tape st0
>Mar 28 09:56:34 build kernel: st 3:0:0:0: st0: try direct i/o: yes (alignment 4 B)
>Mar 28 09:56:34 build kernel: st 3:0:0:0: Attached scsi generic sg6 type 1
>Mar 28 09:56:34 build kernel: ACPI: PCI Interrupt Link [LSA2] enabled at IRQ 21
>Mar 28 09:56:34 build kernel: ACPI: PCI Interrupt 0000:00:05.2[C] -> Link [LSA2] -> GSI 21 (level, low) -> IRQ 21
>Mar 28 09:56:34 build kernel: PCI: Setting latency timer of device 0000:00:05.2 to 64
>Mar 28 09:56:34 build kernel: scsi5 : sata_nv
>Mar 28 09:56:34 build kernel: scsi6 : sata_nv
>Mar 28 09:56:34 build kernel: ata5: SATA max UDMA/133 cmd 0xa000 ctl 0x9c00 bmdma 0x9480 irq 21
>Mar 28 09:56:34 build kernel: ata6: SATA max UDMA/133 cmd 0x9880 ctl 0x9800 bmdma 0x9488 irq 21
>Mar 28 09:56:34 build kernel: ata5: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
>Mar 28 09:56:34 build kernel: ata5.00: ATAPI: ASUS    DRW-2014L1T, 1.00, max UDMA/66
>Mar 28 09:56:34 build kernel: ata5.00: configured for UDMA/66
>Mar 28 09:56:34 build kernel: ata6: SATA link down (SStatus 0 SControl 300)
>Mar 28 09:56:34 build kernel: scsi 5:0:0:0: CD-ROM            ASUS DRW-2014L1T      1.00 PQ: 0 ANSI: 5
>Mar 28 09:56:34 build kernel: sr0: scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray
>Mar 28 09:56:34 build kernel: Uniform CD-ROM driver Revision: 3.20
>Mar 28 09:56:34 build kernel: sr 5:0:0:0: Attached scsi CD-ROM sr0
>Mar 28 09:56:34 build kernel: sr 5:0:0:0: Attached scsi generic sg7 type 5
>Mar 28 09:56:34 build kernel: ACPI: PCI Interrupt Link [LUB2] enabled at IRQ 20
>
>lspci -v (for the SATA stuff) shows:
>
>00:05.0 IDE interface: nVidia Corporation MCP55 SATA Controller (rev a3) (prog-if 85 [Master SecO PriO])
>        Subsystem: Super Micro Computer Inc Unknown device a011
>        Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 23
>        I/O ports at b480 [size=8]
>        I/O ports at b400 [size=4]
>        I/O ports at b080 [size=8]
>        I/O ports at b000 [size=4]
>        I/O ports at ac00 [size=16]
>        Memory at dfaf9000 (32-bit, non-prefetchable) [size=4K]
>        Capabilities: [44] Power Management version 2
>        Capabilities: [b0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/2 Enable-
>        Capabilities: [cc] HyperTransport: MSI Mapping
>
>00:05.1 IDE interface: nVidia Corporation MCP55 SATA Controller (rev a3) (prog-if 85 [Master SecO PriO])
>        Subsystem: Super Micro Computer Inc Unknown device a011
>        Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 22
>        I/O ports at a880 [size=8]
>        I/O ports at a800 [size=4]
>        I/O ports at a480 [size=8]
>        I/O ports at a400 [size=4]
>        I/O ports at a080 [size=16]
>        Memory at dfaf8000 (32-bit, non-prefetchable) [size=4K]
>        Capabilities: [44] Power Management version 2
>        Capabilities: [b0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/2 Enable-
>        Capabilities: [cc] HyperTransport: MSI Mapping
>
>00:05.2 IDE interface: nVidia Corporation MCP55 SATA Controller (rev a3) (prog-if 85 [Master SecO PriO])
>        Subsystem: Super Micro Computer Inc Unknown device a011
>        Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 21
>        I/O ports at a000 [size=8]
>        I/O ports at 9c00 [size=4]
>        I/O ports at 9880 [size=8]
>        I/O ports at 9800 [size=4]
>        I/O ports at 9480 [size=16]
>        Memory at dfaf7000 (32-bit, non-prefetchable) [size=4K]
>        Capabilities: [44] Power Management version 2
>        Capabilities: [b0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/2 Enable-
>        Capabilities: [cc] HyperTransport: MSI Mapping
>
>
>Using the 'sonytools' utility, I can do things like eject the tape (mt
>does that too) but trying a 'longer' command like tape format results in:
>
>#  sonytape /dev/st0 -p
>SONY tape device detected.
>SONY SDX-870V   Revision: 0100
>Please Load Tape In Drive!
>Sleeping 60 seconds.
>Formatting Tape.
>Request Sense data: 0x72 0x0b 0x47 0x00 0x00 0x00 0x00 0x0e 0x09 0x0c 
> 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x02 0x00 0x00 
> 0xa0 0x58 
>Unknown Sense Code, No additional sense information
>Done.
>#
>
>and dmesg for this failure says:
>
>ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
>ata3.00: cmd a0/00:00:00:16:00/00:00:00:00:00/a0 tag 0 pio 24 out
>         cdb 15 10 00 00 16 00 00 00  00 00 00 00 00 00 00 00
>         res 58/00:00:00:02:00/00:00:00:00:00/a0 Emask 0x6 (timeout)
>ata3.00: status: { DRDY DRQ }
>ata3: port is slow to respond, please be patient (Status 0xd0)
>ata3: device not ready (errno=-16), forcing hardreset
>ata3: hard resetting link
>ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
>ata3.00: configured for UDMA/100
>ata3: EH complete
>st0: Sense Key : Unit Attention [current] 
>st0: Add. Sense: Power on, reset, or bus device reset occurred
>
>As I said earlier, small amounts of data work like so:
>
># tar cvf /dev/st0 .
>./
>./sonytape
>./nori_trace.txt
>./SDX-870V.pdf
>./sonytape_linux_v2.8.tar.gz
>./sdx870v_0100.v87
>./datap.bin
>./readme_sonytape_linux_v2.8.txt
>./chnginq.txt
># tar vtf /dev/st0
>drwxrwxr-x root/root         0 2008-03-27 15:07 ./
>-rwxr-xr-x root/root    135282 2008-03-19 18:29 ./sonytape
>-rw-rw-r-- root/root   1360365 2008-03-27 15:07 ./nori_trace.txt
>-rw------- root/root    481793 2008-03-27 14:48 ./SDX-870V.pdf
>-rw-rw-r-- root/root     57566 2008-03-27 14:48
>./sonytape_linux_v2.8.tar.gz
>-rw------- root/root   1514496 2008-03-27 14:48 ./sdx870v_0100.v87
>-r-xr-xr-x root/root     65536 2003-07-20 16:43 ./datap.bin
>-rw-r--r-- root/root     12674 2008-03-19 15:28
>./readme_sonytape_linux_v2.8.txt
>-r-xr-xr-x root/root        28 2008-03-19 18:15 ./chnginq.txt
>#
>
>So it's seemingly something to do with the amount of data being sent to
>the drive.
>
>Can anyone suggest a course of action to getting this fixed?  I'm very
>happy to stick debug in bits of the kernel and report results.
>

-- 
 Regards,
     Russell
 --------------------------------------------------------------------
| Russell Brown          | MAIL: russell@xxxxxxx PHONE: 01780 471800 |
| Lady Lodge Systems     | WWW Work: http://www.lls.com              |
| Peterborough, England  | WWW Play: http://www.ruffle.me.uk         |
 --------------------------------------------------------------------
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux