LinuxQuestions.org
Help answer threads with 0 replies.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 09-05-2006, 01:53 PM   #1
redarrow
Member
 
Registered: Jul 2005
Location: South Africa
Distribution: Fedora Core
Posts: 32

Rep: Reputation: 15
Question Hdd errors: hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }


Hi all,

I've been having problems with my HDD, the kernel log reports the following:
Code:
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
ide0: reset: success
It does this randomly and normally is accompanied by the system momentarily "locking up"...
I thought I might have a bad hard drive, however I replaced it recently and the new one is doing precisely the same thing

I also checked the smartd error logs (smartctl -l error /dev/hda), which contained some errors too:
Code:
Error 87 occurred at disk power-on lifetime: 155 hours (6 days + 11 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  84 51 00 00 00 00 e0  Error: ICRC, ABRT at LBA = 0x00000000 = 0

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  25 00 08 3a 27 95 e0 00      00:25:19.760  READ DMA EXT
  25 00 08 3a 27 95 e0 00      00:25:19.758  READ DMA EXT
  10 00 3f 00 00 00 e0 00      00:25:19.436  RECALIBRATE [OBS-4]
  25 00 08 3a 27 95 e0 00      00:25:19.416  READ DMA EXT
  25 00 08 3a 27 95 e0 00      00:25:18.983  READ DMA EXT
Anybody have any ideas what's going on here?
Remedies or ideas?

Thanks!
 
Old 09-05-2006, 10:09 PM   #2
Half_Elf
LQ Guru
 
Registered: Sep 2001
Location: Montreal, Canada
Distribution: Slackware; Debian; Gentoo...
Posts: 2,163

Rep: Reputation: 46
Sound like your hdd is dying... at least it would be my first guess. In any ways, BACK UP NOW.

Maybe it's just your DMA settings that are too intensive, you could try to slow this down with hdparm.
[WARNING : below commands can be dangerous. Beware!]
First, use hdparm to get your disk supported settings, like in : "hdparm -vi /dev/hda".
You should get some infos like :

...
PIO modes : pio0 pio1 pio2 pio3 pio4
DMA modes : mdma0 mdma1 mdma2
UDMA modes : udma0 udma2 udma3 *udma4
...

The * is what you are currenly using. To slow it down, try a command like :
"hdparm -Xudma0 /dev/hda"

DMA is very intensive on hdd, plus using a mode badly supported by your hdd might make it to die faster than usual.
It is also possible that your motherboard is getting old and that the chipset is sending some bad things to the hdds.
Or maybe your power supply is having up-down, which are deadly to any electronic components.
 
Old 09-06-2006, 06:16 AM   #3
redarrow
Member
 
Registered: Jul 2005
Location: South Africa
Distribution: Fedora Core
Posts: 32

Original Poster
Rep: Reputation: 15
Hi Half_Elf, Thanks very much for your response!

Quote:
Originally Posted by Half_Elf
Sound like your hdd is dying... at least it would be my first guess. In any ways, BACK UP NOW.
That's what I first thought.. but two hdd's in a row? This one is only about one month old..
I have backup up my important stuff though

Quote:
Originally Posted by Half_Elf
Maybe it's just your DMA settings that are too intensive, you could try to slow this down with hdparm.
[WARNING : below commands can be dangerous. Beware!]
First, use hdparm to get your disk supported settings, like in : "hdparm -vi /dev/hda".
You should get some infos like :

...
PIO modes : pio0 pio1 pio2 pio3 pio4
DMA modes : mdma0 mdma1 mdma2
UDMA modes : udma0 udma2 udma3 *udma4
...

The * is what you are currenly using. To slow it down, try a command like :
"hdparm -Xudma0 /dev/hda"

DMA is very intensive on hdd, plus using a mode badly supported by your hdd might make it to die faster than usual.
I will give this a try and report back... thanks!

Quote:
Originally Posted by Half_Elf
It is also possible that your motherboard is getting old and that the chipset is sending some bad things to the hdds.
Or maybe your power supply is having up-down, which are deadly to any electronic components.
I had actually wondered about my PSU.. some of the voltage levels seem a bit low...
I was planning to replace it shortly..

Thanks again..
 
Old 09-06-2006, 10:02 AM   #4
redarrow
Member
 
Registered: Jul 2005
Location: South Africa
Distribution: Fedora Core
Posts: 32

Original Poster
Rep: Reputation: 15
Hmm, running the command: "hdparm -vi /dev/hda" results in:
Code:
/dev/hda:
 multcount    = 16 (on)
 IO_support   =  1 (32-bit)
 unmaskirq    =  1 (on)
 using_dma    =  1 (on)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 geometry     = 30401/255/63, sectors = 488397168, start = 0

 Model=ST3250820A, FwRev=3.AAC, SerialNo=5QE006BF
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=unknown, BuffSize=8192kB, MaxMultSect=16, MultSect=16
 CurCHS=65535/1/63, CurSects=4128705, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: Unspecified:  ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7

 * signifies the current active mode
Which is kind of odd... the * which is meant to tell me the currently active mode is not there??
I copied this straight from my terminal btw...

Any ideas?

Thanks..
 
Old 09-06-2006, 10:14 AM   #5
Half_Elf
LQ Guru
 
Registered: Sep 2001
Location: Montreal, Canada
Distribution: Slackware; Debian; Gentoo...
Posts: 2,163

Rep: Reputation: 46
Hmmm okay, this might be the problem. Either your system is using a mode not supported by your hdd, or the system can't tell you what mode it is using.
Sooo my guest would be to force a DMA mode; udma2 is the fastest it seems to support, so if you like the best performance it would be the correct choice. However you might want to slow it down (to udma0 as example).
So, something like :
"hdparm -Xudma0 /dev/hda"

You might need to modify your boot script then to force the system to use this mode each time it boots up.
 
Old 09-06-2006, 10:44 AM   #6
redarrow
Member
 
Registered: Jul 2005
Location: South Africa
Distribution: Fedora Core
Posts: 32

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by Half_Elf
Hmmm okay, this might be the problem. Either your system is using a mode not supported by your hdd, or the system can't tell you what mode it is using.
Funny thing is it seems to know what it is during startup...
dmesg | grep hda :
Code:
    ide0: BM-DMA at 0xe000-0xe007, BIOS settings: hda:DMA, hdb:DMA
hda: ST3250820A, ATA DISK drive
hda: max request size: 512KiB
hda: 488397168 sectors (250059 MB) w/8192KiB Cache, CHS=30401/255/63, UDMA(100)
hda: cache flushes supported
UDMA 100... According to seagate my HDD is meant to support UDMA 100 ...

Quote:
Originally Posted by Half_Elf
Sooo my guest would be to force a DMA mode; udma2 is the fastest it seems to support, so if you like the best performance it would be the correct choice. However you might want to slow it down (to udma0 as example).
So, something like :
"hdparm -Xudma0 /dev/hda"

You might need to modify your boot script then to force the system to use this mode each time it boots up.
That works to set the mode... I'll have to try if for a while to see if the errors occur again..

It's just a bit sucky because it slows the disk down quite a bit - I discovered the read test with hdparm: hdparm -t /dev/hda..

On the default settings I get:
Code:
/dev/hda:
 Timing buffered disk reads:  210 MB in  3.00 seconds =  69.88 MB/sec
With hdparm -Xudma2 /dev/hda applied it drops to:

Code:
/dev/hda:
 Timing buffered disk reads:   86 MB in  3.03 seconds =  28.38 MB/sec
However if it solves the problem... stability before speed..

Thanks!
 
Old 09-16-2006, 09:37 AM   #7
redarrow
Member
 
Registered: Jul 2005
Location: South Africa
Distribution: Fedora Core
Posts: 32

Original Poster
Rep: Reputation: 15
Just for interests sake, I believe I have solved this problem...
I replaced my PSU (which I believed to be faulty) exactly one week ago, and the problem has not returned once since then...
 
Old 09-16-2006, 10:44 AM   #8
Half_Elf
LQ Guru
 
Registered: Sep 2001
Location: Montreal, Canada
Distribution: Slackware; Debian; Gentoo...
Posts: 2,163

Rep: Reputation: 46
Glad to hear that.
So the PSU was messy... Interesting.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
hdb: task_in_intr: status=0x59 { DriveReady SeekComplete DataRequest Error }HELP! Lord Hakk Linux - Hardware 3 06-30-2006 04:04 PM
: dma_intr: status=0x51 { DriveReady SeekComplete Error } carboncopy Slackware 7 07-07-2004 04:02 AM
hda: dma_intr: status =0x51 { DriveReady SeekComplete Error } spank Linux - Newbie 5 09-17-2003 01:04 PM
hdparm + linux kernel: hda: drive_cmd: status=0x51 caphclimber Linux - Software 1 09-13-2003 08:48 PM
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error } markstoe Linux - General 7 11-14-2002 04:21 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 12:30 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration