jhei at iki.fi
Tue Sep 21 16:31:49 CDT 2004
> This patch disables DPMI. If sti has been executed beforehand and an
> instruction (such as an interrupt) must be emulated then it can cause an
> infinite loop around the enumation of the iret instruction in the DPMI
> call. Even after (probably rather poorly) hacking around this issue I
> still got unprivileged instruction exceptions from the iret instruction.
> Without more expert eyes being cast on this code the only thing I can
> suggest to fix non-DPMI applications with the above case is to disable
> DPMI event checking.
Well, your patch actually just disables checking for asynchronous
events in DPMI mode, not the DPMI mode itself, which leaves open
whether you are trying to run a Win16 program or a DOS program
that does not need working IRQ handling in DPMI mode. I'm sure DPMI
asynchronous event handling still has bugs and I guess disabling
it is acceptable if it looks like it causes problems and fixing
the bugs seems to require too much work. However, the patch comment
and the quote above tell me next to nothing about the bug you are
seeing, more information would be required in order to have any
hope of fixing the bug. And I'm probably going to be quite busy,
anyway, so I'm not sure when I have time to look at this bug.
Jukka Heinonen <http://www.iki.fi/jhei>
More information about the wine-patches