Thomas Bogendoerfer writes:
> On Thu, Oct 08, 1998 at 05:03:35PM +0200, email@example.com wrote:
> > Applied to the G364 drivers (which as of now is still MIPS specific anyway)
> > this means that we'll avoid TLB trashing in the case of scrolling and have
> > the full TLB available for userland.
> I don't believe this will buy us anything. When we add a temporary TLB we
> do clear one TLB, which might be used by the userland. So we end up loading
> our wired entry, killing it, and later the user process has to reload the
> TLB again. This way we force TLB trashing, with one wired entry more we
> _might_ get a little bit more TLB trashing.
> As you might know, I'm using three wired entries for the Magnum, and I don't
> think doing the same trick for the other entries is a real good idea. When
> we make them temporary, we have to mess with TLBs on every interrupt.
You could do what IRIX does in some cases, which is to save and restore
the TLB entry you replace. Beware of doing this, however, if your code could
take a page fault.