5

My SATA SSD, in a span of about 2 years has developed over 37K CRC errors. These have not linearly increased. There have been just 3 -4 instances where Windows hung and later after inspecting SMART parameters I found a substantial increase in the CRC error Count. The increase has been sudden in amounts to 7 – 8K at a time. SSD otherwise operates normally.

I am wondering what the reason for such a behavior could be. I have good quality SATA cables and they are not excessively bent or twisted in the cabinet.

Moreover the issue seems to be self-limiting. Without touching anything (No need to re-seat SATA cable or so) it recovers on its own and then works just fine for another few months before showing such a sporadic behavior.

That makes me wonder if there's something on the SSD itself that might be causing this?

I have another HDD connected to the same SATA controller, it has never shown such a behavior so far.

System Configuration - Motherboard 880GM USB3, SATA II, AMD SB710 Chipset, Windows 7 64, 8GB RAM, Samsung EVO 850 120GB SSD, Seagate Barracuda 2.5 HDD.

enter image description here

  • 1
    CRC is only used by the SATA interface. It has nothing to do with the stored data of the SSD, which uses ECC for detection and correction of errors. See superuser.com/questions/641219/… – sawdust Feb 12 '18 at 7:05
  • I also had such CRC issues with a damaged cable. So replce it – magicandre1981 Feb 12 '18 at 15:18
4

I had the same issue but found the root of the problem. It has nothing to do with bad cable/RAM/CPU. It's because of incompatibility between your Samsung SSD and your AMD chipset's SATA controller. The best solution to prevent occasional stuttering and increasing CRC errors is to disable NCQ (Native Command Queue) in your SATA driver

  1. If you use the default storahci MS driver add to the registry [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\Parameters\Device] "NcqDisabled"=dword:00000001 or "SingleIO"=hex(7):2a,00,00,00,00,00

  2. If you use the AMD SATA driver add this instead: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\amd_sata\Parameters\Device] "AmdSataNCQDisabled"=dword:0000000F or "AmdSataQueueDepth"=dword:00000001

Another solution is to switch your SATA controller to IDE mode but it results in slower performance than the above workarounds.

  • Thanks for this answer. For a while (almost since I asked this question) the issue has not reoccurred. However I will implement your suggestion and explore for some more time. – rajeev Aug 1 '18 at 11:30
  • It's very easy to reproduce this problem with disk test utilities that use random writes with 32 queue depth (such as CrystalDiskMark). Only the 4K QD32 write test causes massive CRC errors in case of SB 710/750 AMD SATA controllers with default settings. Testing with CrystalDiskMark is also useful because it can help to determine the amount of slowdown caused by the different workarounds. – Falcosoft Aug 1 '18 at 20:23
  • I had that issue with an AMD A75 chipset, disabling NCQ helped but the CRC error count was still increasing slowly. the problem was gone when I moved the same Samsung 860 EVO SSD and cable to a moherboard with an AMD A88X chipset. both motherboards have the same SATA controller hardware ID BTW. – Tal Aloni Aug 23 '19 at 7:57
0

As you already indicated, the CRC error count has to do with errors detected in the interface between the host and the drive. This can be caused by a number of things:

  1. A loose S-ATA cable
  2. A faulty S-ATA cable
  3. Malfunctioning RAM (due to a defect or overheating)
  4. Malfunctioning CPU (due to a defect or overheating)
  5. A defect on the S-ATA connector of the motherboard or drive itself

Because it seems to occur very infrequently and it seems to resolve itself without doing anything I would investigate number 3 first. You can run a memory test. I would recommend Memtest86+. As the problem occurs only infrequently I'd recommend to run the memory test for an extended period of time so that you can run multiple passes. Any RAM error is an error too much except when it's only a few on the hammer test as some RAM types are more susceptible to this type of stress testing than others.

  • Thanks. I tried Memtest but it did not report any error with the RAM. Assuming SATA cable is good could there be something on SSD side that could have caused this? – rajeev Feb 17 '18 at 15:22
0

What I believe can cause CRC errors in smart.

Bad drive.
Bad cable
Bad ports/motherboard.

I would not expect a ram or cpu issue to cause this but it does depend on how the drive is connected.

So e.g. if the controller is onboard, and the sata port directly connects to the controller, then the data signal doesnt go via the cpu or system ram so defective ram wouldnt be the cause of the problem. Of course bad ram can corrupt data, but it would be past the point of the SMART check and not accumulate that counter.

I recently had to diagnose an issue with my SSD, initially it had different symptoms but after samsung returned the drive I discovered spiralling CRC errors, and in my case I found out I was using a bad cable "and" have a faulty port on my motherboard.

My newer generation SSD however on both the bad cable and port wasnt generating CRC errors but both my older gen SSD's were, the reason is because the newer SSD has a better ECC controller. So modern SSDs with enhanced ECC can provide mitigation to faulty cables and ports.

However a word of warning.

When a SSD reports a CRC error what it means is that the controller has failed to correctly read the data from the drive, and has to retry or fail completely. This typically is associated with a read error. It can occur either with bad nand flash or with bad sata signal integrity across a cable, or a board trace.

The danger from all this is that it can also cause silent data corruption on the drive, so e.g. if you use a drive with strong ECC to correct read errors on the fly over a bad cable, it wont correct flipped bits from write requests and just report success. Typically the protection from this is to verify your written data, some filesystems such as ZFS do this automatically. As well as tools like teracopy which offer to do this automatically as well.

Also I have observed differences between different drivers.

So e.g. the msahci driver will just carry on when CRC errors occur at attempted full speed and often more errors occur as its a hardware problem.
However the intel rapid storage driver, will auto fallback to a slower SATA speed and when it does this it tends to prevent further errors as damaged signal integrity often only causes problems at the highest speeds, so in other words slowing down the speed will often nullify the errors. This will be preferable to having to retry failed reads and silent data corruption on writes. The slowdown is temporary until a reboot, and also on a per port basis so if e.g. ssd on port 0 falls back to sata 300 from sata 600 due to SMART crc errors, the ssd on port 1 if no crc errors will stay at sata 600 speeds.

Issues on cables dont seem that uncommon, I tested all 8 of my cables, after diagnosing this recent problem and 3 out of 8 were not error free on the SSD. They cannot tolerate sharp twists and bends very well, also had to swap a cable in another machine about a month ago as well. In terms of damaged ports and motherboards causing sata errors on ssd's this seems much less common but does happen from time to time.

0

I also have a similar problem. I recently replaced my laptop HDD with Kingston SSD. But i am still using the HDD with the help of a cd drive caddy after removing the cd drive. The issue was that the HDD worked fine in the main Sata port, but CRC count increases dramatically in the CD drive SATA port. It is still increasing, but perfomance-wise there is no flaw. I learned that the main SATA port was SATA3, While the CD drive port is SATA 2.0. Although it is backward compatible, i came to the conclusion that it may be the problem. In your specs it is SATA2, but your SSD is SATA3, So it could be confusing the SATA controller.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.