Can anybody explain what fault masking is, and and what its consequences are?
From Wikipedia:
a way to ignore faults by seamlessly preparing a backup component to execute something as soon as the instruction is sent, using a sort of voting protocol where if the main and backups don't give the same results, the flawed output is ignored.
Imagine the five CPUs on the Space Shuttle, all crunching the same numbers. If one of them produces an anomalous result, that result is ignored. The other four CPUs "won the election" and "masked" (hid) the bad result.