* Serial ATA (SATA) status report
@ 2004-02-26 2:34 Jeff Garzik
2004-02-26 2:54 ` Mike Fedyk
` (2 more replies)
0 siblings, 3 replies; 15+ messages in thread
From: Jeff Garzik @ 2004-02-26 2:34 UTC (permalink / raw)
To: Linux Kernel
[-- Attachment #1: Type: text/plain, Size: 10 bytes --]
attached.
[-- Attachment #2: sata-status.txt --]
[-- Type: text/plain, Size: 5366 bytes --]
Serial ATA (SATA) for Linux
status report
Feb 25, 2004
Hardware support
================
Intel ICH5 and ICH5-R
---------------------
Summary: No TCQ. Looks like a PATA controller, but with a few added,
non-standard SATA port controls. Hardware does not support hotplug.
"Coldplug" support is potentially feasible.
libata driver status: Production, but see issue #2, #3, #4.
drivers/ide driver status: Production, but see issue #1, #2.
Issue #1: Depending on BIOS settings, IDE driver may lock up computer
when probing drives.
Issue #2: Excessive interrupts are seen in some configurations.
Issue #3: "Enhanced mode" or "SATA-only mode" may need to be set in BIOS.
Issue #4: Driver disables SATA port on unload, but does not re-enable
SATA port on load.
Intel ICH6 ("AHCI")
-------------------
Summary: Per-device queues, full SATA control including hotplug
and PM.
libata driver status: "looks like ICH5" support available in ata_piix
very soon. Full support available in a week or two.
Promise TX2/TX4/SX4
-------------------
Summary: Per-host queues on all controllers. Full SATA control
including hotplug and PM on all but one controller.
libata driver status: Beta, but see issue #5.
Issue #5: Some boards appear to have PATA as well as SATA ports. PATA
is not currently supported, and no plans have yet been made to rectify
this. Ideally drivers/ide would drive PATA, but if they are the same
PCI device, that would not be feasible.
Silicon Image 3112/3114
-----------------------
Summary: No TCQ. Looks like a PATA controller, but with full SATA
control including hotplug and PM.
libata driver status: Alpha.
drivers/ide driver status: Production, but see issue #4.
Issue #4: Need to have the most recent fixes posted to lkml, for stable
operation and full performance (where possible).
Silicon Image 3124
------------------
Soon, hopefully. User-written.
Broadcom/ServerWorks/Apple
--------------------------
Summary: Huge per-device queues, full SATA control including hotplug
and PM.
libata driver status: Beta.
VIA
---
Summary: No TCQ. Looks like a PATA controller, but with full SATA
control including hotplug and PM.
libata driver status: Beta.
SiS
---
libata driver status: in progress (user-written)
Vitesse
-------
libata driver status: in progress
Marvell
-------
libata driver status: in progress
Software support
================
Basic Serial ATA support
------------------------
The "ATA host state machine", the core of the entire driver, is
considered production-stable.
The error handling is _very_ simple, but at this stage that is an
advantage. Error handling code anywhere is inevitably both complex and
sorely under-tested. libata error handling is intentionally simple.
Positives: Easy to review and verify correctness. Never data
corruption. Negatives: if an error occurs, libata will simply send
the error back the block layer. There are limited retries by the block
layer, depending on the type of error, but there is never a bus reset.
Or in other words: "it's better to stop talking to the disk than
compound existing problems with further problems."
As Serial ATA matures, and host- and device-side errata become apparent,
the error handling will be slowly refined. I am planning to work with a
few (kind!) disk vendors, to obtain special drives/firmwares that allow
me to inject faults, and otherwise exercise error handling code.
Queueing support
----------------
Even though some SATA host controllers on the market already support
command queueing (a.k.a. "TCQ"), libata does not yet support it.
However, libata was designed from the ground-up to support queueing, so
I need only change a few lines of code, and write two functions, to
enable this behavior.
Queueing will be enabled in libata soon, but to do so requires a long
stretch of testing on a large variety of controllers and drives. This
is very time-intensive, and is the largest part of this task.
Tangent: Host-based queueing and Native Command Queueing
Queueing is the process of sending multiple commands to a single device,
without waiting for prior commands to finish. This increases
performance and reduces latency. There are three types of queueing in
the ATA world:
1) "legacy TCQ" -- some PATA devices support this. Just ignore it,
it's going away.
2) "host-based TCQ" -- the host controller supports a queue of drive
commands, whether or not the drive supports it.
3) "Native Command Queueing" -- both host and drive cooperate in the
queueing and execution of drive commands. This should provide the
highest performance and lowest latency of all three options.
#1 is support by drivers/ide _only_. libata will not support this.
#2 will soon be supported by libata.
#3 will be supported by libata when hardware is available from drive
manufacturers.
Hotplug support
---------------
All SATA is hotplug.
libata does not support hotplug... yet.
Power Management support
------------------------
Over and above the power management specified in the ATA/ATAPI
specification, one can aggressively control the power consumption of
SATA hosts, the SATA bus, and the SATA device.
SMART support
-------------
Soon. Requires the capability to directly submit ATA commands from
userspace to the low-level device, which must be added with care.
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: Serial ATA (SATA) status report
2004-02-26 2:34 Serial ATA (SATA) status report Jeff Garzik
@ 2004-02-26 2:54 ` Mike Fedyk
2004-02-26 3:09 ` Jeff Garzik
2004-02-26 9:13 ` Mark Watts
2004-02-28 14:49 ` Justin Cormack
2 siblings, 1 reply; 15+ messages in thread
From: Mike Fedyk @ 2004-02-26 2:54 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Linux Kernel
Jeff Garzik wrote:
> VIA
> ---
> Summary: No TCQ. Looks like a PATA controller, but with full SATA
> control including hotplug and PM.
>
> libata driver status: Beta.
Does drivers/ide support this also?
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 2:34 Serial ATA (SATA) status report Jeff Garzik
2004-02-26 2:54 ` Mike Fedyk
@ 2004-02-26 9:13 ` Mark Watts
2004-02-26 13:19 ` Andre Tomt
2004-02-26 16:00 ` Jeff Garzik
2004-02-28 14:49 ` Justin Cormack
2 siblings, 2 replies; 15+ messages in thread
From: Mark Watts @ 2004-02-26 9:13 UTC (permalink / raw)
To: Jeff Garzik, Linux Kernel
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> attached.
Which one of these chips are the 3Ware cards based on?
Mark.
- --
Mark Watts
Senior Systems Engineer
QinetiQ TIM
St Andrews Road, Malvern
GPG Public Key ID: 455420ED
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
iD8DBQFAPbirBn4EFUVUIO0RAj2FAKCxOV+tWN99yqtHiCB8lCpV4cdvhQCgknbq
fJ8nwJTyCX1MiuhhNsu2bW0=
=vEVb
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 9:13 ` Mark Watts
@ 2004-02-26 13:19 ` Andre Tomt
2004-02-26 14:23 ` Mark Watts
2004-02-26 16:00 ` Jeff Garzik
1 sibling, 1 reply; 15+ messages in thread
From: Andre Tomt @ 2004-02-26 13:19 UTC (permalink / raw)
To: Linux Kernel; +Cc: Mark Watts
Mark Watts wrote:
> Which one of these chips are the 3Ware cards based on?
None of them. 3ware has its own chip, supported by the 3w-xxxx driver in
mainline 2.4 and 2.6. It's basicly exports the logical arrays as SCSI
devices.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 13:19 ` Andre Tomt
@ 2004-02-26 14:23 ` Mark Watts
2004-02-26 15:33 ` Terje Kvernes
2004-02-27 18:56 ` Mark
0 siblings, 2 replies; 15+ messages in thread
From: Mark Watts @ 2004-02-26 14:23 UTC (permalink / raw)
To: Andre Tomt, Linux Kernel
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> Mark Watts wrote:
> > Which one of these chips are the 3Ware cards based on?
>
> None of them. 3ware has its own chip, supported by the 3w-xxxx driver in
> mainline 2.4 and 2.6. It's basicly exports the logical arrays as SCSI
> devices.
Neat. Are there any known issues with these cards? (Do they work with AMD-64?)
- --
Mark Watts
Senior Systems Engineer
QinetiQ TIM
St Andrews Road, Malvern
GPG Public Key ID: 455420ED
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
iD8DBQFAPgF8Bn4EFUVUIO0RAg/JAJ9L5vNQVaoW37ElAc+OIPOJUusvCgCg4YrA
b2+lYzV5MVt820JH+PLD3Vs=
=ycsm
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 14:23 ` Mark Watts
@ 2004-02-26 15:33 ` Terje Kvernes
2004-02-26 15:55 ` Mark Watts
2004-02-27 18:56 ` Mark
1 sibling, 1 reply; 15+ messages in thread
From: Terje Kvernes @ 2004-02-26 15:33 UTC (permalink / raw)
To: Mark Watts; +Cc: Andre Tomt, Linux Kernel
Mark Watts <m.watts@eris.qinetiq.com> writes:
> Andre Tomt wrote:
>
> > None of them. 3ware has its own chip, supported by the 3w-xxxx
> > driver in mainline 2.4 and 2.6. It's basicly exports the logical
> > arrays as SCSI devices.
>
> Neat. Are there any known issues with these cards? (Do they work
> with AMD-64?)
the 3w-xxxx-module works well enough in 32bit mode on AMD64. sadly
enough, we have had some other issues with 64bit mode, but the
_driver_ seems to load there as well.
--
Terje
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 15:33 ` Terje Kvernes
@ 2004-02-26 15:55 ` Mark Watts
2004-02-26 20:11 ` Terje Kvernes
0 siblings, 1 reply; 15+ messages in thread
From: Mark Watts @ 2004-02-26 15:55 UTC (permalink / raw)
To: Terje Kvernes; +Cc: Andre Tomt, Linux Kernel
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> the 3w-xxxx-module works well enough in 32bit mode on AMD64. sadly
> enough, we have had some other issues with 64bit mode, but the
> _driver_ seems to load there as well.
Do these 'issues' prevent the cards from being used at all in 64bit mode on
AMD-64?
We'd really like to use the 4-port SATA 3Ware card on a Tyan Thunder K8W
(S2885) but it'd be a bit of a waste if we can only use it in 32bit mode. (I
assume 32bit mode means you compile for i686 instead of AMD-64 ?)
Mark.
- --
Mark Watts
Senior Systems Engineer
QinetiQ TIM
St Andrews Road, Malvern
GPG Public Key ID: 455420ED
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
iD8DBQFAPhcCBn4EFUVUIO0RAgYlAKCIdWX36mkFko8kdlyhCtzTcpAgsQCeOCc4
hZYOYnuFKuZLa5v4KJ7XGjI=
=M/Ej
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 15:55 ` Mark Watts
@ 2004-02-26 20:11 ` Terje Kvernes
0 siblings, 0 replies; 15+ messages in thread
From: Terje Kvernes @ 2004-02-26 20:11 UTC (permalink / raw)
To: Mark Watts; +Cc: Andre Tomt, Linux Kernel
Mark Watts <m.watts@eris.qinetiq.com> writes:
> > the 3w-xxxx-module works well enough in 32bit mode on AMD64.
> > sadly enough, we have had some other issues with 64bit mode, but
> > the _driver_ seems to load there as well.
>
> Do these 'issues' prevent the cards from being used at all in 64bit
> mode on AMD-64?
our issues are mostly related to getting X up and running. we've
been looking at keeping most of the userland as 32bit, but still
running a 64bit kernel. this works fine, except for the nVidia
kernel module and its attempt to talk to nVidias openGL libraries.
it's a very long story. but, as far as I remember, the 3ware card
worked fine.
> We'd really like to use the 4-port SATA 3Ware card on a Tyan Thunder
> K8W (S2885) but it'd be a bit of a waste if we can only use it in
> 32bit mode. (I assume 32bit mode means you compile for i686 instead
> of AMD-64 ?)
correct, the kernels on our AMD64-boxes are currently built for
i686. I _might_ be able to use one of our FX-51-boxes to test 64bit
usage of a 3ware PATA controller if you feel you can't take the
slight gamble. I'm not quite sure _when_ I can get this done
though, maybe within a week or two? but, since you really need to
test SATA as well, I'd advice you to get a card and test it
yourself. I'd be very surprised if it didn't work.
--
Terje
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 14:23 ` Mark Watts
2004-02-26 15:33 ` Terje Kvernes
@ 2004-02-27 18:56 ` Mark
1 sibling, 0 replies; 15+ messages in thread
From: Mark @ 2004-02-27 18:56 UTC (permalink / raw)
To: lkml
On February 26, 2004 07:23 am, Mark Watts wrote:
> > Mark Watts wrote:
> > > Which one of these chips are the 3Ware cards based on?
> >
> > None of them. 3ware has its own chip, supported by the 3w-xxxx driver in
> > mainline 2.4 and 2.6. It's basicly exports the logical arrays as SCSI
> > devices.
>
> Neat. Are there any known issues with these cards? (Do they work with
> AMD-64?)
We have build Raid boxes with 3ware on x86_64. We have not had to run a 32bit
OS to get it working and it works fine. There were some issues with more than
4GB of memory but I believe 3ware has resolved them now.
--
Mark Lane, CET mailto:mark@harddata.com
Hard Data Ltd. http://www.harddata.com
T: 01-780-456-9771 F: 01-780-456-9772
11060 - 166 Avenue Edmonton, AB, Canada, T5X 1Y3
--> Ask me about our Excellent 1U Systems! <--
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 9:13 ` Mark Watts
2004-02-26 13:19 ` Andre Tomt
@ 2004-02-26 16:00 ` Jeff Garzik
1 sibling, 0 replies; 15+ messages in thread
From: Jeff Garzik @ 2004-02-26 16:00 UTC (permalink / raw)
To: Mark Watts; +Cc: Linux Kernel
Mark Watts wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
>
>>attached.
>
>
> Which one of these chips are the 3Ware cards based on?
None of the above. All of these chips are non-RAID. I suppose I should
list stuff like 3ware as well...
Jeff
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
2004-02-26 2:34 Serial ATA (SATA) status report Jeff Garzik
2004-02-26 2:54 ` Mike Fedyk
2004-02-26 9:13 ` Mark Watts
@ 2004-02-28 14:49 ` Justin Cormack
2004-03-01 8:05 ` Michael Knigge
2 siblings, 1 reply; 15+ messages in thread
From: Justin Cormack @ 2004-02-28 14:49 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Linux Kernel, benh
On Thu, 2004-02-26 at 02:34, Jeff Garzik wrote:
> Silicon Image 3112/3114
> -----------------------
> Summary: No TCQ. Looks like a PATA controller, but with full SATA
> control including hotplug and PM.
>
> libata driver status: Alpha.
>
> drivers/ide driver status: Production, but see issue #4.
>
> Issue #4: Need to have the most recent fixes posted to lkml, for stable
> operation and full performance (where possible).
Having had problems with SiI 3112A under the standard IDE drivers
http://marc.theaimsgroup.com/?l=linux-kernel&m=107539618032329&w=2
I thought I would test my set of disks with some bad sectors that oops
or hang the standard driver. I also tested them under high load (which
also causes problems with the legacy drivers which can drop to PIO mode
or just hang).
libata (2.4.25-libata3) is much more stable, managing 22 hours without
problems, however has just hung with
ata3: DMA timeout, stat 0x1
as the last log message (nothing before), box completely unresponsive.
Will recompile with magic sysrq and with DPRINTK and VPRINTK defined. It
wasnt actually accessing a part of the disk with bad sectors at the
point, just under high load and accessing 3 disks. What is the best way
of debugging this?
SCSI subsystem driver Revision: 1.00
libata version 1.01 loaded.
sata_sil version 0.53
ata1: SATA max UDMA/133 cmd 0xF8816080 ctl 0xF881608A bmdma 0xF8816000
irq 26
ata2: SATA max UDMA/133 cmd 0xF88160C0 ctl 0xF88160CA bmdma 0xF8816008
irq 26
ata1: dev 0 cfg 49:2f00 82:7c6b 83:7b09 84:4003 85:7c49 86:3a01 87:4003
88:207f
ata1: dev 0 ATA, max UDMA/133, 240121728 sectors
ata1: dev 0 configured for UDMA/133
ata2: no device found (phy stat 00000000)
ata2: thread exiting
ata3: SATA max UDMA/133 cmd 0xF8818480 ctl 0xF881848A bmdma 0xF8818400
irq 27
ata4: SATA max UDMA/133 cmd 0xF88184C0 ctl 0xF88184CA bmdma 0xF8818408
irq 27
ata3: dev 0 cfg 49:2f00 82:346b 83:7f21 84:4003 85:3469 86:3c01 87:4003
88:203f
ata3: dev 0 ATA, max UDMA/100, 488397168 sectors (lba48)
ata3: dev 0 configured for UDMA/100
ata4: dev 0 cfg 49:2f00 82:346b 83:7f21 84:4003 85:3469 86:3c01 87:4003
88:203f
ata4: dev 0 ATA, max UDMA/100, 488397168 sectors (lba48)
ata4: dev 0 configured for UDMA/100
scsi0 : sata_sil
scsi1 : sata_sil
scsi2 : sata_sil
scsi3 : sata_sil
Vendor: ATA Model: Maxtor 6Y120M0 Rev: 1.01
Type: Direct-Access ANSI SCSI revision: 05
Vendor: ATA Model: WDC WD2500JD-00F Rev: 1.01
Type: Direct-Access ANSI SCSI revision: 05
Vendor: ATA Model: WDC WD2500JD-00F Rev: 1.01
Type: Direct-Access ANSI SCSI revision: 05
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
Attached scsi disk sdb at scsi2, channel 0, id 0, lun 0
Attached scsi disk sdc at scsi3, channel 0, id 0, lun 0
SCSI device sda: 240121728 512-byte hdwr sectors (122942 MB)
sda: unknown partition table
SCSI device sdb: 488397168 512-byte hdwr sectors (250059 MB)
sdb: unknown partition table
SCSI device sdc: 488397168 512-byte hdwr sectors (250059 MB)
sdc: unknown partition table
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Serial ATA (SATA) status report
@ 2004-02-26 6:28 Kyle Wong
0 siblings, 0 replies; 15+ messages in thread
From: Kyle Wong @ 2004-02-26 6:28 UTC (permalink / raw)
To: linux-kernel
Dear Jeff,
Is there following 3112/3114 problem exist with latest kernel 2.6.x? or
"Issue #4: Need to have the most recent fixes posted to lkml, for stable
operation and full performance (where possible)." suppose to fix this?
http://docs.freebsd.org/cgi/getmsg.cgi?fetch=1621281+0+/usr/local/www/db/tex
t/2003/freebsd-current/20031130.freebsd-current
http://docs.freebsd.org/cgi/getmsg.cgi?fetch=4276497+0+/usr/local/www/db/tex
t/2004/freebsd-current/20040208.freebsd-current
Also, for ICH5, "Issue #2: Excessive interrupts are seen in some
configurations."
Is there any fix? W'll I get problems if I use 2 x PATA + 2 x SATA drives
with ICH5 in enhanced mode?
Thanks.
^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: Serial ATA (SATA) status report
@ 2004-02-26 19:08 Adam Radford
0 siblings, 0 replies; 15+ messages in thread
From: Adam Radford @ 2004-02-26 19:08 UTC (permalink / raw)
To: 'Mark Watts', Terje Kvernes; +Cc: Andre Tomt, Linux Kernel
The only 'issue' running in 64-bit mode on AMD-64 I know of was where there
was data corruption when the IOMMU flushing scheme changed. I think Andi
sent out an email
where this was reverted. If it wasn't, all you need to do is run with
iommu=fullflush
and you shouldn't have any other trouble.
What other issues are there?
-Adam
-----Original Message-----
From: Mark Watts [mailto:m.watts@eris.qinetiq.com]
Sent: Thursday, February 26, 2004 7:56 AM
To: Terje Kvernes
Cc: Andre Tomt; Linux Kernel
Subject: Re: Serial ATA (SATA) status report
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> the 3w-xxxx-module works well enough in 32bit mode on AMD64. sadly
> enough, we have had some other issues with 64bit mode, but the
> _driver_ seems to load there as well.
Do these 'issues' prevent the cards from being used at all in 64bit mode on
AMD-64?
We'd really like to use the 4-port SATA 3Ware card on a Tyan Thunder K8W
(S2885) but it'd be a bit of a waste if we can only use it in 32bit mode. (I
assume 32bit mode means you compile for i686 instead of AMD-64 ?)
Mark.
- --
Mark Watts
Senior Systems Engineer
QinetiQ TIM
St Andrews Road, Malvern
GPG Public Key ID: 455420ED
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
iD8DBQFAPhcCBn4EFUVUIO0RAgYlAKCIdWX36mkFko8kdlyhCtzTcpAgsQCeOCc4
hZYOYnuFKuZLa5v4KJ7XGjI=
=M/Ej
-----END PGP SIGNATURE-----
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
DISCLAIMER: The information contained in this electronic mail transmission
is intended by 3ware for the use of the named individual or entity to which
it is directed and may contain information that is confidential or
privileged and should not be disseminated without prior approval from 3ware
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2004-03-01 8:05 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-02-26 2:34 Serial ATA (SATA) status report Jeff Garzik
2004-02-26 2:54 ` Mike Fedyk
2004-02-26 3:09 ` Jeff Garzik
2004-02-26 9:13 ` Mark Watts
2004-02-26 13:19 ` Andre Tomt
2004-02-26 14:23 ` Mark Watts
2004-02-26 15:33 ` Terje Kvernes
2004-02-26 15:55 ` Mark Watts
2004-02-26 20:11 ` Terje Kvernes
2004-02-27 18:56 ` Mark
2004-02-26 16:00 ` Jeff Garzik
2004-02-28 14:49 ` Justin Cormack
2004-03-01 8:05 ` Michael Knigge
-- strict thread matches above, loose matches on Subject: below --
2004-02-26 6:28 Kyle Wong
2004-02-26 19:08 Adam Radford
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox