Therac-25 Radiation Machine Kills Six Patients Due to Race Condition

ACM SIGSOFT
Therac-25 Radiation Machine Kills Six Patients Due to Race Condition
Image: Wikimedia Commons

What happened

The Therac-25 radiation therapy machine killed at least six patients and seriously injured others between 1985 and 1987. A software race condition removed hardware safety interlocks that earlier models had relied on, allowing the machine to deliver lethal radiation doses.[1]

What went wrong

Developers removed physical safety interlocks when they added software checks, then introduced a race condition that allowed high-powered mode to activate without the beam collimator in place. The bug only triggered under specific fast-typing sequences, making it nearly impossible to reproduce in testing.[1]

Lesson learned

Safety-critical systems must never rely solely on software interlocks without hardware redundancy. Race conditions in embedded systems can be lethal — concurrent code paths must be validated exhaustively, not just under normal timing conditions.

Sources

  1. [1]

External links can go dark — pages move, paywalls appear, domains expire. Every source above includes a Wayback Machine snapshot link as a fallback. All citations are best-effort research; if a source contradicts our summary, the primary source takes precedence.