2003-02-14 13:53:43

by dewar

[permalink] [raw]
Subject: Re: [discuss] Re: [Bug 350] New: i386 context switch very slow compared to 2.4 due to wrmsr (performance)

> > The only way to get from long-mode back to legacy-mode is to reset the
> > processor. It can be done in software but you will likely lose interrupts.
>
> Smartdrv.sys and triple-faults come back, all is forgiven! ;)

I have an idea, perhaps we can make the keyboard controller recognize a special
command that will reset the processor :-) :-)


2003-02-14 14:15:09

by Firefly

[permalink] [raw]
Subject: Re: [discuss] Re: [Bug 350] New: i386 context switch very slow compared to 2.4 due to wrmsr (performance)

On Fri, 14 Feb 2003, Robert Dewar wrote:

> > > The only way to get from long-mode back to legacy-mode is to reset the
> > > processor. It can be done in software but you will likely lose interrupts.
> >
> > Smartdrv.sys and triple-faults come back, all is forgiven! ;)
>
> I have an idea, perhaps we can make the keyboard controller recognize a special
> command that will reset the processor :-) :-)

Do you think there is room enough left in the ROM for the microcontroller
used as keyboard controller? We also need to squeeze in the already
planned backwards compatibility feature to mask the A20 line thru a
special command, you know.

But maybe we could move both these features into the motherboard chipset?

-Peter


2003-02-14 14:16:18

by Firefly

[permalink] [raw]
Subject: Re: [discuss] Re: [Bug 350] New: i386 context switch very slow compared to 2.4 due to wrmsr (performance)

On Fri, 14 Feb 2003, Robert Dewar wrote:

> > > The only way to get from long-mode back to legacy-mode is to reset the
> > > processor. It can be done in software but you will likely lose interrupts.
> >
> > Smartdrv.sys and triple-faults come back, all is forgiven! ;)
>
> I have an idea, perhaps we can make the keyboard controller recognize a special
> command that will reset the processor :-) :-)

What if there was an undocumented instruction otherwise only used for
testing and CPU in-circuit-emulation to load all the internal state of the
CPU from memory? Maybe that would work?

-Peter