2004-01-20 05:56:34

by Emmanuel Hislen

[permalink] [raw]
Subject: SiI2112 + Seagate + nFroce2: no DMA!

Hi,

Forgive me for intruding in this list as an outsider.

I'm about to give up on my SATA drive as I can't get it to work properly.
So I thought I may try asking the experts before falling back to PATA.

I have seen many mails reporting the same issue, some of them 6-month old:

- SATA drive comes up in pio mode, not in dma
- trying to turn on dma with hdparm is a nightmare: I/O errors, crash
with data corruption... I tried both:

hddarm -d1 /dev/hde

and:

hdparm -u1 -c3 -d1 -X66 /dev/hde


crash in both cases :-((


Here's my equipment:


ABIT AN7 motherboard (nForce2 chipset, SiI3112 SATA controller)
AMD Athlon XP 2600+ (+ 512 DDR / 400 MHz)
SATA HD Seagate Barracuda 160 Gb

The SATA HD is my only drive. The only thing connected to my IDE
controllers is a DVD/CD combo.

Running Linux Redhat 9.0
kernel 2.4.20-28.9


Traces from dmesg:

<<<<<<<<<<
...
Uniform Multi-Platform E-IDE driver Revision: 7.00beta3-.2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
NFORCE2: IDE controller at PCI slot 00:09.0
NFORCE2: chipset revision 162
NFORCE2: not 100% native mode: will probe irqs later
AMD_IDE: PCI device 10de:0065 (nVidia Corporation) (rev a2) UDMA100
controller o
n pci00:09.0
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:DMA, hdd:DMA
SiI3112 Serial ATA: IDE controller at PCI slot 01:0b.0
SiI3112 Serial ATA: chipset revision 2
SiI3112 Serial ATA: not 100% native mode: will probe irqs later
, BIOS settings: hde:pio, hdf:pio
, BIOS settings: hdg:pio, hdh:pio
hda: PIONEER DVD-RW DVR-106D, ATAPI CD/DVD-ROM drive
hde: ST3160023AS, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide2 at 0xe080d080-0xe080d087,0xe080d08a on irq 11
hde: attached ide-disk driver.
hde: host protected area => 1
hde: 312581808 sectors (160042 MB) w/8192KiB Cache, CHS=19457/255/63
ide-floppy driver 0.99.newide
Partition check:
hde: hde1 hde2 hde3
ide-floppy driver 0.99.newide
md: md driver 0.90.0 MAX_MD_DEVS=256, MD_SB_DISKS=27
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
>>>>>>>>>>


I've been googling for days now and could not come accross a solution,
on the contrary I came under the impression that the combination of
SiI3112 +and Seagate was doomed.

I cannot use this brand new computer for anything else then mail and
web, performance is catastrophic:

<<<<<<<<<<
[root]# hdparm -Tt /dev/hde

/dev/hde:
Timing buffer-cache reads: 128 MB in 0.33 seconds =387.88 MB/sec
Timing buffered disk reads: 64 MB in 48.49 seconds = 1.32 MB/sec
>>>>>>>>>>

1.32 MB !!!!! I should be getting 50 MB at least.


Isn't there a solution??

I am willing to try patches of experimental code. At this point I am
looking at reinstalling everything on a PATA drive anyway, so I have
nothing to loose.


Thanks,

Emmanuel.

PS: please CC me in the reply as I am not subscribed to this list.



2004-01-20 08:58:12

by Hugo Mills

[permalink] [raw]
Subject: Re: SiI2112 + Seagate + nFroce2: no DMA!

On Tue, Dec 31, 2002 at 09:55:59PM -0800, manu wrote:

Incidentally, did you know that the date on your computer is very,
very wrong?

> I'm about to give up on my SATA drive as I can't get it to work properly.
> So I thought I may try asking the experts before falling back to PATA.
>
> I have seen many mails reporting the same issue, some of them 6-month old:
>
> - SATA drive comes up in pio mode, not in dma
> - trying to turn on dma with hdparm is a nightmare: I/O errors, crash
> with data corruption... I tried both:
>
> hddarm -d1 /dev/hde
>
> and:
>
> hdparm -u1 -c3 -d1 -X66 /dev/hde
>
> crash in both cases :-((
>
>
> Here's my equipment:
>
>
> ABIT AN7 motherboard (nForce2 chipset, SiI3112 SATA controller)
> AMD Athlon XP 2600+ (+ 512 DDR / 400 MHz)
> SATA HD Seagate Barracuda 160 Gb
>
> The SATA HD is my only drive. The only thing connected to my IDE
> controllers is a DVD/CD combo.
>
> Running Linux Redhat 9.0
> kernel 2.4.20-28.9
^^^^^^^^^^^^^^^^^^
This is your problem. There have been a number of bug-fixes to the
SiI drivers since 2.4.20. Try it again with a newer kernel -- such as
2.4.24.

> I've been googling for days now and could not come accross a solution,
> on the contrary I came under the impression that the combination of
> SiI3112 +and Seagate was doomed.

Not so. I have a SiI3112 controller and a 120GiB Seagate drive, and
they work very well together. I'm using 2.6.1, although 2.4.23 also
worked well for me.

[snip]
> Isn't there a solution??
>
> I am willing to try patches of experimental code. At this point I am
> looking at reinstalling everything on a PATA drive anyway, so I have
> nothing to loose.

Try using 2.4.24 or 2.6.1.

Hugo.

--
=== Hugo Mills: hugo@... carfax.org.uk | darksatanic.net | lug.org.uk ===
PGP key: 1C335860 from wwwkeys.eu.pgp.net or http://www.carfax.org.uk
--- All hope abandon, Ye who press Enter here. ---


Attachments:
(No filename) (1.90 kB)
signature.asc (189.00 B)
Digital signature
Download all attachments

2004-01-20 17:07:33

by Emmanuel Hislen

[permalink] [raw]
Subject: Re: SiI2112 + Seagate + nFroce2: no DMA!

Wonderful, so there is hope!

Yep my date was wrong because I was just coming back from flashing the
BIOS with a new version and clearing CMOS, which did not change a darn
thing and pushed me to send this mail :-)

RedHat seems to be releasing relatively old kernel so (what I have is
the latest from them), must say I never paid attention to it, now I will.

Thanks so much,

Emmanuel.

Hugo Mills wrote:

>On Tue, Dec 31, 2002 at 09:55:59PM -0800, manu wrote:
>
> Incidentally, did you know that the date on your computer is very,
>very wrong?
>
>
>
>>I'm about to give up on my SATA drive as I can't get it to work properly.
>>So I thought I may try asking the experts before falling back to PATA.
>>
>>I have seen many mails reporting the same issue, some of them 6-month old:
>>
>>- SATA drive comes up in pio mode, not in dma
>>- trying to turn on dma with hdparm is a nightmare: I/O errors, crash
>>with data corruption... I tried both:
>>
>> hddarm -d1 /dev/hde
>>
>>and:
>>
>> hdparm -u1 -c3 -d1 -X66 /dev/hde
>>
>>crash in both cases :-((
>>
>>
>>Here's my equipment:
>>
>>
>>ABIT AN7 motherboard (nForce2 chipset, SiI3112 SATA controller)
>>AMD Athlon XP 2600+ (+ 512 DDR / 400 MHz)
>>SATA HD Seagate Barracuda 160 Gb
>>
>>The SATA HD is my only drive. The only thing connected to my IDE
>>controllers is a DVD/CD combo.
>>
>>Running Linux Redhat 9.0
>>kernel 2.4.20-28.9
>>
>>
> ^^^^^^^^^^^^^^^^^^
> This is your problem. There have been a number of bug-fixes to the
>SiI drivers since 2.4.20. Try it again with a newer kernel -- such as
>2.4.24.
>
>
>
>>I've been googling for days now and could not come accross a solution,
>>on the contrary I came under the impression that the combination of
>>SiI3112 +and Seagate was doomed.
>>
>>
>
> Not so. I have a SiI3112 controller and a 120GiB Seagate drive, and
>they work very well together. I'm using 2.6.1, although 2.4.23 also
>worked well for me.
>
>[snip]
>
>
>>Isn't there a solution??
>>
>>I am willing to try patches of experimental code. At this point I am
>>looking at reinstalling everything on a PATA drive anyway, so I have
>>nothing to loose.
>>
>>
>
> Try using 2.4.24 or 2.6.1.
>
> Hugo.
>
>
>


2004-01-24 09:28:28

by Emmanuel Hislen

[permalink] [raw]
Subject: RE: SiI2112 + Seagate + nFroce2: no DMA!


Hi Hugo,

I have re-installed my machine with Fedora Core 1 (thinking a newer version
than RH9 would make the jump to 2.4.24 or 2.6 easier), and this fixed the
DMA issue :-)

Now my SATA drive is running stable in UDMA6.

However, performance is still way below expectations.

I got a huge improvement: my disc read speed (hdparm -t) went from 1.3 to 25
MB/sec.
This is still slower than my PATA drive on my 3 years old AMD 900 PC running
Redhat 9.0 (around 35 MB/sec).

Could you please let me know what you are getting so I know what to expect?


My next step is to try 2.4.24 or 2.6.1 as you suggested, but googling around
a little bit before I do so I found out a few worrying things:

- people have reported a drop in performance on SATA in some 2.6 based
kernel (2.6.0-test9), with reported speeds around 20MB/sec. Apparently there
is no more way to tune max_kb_per_req in 2.6??
- I have found reports that both ide and libdata libraries are limiting
max_kb_per_req to 15 Kb specifically for Seagate drives. So It looks like I
can't even set it to 128 (I did not even try as I saw reports of memory
corruption).

So basically since you've got it to work I'd like to know:

* what speed you get, and what is the RPM of your Seagate
* what is your max_kb_per_req setting (I have 15K)
* what is your accoustic management setting (I have 0)


I could not fix the time on linux so I am sending this mail from WinXP (just
kidding I lost my mails on the linux machine after re-installing :-).


Thanks,


Emmanuel.



-----Message d'origine-----
De : Hugo Ranger Mills [mailto:[email protected]]De la part de Hugo
Mills
Envoye : Tuesday, January 20, 2004 12:58 AM
A : manu
Cc : [email protected]
Objet : Re: SiI2112 + Seagate + nFroce2: no DMA!


On Tue, Dec 31, 2002 at 09:55:59PM -0800, manu wrote:

Incidentally, did you know that the date on your computer is very,
very wrong?

> I'm about to give up on my SATA drive as I can't get it to work properly.
> So I thought I may try asking the experts before falling back to PATA.
>
> I have seen many mails reporting the same issue, some of them 6-month old:
>
> - SATA drive comes up in pio mode, not in dma
> - trying to turn on dma with hdparm is a nightmare: I/O errors, crash
> with data corruption... I tried both:
>
> hddarm -d1 /dev/hde
>
> and:
>
> hdparm -u1 -c3 -d1 -X66 /dev/hde
>
> crash in both cases :-((
>
>
> Here's my equipment:
>
>
> ABIT AN7 motherboard (nForce2 chipset, SiI3112 SATA controller)
> AMD Athlon XP 2600+ (+ 512 DDR / 400 MHz)
> SATA HD Seagate Barracuda 160 Gb
>
> The SATA HD is my only drive. The only thing connected to my IDE
> controllers is a DVD/CD combo.
>
> Running Linux Redhat 9.0
> kernel 2.4.20-28.9
^^^^^^^^^^^^^^^^^^
This is your problem. There have been a number of bug-fixes to the
SiI drivers since 2.4.20. Try it again with a newer kernel -- such as
2.4.24.

> I've been googling for days now and could not come accross a solution,
> on the contrary I came under the impression that the combination of
> SiI3112 +and Seagate was doomed.

Not so. I have a SiI3112 controller and a 120GiB Seagate drive, and
they work very well together. I'm using 2.6.1, although 2.4.23 also
worked well for me.

[snip]
> Isn't there a solution??
>
> I am willing to try patches of experimental code. At this point I am
> looking at reinstalling everything on a PATA drive anyway, so I have
> nothing to loose.

Try using 2.4.24 or 2.6.1.

Hugo.

--
=== Hugo Mills: hugo@... carfax.org.uk | darksatanic.net | lug.org.uk ===
PGP key: 1C335860 from wwwkeys.eu.pgp.net or http://www.carfax.org.uk
--- All hope abandon, Ye who press Enter here. ---