Hard Drive stability issues

I think I am having trouble with poor sata cabls I got from ali.
They are 1 meter and very flimsy. I doubt there is much of a shielding. My read errors are very high.

For trial, I would like to use a better cable such as shielded e-sata cables. Unfortunately I do not finde shielded sata cables.
What cables do you use and which experience do you have with them?
Any sugestions for good shielded cables?

Check the very first sentence in this article - What Is The Maximum Sata Device Cable Length

1 Like

Isn’t that the very same point?

I’m at the max spacification for sata cables and would prefer to use e-sata cables - but the plug does not match.
Unfortunately, I do not have the ability to use shorter cables at the corners of my rig. The distance is just too large.
I though of shielding the cables manually but that’s quite expensive with copper hose. Maybe other Solutions exist.

Maybe not. The length of the cable is constrained by S/N ratio and round trip signal return. Internal SATA is running at higher speeds than eSATA (I think), as such eSATA is meant to run at slower speed, thus if round trip is the issue with that 1m, eSATA will not help, as it will be forced to run at higher speeds / shorter round trips.

If we assume that S/N ratio is the problem, then we should see SATA cables using twisted pairs (as Ethernet), and we don’t see those.

I am not 100% sure about that (didn’t read SATA cable spec), but I think that the round trip is most likely the issue.

With that said, if you could check your SATA driver, maybe it has an option to limit the speed to SATA II (3 Gbps). That is still fast enough for HDs (at least running chia, as it is around 300MBps), but would relax the round trip restriction, so potentially can cure your issue.

UPDATE
Actually, it is even more than what I wrote above. The eSATA signal is meant to run a higher voltages to combat S/N limitations. So, even if you plug it into standard SATA connector, it may still have S/N issues.

Also, it looks like that shielding is just to satisfy EMI requirements (FCC/CE), so this is not really helping with cross-talk.

Still, reducing the SATA speed (to 3GBps) may help.

Check this article - SATA - Wikipedia ()

1 Like

Time to move to SAS. Its just so much better than SATA, and cables can be up to 10 meters.

Serial Attached SCSI - Wikipedia.

1 Like

I thought bad cables report as i-o errors, and read errors is the drive itself?
I’m using sas cards, with sata drives and works with the cheap thin light blue 8087 to 4x sata cables.
Considering how cheap their made it wouldn’t be impossible to have a bad batch I guess, but I wouldn’t rule other causes.

hmm.
I was able to apply link speed to the kernel but it seems its not correctly applied to all drives:

dmesg | grep -i sata | grep 'link up'
[    3.868051] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[    4.484055] ata2: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[    5.136049] ata5: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[    5.824057] ata6: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[    7.974151] ata81: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[    9.734142] ata105: SATA link up 6.0 Gbps (SStatus 133 SControl 310)
[   24.747997] ata82: SATA link up 6.0 Gbps (SStatus 133 SControl 310)
[   25.139942] ata83: SATA link up 6.0 Gbps (SStatus 133 SControl 310)
[   31.089868] ata106: SATA link up 3.0 Gbps (SStatus 123 SControl 310)
[   31.548872] ata107: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[   32.034897] ata108: SATA link up 3.0 Gbps (SStatus 123 SControl 310)

seems like the kernel is trying to enforce but somehow fails:

dmesg | grep ata105
[    8.782110] ata105: FORCE: PHY spd limit set to 1.5Gbps
[    8.790608] ata105: SATA max UDMA/133 abar m8192@0xf6580000 port 0xf6580100 irq 128
[    9.734142] ata105: SATA link up 6.0 Gbps (SStatus 133 SControl 310)
[    9.745931] ata105.00: ATA-10: WDC WD60EFAX-68SHWN0, 82.00A82, max UDMA/133
[    9.757252] ata105.00: 11721045168 sectors, multi 16: LBA48 NCQ (depth 32), AA
[    9.779879] ata105.00: configured for UDMA/133

What did you do to limit it? I assume, you used (centos6 - How to reduce the SATA link speed of drive in CentOS? - Server Fault):

GRUB_CMDLINE_LINUX="libata.force=1.5"

Also, another option would be to potentially isolate drives that show problems (maybe now those at 6 Gbps), and move them to a SATA 2 controller.

Saying that, 1m is potentially not a hard limit. It looks like the S/N ratio may be the problem (i.e., low voltage signals), as only the round-trip part is enforcing hard limits (otherwise, SAS cables would be also limited in the same way). So, to some extent, you can read the spec that up to 1m it has to work, where longer than that it will start showing problems. What it means is that the quality of your cables may be the main contributor here. Not so much that those are not shielded, etc., but either the insulation is not thick enough (cable separation), or is more EM permissive, … With the output you have there, you only have 3 drives running at 6 Gbps, so I would keep the settings as you have, and purchase different cables just for those three, and go from there.

1 Like