2004-11-05 10:01:06

by Jeff Garzik

[permalink] [raw]
Subject: [SATA] status report, libata-dev queue updated


Updated hardware and software SATA status reports:
http://linux.yyz.us/sata/sata-status.html
http://linux.yyz.us/sata/software-status.html

BK users:

bk pull bk://gkernel.bkbits.net/libata-dev-2.6

Patch:
http://www.kernel.org/pub/linux/kernel/people/jgarzik/libata/2.6.10-rc1-bk14-libata1-dev1.patch.bz2

This will update the following files:

drivers/scsi/Kconfig | 8
drivers/scsi/Makefile | 1
drivers/scsi/libata-core.c | 38 ++
drivers/scsi/libata-scsi.c | 409 +++++++++++++++++++++++++
drivers/scsi/libata.h | 2
drivers/scsi/pata_pdc2027x.c | 694 +++++++++++++++++++++++++++++++++++++++++++
drivers/scsi/sata_promise.c | 56 +++
include/linux/ata.h | 1
include/linux/libata.h | 2
include/scsi/scsi.h | 3
10 files changed, 1203 insertions(+), 11 deletions(-)

through these ChangeSets:

<albertcc:tw.ibm.com>:
o [libata pdc2027x] fix incorrect pio and mwdma masks
o [libata pdc2027x] remove quirks and ROM enable
o [libata] add driver for Promise PATA 2027x

<andyw:pobox.com>:
o [libata scsi] support 12-byte passthru CDB
o [libata scsi] passthru CDB check condition processing
o T10/04-262 ATA pass thru - patch

<erikbenada:yahoo.ca>:
o [libata sata_promise] support PATA ports on SATA controllers

<tobias.lorenz:gmx.net>:
o libata-scsi: get-identity ioctl support

Brad Campbell:
o libata basic detection and errata for PATA->SATA bridges

Jeff Garzik:
o [libata sata_promise] fix merge bugs
o [libata] fix build breakage
o [libata] fix SATA->PATA bridge detect compile breakage
o [libata] fix printk warning

John W. Linville:
o libata: SMART support via ATA pass-thru


2004-11-05 19:04:12

by Brad Campbell

[permalink] [raw]
Subject: Re: [SATA] status report, libata-dev queue updated

Jeff Garzik wrote:

> <andyw:pobox.com>:
> o [libata scsi] support 12-byte passthru CDB
> o [libata scsi] passthru CDB check condition processing
> o T10/04-262 ATA pass thru - patch
>
>
> John W. Linville:
> o libata: SMART support via ATA pass-thru

I'll just add a big ack for these two patches. I have been using these extensively now for a couple
of weeks on a 14 drive array spread over 12 Maxtor Drives on Promise SATA150TX4 Controllers and 1
WD2500BB on a VIA controller by way of an SIL PATA->SATA bridge polling all drives hourly for full
SMART stats and running daily self tests while also testing heavy drive usage patterns and manual
SMART polling and have not encountered any data corruption.

Read that as "I have tried really, really hard to break it and as yet been unable to".

Regards,
Brad

2004-11-05 19:28:14

by Andy Warner

[permalink] [raw]
Subject: Re: [SATA] status report, libata-dev queue updated

Brad Campbell wrote:
> [...]
> Read that as "I have tried really, really hard to break it and as yet been unable to".

Is your system SMP ? I'm actively tracking a problem now with
pass-thru behaviour (via /dev/sg* ) on SMP systems.

Symptom is a system freeze after a few messages like
this:

ata3: command 0x34 timeout, stat 0x58 host_stat 0x0
ata2: command 0x24 timeout, stat 0x58 host_stat 0x0
ata3: status=0x58 { DriveReady SeekComplete <4>ATA: abnormal status 0x58 on port 0xF8A3CCC7
ata2: status=0x58 { DriveReady SeekComplete DataRequest }
DataReq

This particular example is of a Read Sectors command pending
on one drive and Write Sectors on another. Don't know if it
is the pio state machine not being SMP-safe, or what just yet.
--
[email protected]

Andy Warner Voice: (612) 801-8549 Fax: (208) 575-5634

2004-11-05 19:45:21

by Brad Campbell

[permalink] [raw]
Subject: Re: [SATA] status report, libata-dev queue updated

Andy Warner wrote:
> Brad Campbell wrote:
>
>>[...]
>>Read that as "I have tried really, really hard to break it and as yet been unable to".
>
>
> Is your system SMP ? I'm actively tracking a problem now with
> pass-thru behaviour (via /dev/sg* ) on SMP systems.

Nope, sorry. Only lowly UP here.

Regards,
Brad

2004-11-06 00:07:56

by Andy Warner

[permalink] [raw]
Subject: Re: [SATA] status report, libata-dev queue updated

Brad Campbell wrote:
> Andy Warner wrote:
> > Brad Campbell wrote:
> >
> >>[...]
> >>Read that as "I have tried really, really hard to break it and as yet been unable to".
> >
> >
> > Is your system SMP ? I'm actively tracking a problem now with
> > pass-thru behaviour (via /dev/sg* ) on SMP systems.
>
> Nope, sorry. Only lowly UP here.

I can confirm that there is some sort of problem with
PIO and SMP. Either exercising only DMA commands, or booting
with maxcpus=1 avoids the problem. At present, I suspect
the PIO task and/or state machine, but I'm still investigating.

I doubt this problem will occur unless you have concurrent
PIO access to different controllers on an SMP system.
--
[email protected]

Andy Warner Voice: (612) 801-8549 Fax: (208) 575-5634