How to get DMA working in Linux w. Seagate Serial-ATA Drives

Everything Linux nForced in here: installation, drivers, discussion...

Moderators: nForcer, Moderators

avatar
Google
Adsense
Google
 
Posts: 900913
Joined: March 2003
Location: Forum

How to get DMA working in Linux w. Seagate Serial-ATA Drives

Postby anybody » Sun May 04, 2003 9:08 pm

Hello everyone,

probably not many people own SATA Drives by now, and even less use them in linux. Whether that is because it does not work or because Linux users typically like old fashioned hardware is for you to decide ;-)

Anyway, in case you wanna have a working SATA in Linux make sure you do the following.

- Get a recent Kernel, i suggest 2.4.21-rc1 or higher
- Compile the Kernel with the Silicon Image Driver enabled
- Boot using this kernel ;-)

Congratulations, basically it will work now.

However:
- Bootup is slow when only one Drive is attached
=> Possible Solutions: Buy another SATA Drive or patch the driver manually :-)
- DMA does not work when using Seagate Serial ATA Drives like the Barracuda V [Enabling DMA crashes PC]
=> Possible Solutions:
==> Don't use DMA [VERY BAD IDEA; I/O Performance is horrible!]
==> OR Do the following after bootup:
===> echo max_kb_per_request:15 > /proc/ide/hde/settings
===> echo max_kb_per_request:15 > /proc/ide/hdg/settings
===> hdparm -X66 /dev/hde
===> hdparm -X66 /dev/hdg
===> hdparm -d1 /dev/hde
===> hdparm -d1 /dev/hdg


You should now have about 36MB/s Transfer Speed (measured with hdparm) opposed to 1,3MB/s without DMA.

Yours sincerely,
anybody
Last edited by anybody on Sun May 04, 2003 10:29 pm, edited 1 time in total.
anybody
nFHQ Member
nFHQ Member
 
Posts: 13
Joined: Sun Dec 22, 2002 5:20 pm

Re: How to get DMA working in Linux w. Seagate Serial-ATA Drives

Postby hachre » Sun May 04, 2003 9:12 pm

Awesome!!!
anybody you rock!!

I couldn't use dma for ages now and now it works perfectly :D

thank you so much for that info :)
hachre
nFHQ Member
nFHQ Member
 
Posts: 8
Joined: Tue Apr 15, 2003 3:09 pm

Re: How to get DMA working in Linux w. Seagate Serial-ATA Dr

Postby leibold » Sun May 04, 2003 11:27 pm

anybody wrote:- DMA does not work when using Seagate Serial ATA Drives like the Barracuda V [Enabling DMA crashes PC]
Do the following after bootup:
===> echo max_kb_per_request:15 > /proc/ide/hde/settings
===> echo max_kb_per_request:15 > /proc/ide/hdg/settings
===> hdparm -X66 /dev/hde
===> hdparm -X66 /dev/hdg
===> hdparm -d1 /dev/hde
===> hdparm -d1 /dev/hdg

Many thanks, I previously tried hdparm -c1d1X69 and while working really fast for a short period of time it would hang the system (hard). I'm using a single Seagate Barracuda ST380023AS SATA disk drive. Where did you find the solution of reducing transfer size for the Seagate disks ?
Do you have any idea whether 32-bit transfers (c1 or c3) are safe ?
I tried your settings (15KB transfers and hdparm -d1X66) successfully with the stock SuSE 8.2 Athlon kernel.
Thank you very much!
leibold
nLightened
nLightened
 
Posts: 133
Joined: Sat Jan 04, 2003 9:25 pm
Location: Sunnyvale, CA

Re: How to get DMA working in Linux w. Seagate Serial-ATA Drives

Postby anybody » Sun May 04, 2003 11:34 pm

I harrased the driver programmer long enough so he would tell me how to make it work :-)

I really searched the whole Web, Newsgroups and a number of mailing lists and found NOTHING AT ALL concerning this problem...

This 'incompatibility' will probably be fixed sometime with a new siimage linux driver, but since nobody pays him to write the driver that might take some time till he finds the time to do so...

I have no idea about other Performance-Enhancing Parameters but i know that performance using just X66 and d1 is fast enough for me (i have been using linux without any dma for weeks now and that really is a pain). At least for the time beeing.

... any
anybody
nFHQ Member
nFHQ Member
 
Posts: 13
Joined: Sun Dec 22, 2002 5:20 pm

Re: How to get DMA working in Linux w. Seagate Serial-ATA Drives

Postby BIM2k » Mon May 05, 2003 12:05 am

good work :)
many thanks for sharing!
deserves a sticky or a place in the FAQs and Guides :mrgreen:

-BIM2k
(.)(.)
:fluffy: http://www.nationalbreastcancer.org/ :fluffy:

Happiness is when what you think, what you say, and what you do are in harmony.
Mahatma Gandhi (1869 - 1948)
User avatar
BIM2k
Moderator
Moderator
 
Posts: 6502
Joined: Tue Jun 11, 2002 1:53 pm
Location: training a lion :)

That helps, but...

Postby akimball » Mon May 05, 2003 1:11 pm

I thought I'd be K0oL and get a serial drive for my only drive. The problem is that this machine is my Linux machine - used for work (clearcase, jboss, etc).. I can't handle the slow boot up, and slow speeds.

I bought another Barracuda, but not serial this time. The problem is, I need to copy the serial drive, sector by sector to the new IDE drive when it arrives tomorrow. I have no idea how to do this. I know there must be some way of doing it, but don't know. The drive has a small windows partition, followed by 6 or so linux partitions. All I want to do is clone the damn thing.. any ideas?

Can I boot off of the installation cd, go into a terminal and copy from there? I don't want to deal with individual filesystems, partitions, etc - just a straight sector by sector copy of it.

Thanks,
Adam
akimball
nFHQ Member
nFHQ Member
 
Posts: 6
Joined: Mon Apr 28, 2003 1:34 am

Re: That helps, but...

Postby BIM2k » Mon May 05, 2003 6:09 pm

akimball wrote:...I bought another Barracuda, but not serial this time. The problem is, I need to copy the serial drive, sector by sector to the new IDE drive when it arrives tomorrow. .... All I want to do is clone the damn thing.. any ideas?

Thanks,
Adam


I've not done it myself (not needed to) but this may help. Let us know how you get on.

HTH
(.)(.)
:fluffy: http://www.nationalbreastcancer.org/ :fluffy:

Happiness is when what you think, what you say, and what you do are in harmony.
Mahatma Gandhi (1869 - 1948)
User avatar
BIM2k
Moderator
Moderator
 
Posts: 6502
Joined: Tue Jun 11, 2002 1:53 pm
Location: training a lion :)

Re: How to get DMA working in Linux w. Seagate Serial-ATA Drives

Postby BIM2k » Mon May 05, 2003 6:15 pm

From PowerQuest Drive Image 2002 info:

Supports FAT, FAT32, NTFS, and Linux Ext2/Swap file systems


I wouldn't recommend it though.
(.)(.)
:fluffy: http://www.nationalbreastcancer.org/ :fluffy:

Happiness is when what you think, what you say, and what you do are in harmony.
Mahatma Gandhi (1869 - 1948)
User avatar
BIM2k
Moderator
Moderator
 
Posts: 6502
Joined: Tue Jun 11, 2002 1:53 pm
Location: training a lion :)

Re: How to get DMA working in Linux w. Seagate Serial-ATA Drives

Postby anybody » Mon May 05, 2003 6:28 pm

I really can recommend the Acronis Partition Expert, or the Acronis TrueImage Program. Since they are Payware contact me by PM if you need one ;-)
[Those Acronis Programs are just like Powerquest's Stuff, but much much better and more reliable]

Anyway, i think copying the whole harddrive using the 'dd' command should work too...
Last edited by anybody on Tue May 06, 2003 11:29 am, edited 1 time in total.
anybody
nFHQ Member
nFHQ Member
 
Posts: 13
Joined: Sun Dec 22, 2002 5:20 pm

Re: How to get DMA working in Linux w. Seagate Serial-ATA Drives

Postby eemo » Mon May 05, 2003 7:09 pm

hey, thanks for the update, its really made a markable improvement

please let me know of any further improvements, cos these drives are supposed to be kickin way above 100mb/s transfer rate
eemo
nFHQ Member
nFHQ Member
 
Posts: 5
Joined: Mon May 05, 2003 7:00 pm
avatar
Google
Adsense
Google
 
Posts: 900913
Joined: March 2003
Location: Forum
Next

Return to nForce Linux



Who is online

Users browsing this forum: MSN [Bot] and 0 guests