3 ms·
Embedded OS for a consumer product; the units were freezing (very occasionally) in the field. Usually the units were in store kiosks (= disappointed and unimpr
by kabdib 17y ago
Embedded OS for a consumer product; the units were freezing (very occasionally) in the field. Usually the units were in store kiosks (= disappointed and unimpressed could-have-been-customers).
Turned out to be a race condition in an interrupt handler, where the OS would say "wake me up when something interesting happens" but something else would sneak in, clobber the wake-up trigger, which meant "... never."
Two weeks to find it, fixed by swapping two instructions in some assembly glue.
The harder a bug is to find, the simpler the fix is.
- Poiesis 17y ago"Simpler" depends if you count the troubleshooting time. To rip off an old anecdote: Change one line of code: $3.00 Find which line of code to change: $3,436.88