[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <19157.6679.939371.469696@pilspetsen.it.uu.se>
Date: Wed, 14 Oct 2009 02:23:51 +0200
From: Mikael Pettersson <mikpe@...uu.se>
To: Krzysztof Halasa <khc@...waw.pl>
Cc: Mikael Pettersson <mikpe@...uu.se>, <linux-ide@...r.kernel.org>,
<linux-kernel@...r.kernel.org>,
Robert Hancock <hancockrwd@...il.com>,
Alan Cox <alan@...rguk.ukuu.org.uk>
Subject: Re: sata_via: SError: { UnrecovData Proto TrStaTrns }
Krzysztof Halasa writes:
> Mikael Pettersson <mikpe@...uu.se> writes:
>
> > I couldn't do much about it other than ask the person to take
> > it to linux-ide (which I don't think he did), but it does make
> > one wonder if there is some issue with the vt6421a when connected
> > to an ixp4xx.
>
> I have performed some tests. Is there anything else I can do to fix
> this?
>
> VIA VT6421A mini-PCI (Commell MP-6421) card and SATA II SSD from
> Transcend.
>
> Machine A: IXP425 (ARM) CPU, 266 MHz. 64 MB RAM - this time all RAM is
> accessible to VT6421A. PCI 33 MHz (using mini-PCI adapter). Both
> little-endian and big-endian CPU modes exhibit the problems.
>
> Machine B: AMD64 X2, 64-bit kernel, 2 GB RAM. Mini-PCI 33 MHz.
>
> I've written a small program which only reads from disk, using the same
> read pattern that was needed for e2fsck. It constists of about 6500 of
> (quite random) lseek()s, each followed by read() (sizes from 524 to
> 32768 bytes). I do ioctl(fd, BLKFLSBUF, 0) first.
>
> It seems I can trigger the problems almost reliably on Machine A with
> rmmod sata_via; modprobe sata_via; test_program. Subsequent runs
> (without rmmod/modprobe usually don't show any issue).
>
> It usually shows up on Machine B but only once after reboot, subsequent
> rmmod + modprobe doesn't seem to trigger it. The test takes about
> 4 seconds (if the errors don't show up).
I guess you didn't see Alan Cox' recent comment about the vt6421:
<http://marc.info/?l=linux-ide&m=125526699500519&w=2>.
You should probably look for a mini-PCI card with a different chipset.
/Mikael
> The SSD shows no issues when connected directly to SATA port on the
> machine B motherboard (NVidia MCP-55).
>
> Machine A shows no issues when connected to a SATA disk. However, the
> disk is much slower (seeks are slow, linear transfer from either device
> is way above IXP425 ability). The test takes about 10 seconds with SSD
> and 20 seconds with the disk. I wonder if it could be a factor.
>
> Machine A (IXP425) doesn't obviously use the card's BIOS, so the
> VT6421A is configured a bit differently (ignoring differences in
> addresses etc):
>
> --- Machine A (IXP425)
> +++ Machine B (x86-64)
> -RAID bus controller: VT6421 IDE RAID Controller (rev 50)
> +IDE interface: VT6421 IDE RAID Controller (rev 50) (prog-if 8f [Master
> SecP SecO PriP PriO])
>
> - Control: Mem- FastB2B+ ...
> + Control: Mem+ FastB2B- ...
>
> Mem - I guess x86-64 enables it for BIOS access. This is the only PCI
> device in machine A (ARM).
>
> - Latency: 32
> + Latency: 64
>
> Capabilities: [e0] Power Management version 2
> - Status: ...
> + Status: NoSoftRst- ...
>
> -00: 06 11 49 32 05 02 90 02 50 00 04 01 00 20 00 00
> +00: 06 11 49 32 07 00 90 02 50 8f 01 01 00 40 00 00
> -10: 21 14 00 00 31 14 00 00 41 14 00 00 51 14 00 00
> +10: 01 dc 00 00 81 d8 00 00 01 d8 00 00 81 d4 00 00
> -20: 01 14 00 00 01 10 00 00 00 00 00 00 06 11 49 32
> +20: 01 d4 00 00 01 d0 00 00 00 00 00 00 06 11 49 32
> -30: 00 00 ff ff e0 00 00 00 00 00 00 00 1d 01 00 00
> +30: 00 00 af fe e0 00 00 00 00 00 00 00 0b 01 00 00
> -40: 33 03 f1 44 0e af 00 00 00 00 00 03 00 00 00 00
> +40: 33 03 f1 44 06 af 00 00 00 00 00 03 00 00 00 00
>
> -70: 00 00 00 00 01 f0 00 00 01 00 01 00 11 00 00 00
> +70: 00 00 00 00 01 f0 00 00 01 00 01 00 10 00 00 00
> -80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> +80: 00 00 00 00 00 00 00 00 00 80 c7 7d 00 00 00 00
>
>
> Machine A (IXP425):
>
> RAID bus controller: VIA Technologies, Inc. VT6421 IDE RAID Controller (rev 50)
> Subsystem: VIA Technologies, Inc. VT6421 IDE RAID Controller
> Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B+ DisINTx-
> Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
> Latency: 32
> Interrupt: pin A routed to IRQ 29
> Region 0: I/O ports at 1420 [size=16]
> Region 1: I/O ports at 1430 [size=16]
> Region 2: I/O ports at 1440 [size=16]
> Region 3: I/O ports at 1450 [size=16]
> Region 4: I/O ports at 1400 [size=32]
> Region 5: I/O ports at 1000 [size=256]
> Expansion ROM at 48000000 [disabled] [size=64K]
> Capabilities: [e0] Power Management version 2
> Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
> Status: D0 PME-Enable- DSel=0 DScale=0 PME-
> Kernel driver in use: sata_via
> Kernel modules: sata_via
> 00: 06 11 49 32 05 02 90 02 50 00 04 01 00 20 00 00
> 10: 21 14 00 00 31 14 00 00 41 14 00 00 51 14 00 00
> 20: 01 14 00 00 01 10 00 00 00 00 00 00 06 11 49 32
> 30: 00 00 ff ff e0 00 00 00 00 00 00 00 1d 01 00 00
> 40: 33 03 f1 44 0e af 00 00 00 00 00 03 00 00 00 00
> 50: 00 00 00 00 00 00 00 00 00 10 10 00 05 00 10 00
> 60: 00 00 ff ff 00 00 00 00 00 00 00 00 00 00 ff ff
> 70: 00 00 00 00 01 f0 00 00 01 00 01 00 11 00 00 00
> 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> a0: 0b f2 c9 35 10 ac c0 00 a8 a8 a8 a8 ff 00 b6 b6
> b0: 0f 0f 1f 1f 34 00 00 00 00 00 20 00 00 00 00 00
> c0: 00 02 00 00 00 00 00 00 00 02 00 00 00 00 00 00
> d0: 82 01 00 00 00 00 00 00 02 01 00 00 00 00 00 00
> e0: 01 00 02 00 00 00 00 00 50 01 49 32 06 11 49 32
> f0: 00 00 70 00 00 00 00 00 00 00 00 00 00 00 00 00
>
> ata7: SATA max UDMA/133 port i16@...420 bmdma 0x1400 irq 29
> ata8: SATA max UDMA/133 port i16@...430 bmdma 0x1408 irq 29
> ata9: PATA max UDMA/133 port i16@...440 bmdma 0x1410 irq 29
> ata7: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> ata7.00: ATA-8: TS32GSSD25S-M, V1210, max UDMA/100
> ata7.00: 62586880 sectors, multi 0: LBA48 NCQ (depth 0/1)
> ata7.00: applying bridge limits
> ata7.00: configured for UDMA/100
> scsi 6:0:0:0: Direct-Access ATA TS32GSSD25S-M V121 PQ: 0 ANSI: 5
> sd 6:0:0:0: [sda] 62586880 512-byte logical blocks: (32.0 GB/29.8 GiB)
> sd 6:0:0:0: [sda] Write Protect is off
> sd 6:0:0:0: [sda] Mode Sense: 00 3a 00 00
> sd 6:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
> sd 6:0:0:0: [sda] Attached SCSI disk
> ata8: SATA link down (SStatus 0 SControl 310)
>
> *** running the test program ***
>
> ata7.00: exception Emask 0x12 SAct 0x0 SErr 0x1000500 action 0x6
> ata7: SError: { UnrecovData Proto TrStaTrns }
> ata7.00: cmd c8/00:98:38:04:74/00:00:00:00:00/e0 tag 0 dma 77824 in
> res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x32 (host bus error)
> ata7.00: status: { DRDY }
> ata7: hard resetting link
> ata7: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> ata7.00: configured for UDMA/100
> ata7.00: device reported invalid CHS sector 0
> ata7: EH complete
> ata7.00: exception Emask 0x12 SAct 0x0 SErr 0x1000500 action 0x6
> ata7.00: BMDMA stat 0x65
> ata7: SError: { UnrecovData Proto TrStaTrns }
> ata7.00: cmd c8/00:00:d0:05:a8/00:00:00:00:00/e1 tag 0 dma 131072 in
> res 51/40:00:d0:05:a8/00:00:00:00:00/e1 Emask 0x12 (ATA bus error)
> ata7.00: status: { DRDY ERR }
> ata7.00: error: { UNC }
> ata7: hard resetting link
> ata7: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> ata7.00: configured for UDMA/100
> ata7: EH complete
> ata7.00: exception Emask 0x12 SAct 0x0 SErr 0x1000500 action 0x6
> ata7: SError: { UnrecovData Proto TrStaTrns }
> ata7.00: cmd c8/00:40:10:00:2c/00:00:00:00:00/e2 tag 0 dma 32768 in
> res 40/00:00:d0:05:a8/00:00:00:00:00/e1 Emask 0x32 (host bus error)
> ata7.00: status: { DRDY }
> ata7: hard resetting link
> ata7: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> ata7.00: configured for UDMA/100
> ata7: EH complete
> ata7.00: limiting speed to UDMA/66:PIO4
> ata7.00: exception Emask 0x12 SAct 0x0 SErr 0x1000500 action 0x6
> ata7: SError: { UnrecovData Proto TrStaTrns }
> ata7.00: cmd c8/00:00:d0:05:30/00:00:00:00:00/e2 tag 0 dma 131072 in
> res 40/00:00:d0:05:a8/00:00:00:00:00/e1 Emask 0x32 (host bus error)
> ata7.00: status: { DRDY }
> ata7: hard resetting link
> ata7: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> ata7.00: configured for UDMA/66
> ata7: EH complete
>
>
>
> Machine B (x86-64):
>
> IDE interface: VIA Technologies, Inc. VT6421 IDE RAID Controller (rev 50) (prog-if 8f [Master SecP SecO PriP PriO])
> Subsystem: VIA Technologies, Inc. VT6421 IDE RAID Controller
> Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
> Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
> Latency: 64
> Interrupt: pin A routed to IRQ 19
> Region 0: I/O ports at dc00 [size=16]
> Region 1: I/O ports at d880 [size=16]
> Region 2: I/O ports at d800 [size=16]
> Region 3: I/O ports at d480 [size=16]
> Region 4: I/O ports at d400 [size=32]
> Region 5: I/O ports at d000 [size=256]
> Expansion ROM at 88000000 [disabled] [size=64K]
> Capabilities: [e0] Power Management version 2
> Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
> Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
> Kernel driver in use: sata_via
> Kernel modules: sata_via
> 00: 06 11 49 32 07 00 90 02 50 8f 01 01 00 40 00 00
> 10: 01 dc 00 00 81 d8 00 00 01 d8 00 00 81 d4 00 00
> 20: 01 d4 00 00 01 d0 00 00 00 00 00 00 06 11 49 32
> 30: 00 00 af fe e0 00 00 00 00 00 00 00 0b 01 00 00
> 40: 33 03 f1 44 06 af 00 00 00 00 00 03 00 00 00 00
> 50: 00 00 00 00 00 00 00 00 00 10 10 00 05 00 10 00
> 60: 00 00 ff ff 00 00 00 00 00 00 00 00 00 00 ff ff
> 70: 00 00 00 00 01 f0 00 00 01 00 01 00 10 00 00 00
> 80: 00 00 00 00 00 00 00 00 00 80 c7 7d 00 00 00 00
> 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> a0: 0b f2 c9 35 10 ac c0 00 a8 a8 a8 a8 ff 00 b6 b6
> b0: 0f 0f 1f 1f 34 00 00 00 00 00 20 00 00 00 00 00
> c0: 00 02 00 00 00 00 00 00 00 02 00 00 00 00 00 00
> d0: 82 01 00 00 00 00 00 00 02 01 00 00 00 00 00 00
> e0: 01 00 02 00 00 00 00 00 50 01 49 32 06 11 49 32
> f0: 00 00 70 00 00 00 00 00 00 00 00 00 00 00 00 00
>
> ata5: SATA max UDMA/133 port i16@...c00 bmdma 0xd400 irq 19
> ata6: SATA max UDMA/133 port i16@...880 bmdma 0xd408 irq 19
> ata7: PATA max UDMA/133 port i16@...800 bmdma 0xd410 irq 19
> ata5: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> ata5.00: ATA-8: TS32GSSD25S-M, V1210, max UDMA/100
> ata5.00: 62586880 sectors, multi 0: LBA48 NCQ (depth 0/1)
> ata5.00: applying bridge limits
> ata5.00: configured for UDMA/100
> scsi 4:0:0:0: Direct-Access ATA TS32GSSD25S-M V121 PQ: 0 ANSI: 5
> sd 4:0:0:0: Attached scsi generic sg2 type 0
> sd 4:0:0:0: [sdb] 62586880 512-byte hardware sectors: (32.0 GB/29.8 GiB)
> sd 4:0:0:0: [sdb] Write Protect is off
> sd 4:0:0:0: [sdb] Mode Sense: 00 3a 00 00
> sd 4:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
> sd 4:0:0:0: [sdb] Attached SCSI disk
> ata6: SATA link down (SStatus 0 SControl 310)
>
> *** running the test program ***
>
> ata5.00: exception Emask 0x12 SAct 0x0 SErr 0x1000500 action 0x6 frozen
> ata5: SError: { UnrecovData Proto TrStaTrns }
> ata5.00: cmd c8/00:00:e0:21:00/00:00:00:00:00/e0 tag 0 dma 131072 in
> res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x16 (ATA bus error)
> ata5.00: status: { DRDY }
> ata5: hard resetting link
> ata5: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> ata5.00: configured for UDMA/100
> ata5.00: device reported invalid CHS sector 0
> ata5: EH complete
> --
> Krzysztof Halasa
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists