View previous topic :: View next topic |
Author |
Message |
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Sat Jul 31, 2004 1:13 pm Post subject: DMA problems and SATA [Solved] |
|
|
Hi,
I have recently bought a 200GB SATA hard drive. I have a K8T NEO FISH, so I can use both the promise or the VIA chipset of the motherboard. When I use the PROMISE, my drive is detected as /dev/sda, and when I use the VIA, my drive is detected as /dev/hde.
At the first look, all seems to work fine, but in reallity, whatever is the driver I choose, I got problems when copying large files from a PATA disk to my SATA disk, or the opposites.
The systems is running into heavy load (90% apporximately), and the desktop envirronnement is not as responsive as always. Sometimes, the "copy" operation is freezing completely, then restart 10 seconds later. When it occurs, /var/log/messages says :
Jul 31 07:50:06 mygale hdb: dma_timer_expiry: dma status == 0x64
Jul 31 07:50:16 mygale hdb: DMA interrupt recovery
Jul 31 07:50:16 mygale hdb: lost interrupt
(hdb being a PATA drive)
I have try many different soutions found in others forums, like noacpi or doscsi options. I have tried changing filesystems from ext 3 to reiser fs. I have tried to disable loop encryption. Nothing as worked.
I am desesperate now ... Does someone have a solution ?
PS :My kernel is gentoo-dev-sources-r11.
Last edited by ultraViolet on Sat Jul 31, 2004 2:15 pm; edited 1 time in total |
|
Back to top |
|
|
golloza Guru
Joined: 14 Mar 2004 Posts: 427
|
Posted: Sat Jul 31, 2004 1:16 pm Post subject: |
|
|
Do you have the drivers for your chipsets integrated in the kernel? |
|
Back to top |
|
|
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Sat Jul 31, 2004 1:22 pm Post subject: |
|
|
Yes, I think all the drivers are activated....
<*> PROMISE PDC202{68|69|70|71|75|76|77} support
<*> VIA82CXXX chipset support
<*> Promise SATA TX2/TX4 support
<*> VIA SATA support
PS :
I have seen in a forum that the problem was solvable when disabling IO-APIC in "processor type and features of the kernel", but the amd64 kernel has no option like this...
http://seclists.org/lists/linux-kernel/2003/May/3901.html |
|
Back to top |
|
|
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Sat Jul 31, 2004 2:20 pm Post subject: |
|
|
I've solved the problem using Bartlomiej Zolnierkiewicz's patch, as shown in http://www.cs.helsinki.fi/linux/linux-kernel/2003-19/1192.html
Edit : /usr/src/linux/drivers/ide/ide-io.c and change the lines as indicated :
- if (hwif->irq != masked_irq)
+ if (masked_irq != IDE_NO_IRQ && hwif->irq != masked_irq)
- if (hwif->irq != masked_irq)
+ if (masked_irq != IDE_NO_IRQ && hwif->irq != masked_irq)
But dont change the following lines :
if (startstop == ide_stopped)
hwgroup->busy = 0;
Recompile your kernel, and reboot.
Last edited by ultraViolet on Mon Sep 20, 2004 12:13 pm; edited 1 time in total |
|
Back to top |
|
|
-Octane- n00b
Joined: 07 Aug 2003 Posts: 24
|
Posted: Fri Aug 06, 2004 7:22 am Post subject: |
|
|
wow thanks it solved my problem too
before i wasn't even able to boot, now its working, thx alot
(on a via integrated sata) |
|
Back to top |
|
|
crazycat l33t
Joined: 26 Aug 2003 Posts: 838 Location: Hamburg, Germany
|
Posted: Fri Aug 06, 2004 8:14 am Post subject: |
|
|
Disabling irq sharing in kernel helped me, but under very heavy load i still got it. I'm eager to see if the patch will solve it... |
|
Back to top |
|
|
Saint1911 Tux's lil' helper
Joined: 30 Dec 2002 Posts: 90 Location: England
|
Posted: Fri Aug 06, 2004 8:39 pm Post subject: |
|
|
Thanx Ultraviolet for Bartlomiej Zolnierkiewicz's patch that really helped my data transfers . Now my sata drives owns my ide server transfer _________________ Finally, in conclusion, I shall say only this |
|
Back to top |
|
|
Kow Apprentice
Joined: 28 Dec 2003 Posts: 227
|
Posted: Sun Aug 08, 2004 6:31 am Post subject: |
|
|
OMFG somebody for god's sake sticky this post, or mention it somewhere.
I want to hug that russian dude. _________________ -Kow |
|
Back to top |
|
|
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Sun Aug 08, 2004 1:30 pm Post subject: |
|
|
I needed a lot of time to find this one, because I'm a beginner. Perhaps this should be integrated in the kernel ? Since I have make this change, I got no problem anymore (even under heavy load) |
|
Back to top |
|
|
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Sun Aug 08, 2004 1:35 pm Post subject: |
|
|
Kow wrote: | OMFG somebody for god's sake sticky this post, or mention it somewhere.
I want to hug that russian dude. |
I think you are right, it should be made sticky or mentionned. But I don't know who to contact to make it more visible ? |
|
Back to top |
|
|
Fran Guru
Joined: 29 Feb 2004 Posts: 530 Location: Coruña (Spain)
|
Posted: Mon Oct 18, 2004 11:13 am Post subject: |
|
|
I'm having the same problem. When I make a heavy transfer from hda to sda, the hda disk stops responding for some seconds and the dma_timer_expiry appears in dmesg. I cannot understand how this patch has still not been applied to the kernel since august. Does it break anything else? |
|
Back to top |
|
|
nedwards n00b
Joined: 02 Jan 2003 Posts: 3
|
Posted: Mon Oct 18, 2004 1:21 pm Post subject: |
|
|
After I applied this patch about a month ago, the problem has not reappeared. This bug made the server unresponsive meaning I had to reset whenever it was put under load. |
|
Back to top |
|
|
Fran Guru
Joined: 29 Feb 2004 Posts: 530 Location: Coruña (Spain)
|
Posted: Mon Oct 18, 2004 2:12 pm Post subject: |
|
|
I tried to make some heavy transfers from hda to sda after patching and the error has really dissappeared. I compared the origin and destination files everytime to be sure that this patch was actually solving the problem and not hiding it, and the files were the same.
This patch should be applied to the kernel. Either in the kernel itself or in a patchset. |
|
Back to top |
|
|
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Mon Oct 18, 2004 6:28 pm Post subject: |
|
|
Perhaps this patch is bringing troubles in some cases, with some rares or stranges hardware ?
EDIT :
I would like to precise that a friend of mine having a x86 system has solved the same problem on his computer using this patch... |
|
Back to top |
|
|
Fran Guru
Joined: 29 Feb 2004 Posts: 530 Location: Coruña (Spain)
|
Posted: Fri Oct 22, 2004 8:47 pm Post subject: |
|
|
I tried the new 2.6.9-r1 dev-sources without patching under heavy load and the problem seems to have dissappeared . |
|
Back to top |
|
|
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Sun Oct 24, 2004 10:56 pm Post subject: |
|
|
Fran wrote: | I tried the new 2.6.9-r1 dev-sources without patching under heavy load and the problem seems to have dissappeared . |
I have tried it too but the SATA drive sda is not detected at boot sequence. Do you have some problem installing the SATA drivers ? |
|
Back to top |
|
|
Fran Guru
Joined: 29 Feb 2004 Posts: 530 Location: Coruña (Spain)
|
Posted: Mon Oct 25, 2004 5:53 pm Post subject: |
|
|
Quote: | Do you have some problem installing the SATA drivers ? |
No, I haven't. I have my linux in the sata drive, works ok. This is my kernel config:
Code: |
#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=y
[...]
# SCSI device support
#
CONFIG_SCSI=y
# CONFIG_SCSI_PROC_FS is not set
#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
[...]
#
# SCSI low-level drivers
#
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
CONFIG_SCSI_SATA=y
# CONFIG_SCSI_SATA_SVW is not set
# CONFIG_SCSI_ATA_PIIX is not set
# CONFIG_SCSI_SATA_NV is not set
# CONFIG_SCSI_SATA_PROMISE is not set
# CONFIG_SCSI_SATA_SX4 is not set
# CONFIG_SCSI_SATA_SIL is not set
# CONFIG_SCSI_SATA_SIS is not set
CONFIG_SCSI_SATA_VIA=y
|
|
|
Back to top |
|
|
ultraViolet Apprentice
Joined: 03 Apr 2004 Posts: 280 Location: Lyon, France
|
Posted: Tue Nov 09, 2004 11:33 am Post subject: |
|
|
Thank you, I had forgotten to activate some option.. All is working fine now. I confirm that the DMA problem is resolved in kernel 2.6.9 series. |
|
Back to top |
|
|
Fran Guru
Joined: 29 Feb 2004 Posts: 530 Location: Coruña (Spain)
|
Posted: Sun Nov 21, 2004 12:47 am Post subject: |
|
|
I think I declared victory too soon. I got another dma_timer_expiry today while watching a movie. I suppose I'll have to reaply the patch. |
|
Back to top |
|
|
|