Mars Pathfinder priority-inversion software bug
NASA's Mars Pathfinder lander began experiencing unexplained total system resets shortly after landing, threatening the mission's ability to collect and downlink data.
The damage was public. The root cause was preventable.
NASA's Mars Pathfinder lander began experiencing unexplained total system resets shortly after landing, threatening the mission's ability to collect and downlink data.
What the software actually got wrong
A low-priority task held a shared data bus lock that a high-priority task needed, and a medium-priority task was able to run in between and starve the high-priority task of the CPU time it needed to finish, tripping a watchdog timer into a full system reset; the bug ('priority inversion') was diagnosed and patched remotely via an uplinked software fix.
A low-priority task held a shared data bus lock...
A low-priority task held a shared data bus lock that a high-priority task needed
Requs AI Edge Case flags this exact pattern at the requirements and architecture stage — before a single line of code implementing it exists — so the assumption behind it gets challenged while it is still cheap to fix.
A medium-priority task was able to run in between...
a medium-priority task was able to run in between and starve the high-priority task of the CPU time it needed to finish, tripping a watchdog timer into a full system reset
Requs AI Software FMEA traces this failure mode back to the system-level hazard it feeds, tagging it against the Common Defect Enumeration so it surfaces in review instead of in the field.
The bug ('priority inversion') was diagnosed and patched remotely...
the bug ('priority inversion') was diagnosed and patched remotely via an uplinked software fix
Requs AI Edge Case and Software FMEA together treat this as a known, catalogued defect pattern — not a novel surprise — so it gets tested for deliberately rather than discovered after deployment.
Beyond code coverage and "shall" testing
Root causes like this one rarely show up in code coverage or requirements-compliance testing, because nobody wrote a requirement anticipating the specific edge case that broke. Requs AI Edge Case and Requs AI Software FMEA are built to surface exactly this class of overlooked failure mode — before the software is written.
Surfaces this before code exists
Identifies edge cases like this one at requirements and architecture time, using the Common Defect Enumeration to catalog failure patterns seen across hundreds of real-world software failures — including this one.
Connects the failure mode to the hazard
Traces this class of root cause directly to the system-level hazard it can produce, so a defect pattern like this one gets flagged during design review instead of after it ships.
Find the overlooked root causes before they ship.
Schedule a demonstration, or explore how Requs AI Edge Case and Software FMEA use the Common Defect Enumeration.