The SATA driver of my 2.6.23-gentoo kernel was ticking me off for some time now.
At some point in time, more or less random, it decided to start resetting ports.
Note: It’s not very nice if it resets the port your main harddrive is connected to…
Ever found something like this in your syslog ?
ata8: COMRESET failed (errno=-16) ata8: limiting SATA link speed to 1.5 Gbps ata8: hard resetting port ata8: COMRESET failed (errno=-16) ata8: reset failed, giving up ata8: EH pending after completion, repeating EH (cnt=4) ata8: exception Emask 0x10 SAct 0x0 SErr 0x150000 action 0x2 frozen ata8: hard resetting port ata8: port is slow to respond, please be patient (Status 0x80)
Well, I have, TONS of it.
Read on to see how I fixed it.
It was seriously one of the most annoying f’ups my Linux had over the last time.
It’s not that important if it keeps resetting my DVD drive.
BUT
Every time it does so, the drive makes a very faint little ‘beep’ noise, spins up, blinks.
What’s even worse, it does that every 10 or 20 seconds.
So I did a lot of googling and came across a forum post of sorts (can’t remember the source) where one recommended disabling IDE/ATA support in the kernel.
Well, what do I need IDE for anyways, my whole system (2 Raptors in RAID1, large storage drive, DVD burner) is pure SATA. No old IDE devices anywhere to be found.
Short story: I completely removed old-style IDE support and only kept the new SATA / PATA support:
Device Drivers --->
< > ATA/ATAPI/MFM/RLL support --->
SCSI device support --->
<*> SCSI disk support
<*> SCSI CDROM support
<*> SCSI generic support
<*> Serial ATA (prod) and Parallel ATA (experimental) drivers --->
<*> NVIDIA SATA support
<*> Silicon Image SATA support
<*> Silicon Image 3124/3132 SATA support
<*> AMD/NVidia PATA support
For now it looks like it addressed the problem quite well, haven’t had it happening since I changed it a day ago.