[coyotos-dev] I love Intel
Jonathan S. Shapiro
shap at eros-os.com
Sun Dec 30 00:01:41 EST 2007
On Sun, 2007-12-30 at 15:29 +1100, William Leslie wrote:
> Hi!
>
> On Dec 26, 2007 2:44 AM, Jonathan S. Shapiro <shap at eros-os.com> wrote:
> The F00F bug screws this up horribly, because it effectively
> demands
> that the exception vector table live in a 4K mapping.
>
> Why?
>
> It appears to be purely for convenience above. I don't have a system
> with the F00F bug to try it out on, but the point seems to be that the
> IDT is on an unmapped, read only or non-cacheable page. If that's a
> single, large page, it adds a handful of instructions when you're
> modifying the IDT (assuming you use the read-only fix).
William:
Kernel virtual address space is very tight and therefore very precious.
Devoting a 4M region to solving the F00F bug problem is therefore not
workable. We simply don't have 4M of virtual region to spare.
Also, you truly don't want to cause a page fault on these references, so
the right "fix" is to make the page uncacheable. This tends to have the
effect that the IDT page cannot be shared with anything else.
Probably simpler, on balance, to eat the small page mapping tax exactly
when running on the impacted P5's, and not on other processors.
shap
More information about the coyotos-dev
mailing list