Re: [RFC PATCH v3 0/4] Real mode interrupt injection

Gleb Natapov
2010-08-16T14:29:26Z

On Mon, Aug 16, 2010 at 05:16:01PM +0300, Avi Kivity wrote:
> On 08/16/2010 04:28 PM, Mohammed Gamal wrote:
> >
> >>I debugged this for a bit - emulate_int_real() is completely broken.
> >> emulate_push() doesn't push anything, it only schedules a push; running
> >>these back-to-back will result in only the last push to be executed.
> >>
> >So we need write back the decode cache after each push. Or let
> >emulate_push() change the emulation context directly. Please CMIIW
>
> I wrote a push_std() that uses ->write_std() instead of
> ->write_emulated() and can be used back-to-back. Long term we'll
> need a write queue but for the short term this will do.
>
Why not just call writeback() after the emulate_push()? emulate_pusha()
does it.

--
Gleb.