Skip to content
TopicTracker
From HackerNewsView original
TranslationTranslation

When a CPU Instruction Lies: Debugging Silent Data Corruption in the Cloud

Rubrik engineers found that a REP MOVSB CPU instruction on certain AMD EPYC processors could silently corrupt data during large memory copies in the cloud. A microcode bug, triggered by specific data patterns, caused incorrect copying without error flags. They worked around it by substituting an alternative memory copy routine.

Background

- **Silent Data Corruption (SDC)** is a hardware error that silently alters data without crashing the system or throwing an error — it produces wrong results that look correct, making it extremely hard to detect. - **CPU errata** are publicly documented design flaws (bugs) in a processor's silicon. This article describes a real case where a specific Intel CPU erratum caused SDC, and the engineering team had to trace the problem up from unexpected behavior in a simple math instruction to a hardware-level defect. - The article is from **Rubrik**, a cloud data-management and backup company; detecting data corruption is literally their core business. The piece is aimed at senior engineers (kernel/database/cloud infrastructure) who need to know that hardware can lie, and how to systematically debug such cases. - It matters because cloud providers run millions of servers; if a CPU bug corrupts data silently, backups or databases may be storing bad data without anyone knowing — undermining the entire premise of "reliable" cloud computing.