Re:Why HP Fell
by mark-r on Monday August 20, 2018 @11:52AM
(#17800929)
I had to track down a bug in an application once. It turned out the bug only happened after you printed to an HP printer - the driver changed a critical floating point flag in the processor and never restored it.
[ Parent
| on HN ]
Ah, yes, the floating point bug that set the FP error handing to "software" instead of "hardware". Of course, no one thought to inform the application software side of the house, so you were one divide-by-zero away from an application crash because the FPU said "not my problem anymore". You could fix it with a liberal sprinkling of _fpreset(), assuming your language/environment allowed that option.
To be fair, HP wasn't the only one that had that bug. My SWAG is that there was some common library that a lot of drivers used, including HP, that fiddled with the FPU and never set it back.
The application I worked on was quite popular, and I can guarantee our customers used every printer that was out there. The HP was the only one that exhibited this bug.
I'll up your anecdata with the fact that I worked at Microsoft at the time, and was trying to track this one down across a wide variety of print drivers for the product I worked on. Though HP was the most egregious (IIRC, they all repro'ed), others exhibited the bug.
But, doesn't matter, it's long since been fixed regardless of who did or did not have the bug. :-)