Re: Intel Pentium Bug: BSDI Releases a patch

Craig Milo Rogers (rogers@ISI.EDU)
Wed, 12 Nov 1997 10:55:28 -0800


>The IDT points to the end of a page such that vector 0x0E (page fault) is
>the start of the next page. The page with vectors 0-0xD is missing. This
>will cause all traps to cause a page fault. One assumes the page fault
>handler then fixes them up and handles them

Thank you for your prompt analysis of the beta fix. I'm
curious, though, why the page fault can break the bus lock, when the
(uncached) invalid operation exception couldn't. Optimistically, I'd
suppose that there's some fundamental difference in the implementation
of the page fault hardware path. Pessimisticly, though, there's the
possibility that the fix works only because the page fault handler is
executed relatively frequently (in the test systems), and a critical
gateway is always present in the L1 cache.

Would someone with a good knowledge of Pentium exception handling
and cache structures care to expand upon the analysis of the bug fix?

Craig Milo Rogers